VerifyUser Middleware Parameters

extension_controller-action:
  requirements:
    user:       \d+
  defaults:
    user:
  options:
    middleware:
      - LMS\Routes\Middleware\Api\VerifyUser:user

Tip

Even if we don’t use user property in our action it should be provided as a parameter.

Middleware will check if the passed user is a part of the whitelist.

Properties

Property Title Type
first Name of the property that contains user id string
last The name of the extension with admin users string

Admin users ( global scope )

Sometime you want certain users mark as admin. If user is an admin - grant the access. For this purpose we can set additional TypoScript variable.

Tip

plugin.tx_routes.settings.middleware.admin.users = 3,4.

This will add users who have uid 3 and 4 to a whitelist for every route that guarded by VerifyUser. Why just don’t use like 1,2,3,4 ? The answer is rather simple. When we deal with TypoScript, we can change the value in real time by condition, which is sometimes handy.

Admin users ( extension scope )

It will not work for every route, but for those who have added extension key to the end. When extension scope is used, global scope is ignored.

extension_controller-action:
  requirements:
    user:       \d+
  defaults:
    user:
  options:
    middleware:
      - auth
      - LMS\Routes\Middleware\Api\VerifyUser:user,tx_demo

Tip

plugin.tx_demo.settings.middleware.admin.users = 3,4