phantom_token_scope
'phantom_token_scope' 指令指定在访问未经授权时应包含在 'WWW-Authenticate' 响应中的 OAuth 作用域。
Phantom Token NGINX Module
·
location
语法phantom_token_scope scope1 scope2;
默认值none
上下文location
参数1
说明
'phantom_token_scope' 指令在 Phantom Token NGINX Module 中用于定义应包含在返回 HTTP 401 Unauthorized 状态响应的 'WWW-Authenticate' 头中的 OAuth 作用域。这对于需要特定作用域来授权的 APIs 尤其重要,允许客户端了解访问特定资源所需的权限。
当您在 location 上下文中定义此指令时,可以配置以空格分隔的作用域值,应用在请求访问时必须提供这些值。例如,如果配置的作用域包括 'read' 和 'write',该模块将生成如下格式的响应头:WWW-Authenticate: Bearer realm="example", scope="read write"。这会通知客户端在后续请求中应包含这些作用域以获取必要的权限。
正确使用此指令可以通过在请求者尝试与受保护资源交互之前告知所需作用域来提高 API 安全性。若未正确定义作用域,客户端可能不知道所需权限,可能会导致反复出现 401 错误,直到它们理解进行授权所需的作用域。
配置示例
location /api {
phantom_token_scope read write;
}⚠
确保所定义的作用域有效,并且与授权服务器识别的作用域相对应。
⚠
配置错误可能导致授予的权限不足,从而引发授权失败。