Validates an API key extracted from each request and resolves its scopes from the configured stores. On success it adds an ApiKeySecurityScheme carrying the scopes to the Exchange, which later plugins test with hasScope("..."). A missing key returns 401 and an invalid key 403 as Problem Details, unless required is false, in which case requests pass and scopes are attached only when a valid key is present.
Key stores that resolve a key to its scopes and authorize it. Scopes from all configured stores are merged. A key unknown to every store is rejected as invalid.