--- prelude: > Fetching expired tokens when using a valid service token is now allowed. This will help with long running operations that must continue between services longer than the original expiry of the token. features: - AuthToken middleware will now allow fetching an expired token when a valid service token is present. This service token must contain any one of the roles specified in ``service_token_roles``. - Service tokens are compared against a list of possible roles for validity. This will ensure that only services are submitting tokens as an ``X-Service-Token``. For backwards compatibility, if ``service_token_roles_required`` is not set, a warning will be emitted. To enforce the check properly, set ``service_token_roles_required`` to ``True``. It currently defaults to ``False`` upgrade: - Set the ``service_token_roles`` to a list of roles that services may have. The likely list is ``service`` or ``admin``. Any ``service_token_roles`` may apply to accept the service token. Ensure service users have one of these roles so interservice communication continues to work correctly. When verified, set the ``service_token_roles_required`` flag to ``True`` to enforce this behaviour. This will become the default setting in future releases. deprecations: - For backwards compatibility the ``service_token_roles_required`` option in ``[keystone_authtoken]`` was added. The option defaults to ``False`` and has been immediately deprecated. This will allow the current behaviour that service tokens are validated but not checked for roles to continue. The option should be set to ``True`` as soon as possible. The option will default to ``True`` in a future release.