Link Search Menu Expand Document Documentation Menu

用户模拟

用户模拟允许具有特殊权限的用户在不知道或无法访问被模拟用户凭据的情况下,以其他用户的身份行事。

模拟功能可用于测试和故障排除,或允许系统服务安全地作为用户行事。

模拟可以在 REST 接口或传输层发生。

REST 接口

要允许一个用户模拟另一个用户,请将以下内容添加到 opensearch.yml

plugins.security.authcz.rest_impersonation_user:
  <AUTHENTICATED_USER>:
    - <IMPERSONATED_USER_1>
    - <IMPERSONATED_USER_2>

被模拟用户字段支持通配符。将其设置为 * 允许 AUTHENTICATED_USER 模拟任何用户。

传输接口

以类似的方式,添加以下内容以启用传输层模拟

plugins.security.authcz.impersonation_dn:
  "CN=spock,OU=client,O=client,L=Test,C=DE":
    - worf

模拟用户

要模拟另一个用户,请向系统提交请求,并将 HTTP 标头 opendistro_security_impersonate_as 设置为要模拟的用户的名称。一个很好的测试是向 _plugins/_security/authinfo URI 发出 GET 请求

curl -XGET -u 'admin:<custom-admin-password>' -k -H "opendistro_security_impersonate_as: user_1" https://:9200/_plugins/_security/authinfo?pretty
剩余 350 字符

有问题?

想贡献?