在不进行身份验证的情况下查找用户
编辑在不进行身份验证的情况下查找用户
编辑Elasticsearch 领域主要用于支持用户身份验证。一些领域使用密码对用户进行身份验证(例如native
和ldap
领域),而其他领域则使用更复杂的身份验证协议(例如saml
和oidc
领域)。在每种情况下,领域的主要目的都是确定向 Elasticsearch API 发出请求的用户的身份。
但是,一些 Elasticsearch 功能需要查找用户,而无需使用其凭据。
在这些情况下,用户必须首先向一个领域进行身份验证,然后 Elasticsearch 将查询第二个领域以查找另一个用户。已验证的用户凭据仅用于在第一个领域中进行身份验证。第二个领域中的用户通过用户名检索,无需凭据。
当 Elasticsearch 使用凭据解析用户时(如在第一个领域中所执行的那样),称为用户身份验证。
当 Elasticsearch 仅使用用户名解析用户时(如在第二个领域中所执行的那样),称为用户查找。
请参阅run_as和委托授权文档,以了解有关这些功能的更多信息,包括哪些领域和身份验证方法支持run_as
或委托授权。在这两种情况下,只有以下领域可以用于用户查找
pki
、saml
、oidc
、kerberos
和jwt
领域不支持用户查找。
如果您只想将一个领域用于用户查找,并阻止用户针对该领域进行身份验证,则可以配置该领域,并将authentication.enabled
设置为false
用户查找功能是一项内部功能,用于实现run-as
和委托授权功能 - 没有用于用户查找的 API。如果您想测试用户查找配置,则可以使用run_as
执行此操作。使用身份验证 API,以超级用户
(例如,内置的elastic
用户)进行身份验证,并指定es-security-runas-user
请求头。