認証なしでユーザーを検索する
Elasticsearch realms は主に ユーザー認証 をサポートするために存在します。一部のレルムはパスワードでユーザーを認証します(例えば、native
および ldap
レルム)、他のレルムはより複雑な認証プロトコルを使用します(例えば、saml
および oidc
レルム)。いずれの場合も、レルムの主な目的は、Elasticsearch API にリクエストを行ったユーザーのアイデンティティを確立することです。
しかし、一部の Elasticsearch 機能は、ユーザーの資格情報を使用せずにユーザーを検索する必要があります。
run_as
機能は、別のユーザーの代わりにリクエストを実行します。認証されたユーザーはrun_as
権限を持っている場合、別の未認証ユーザーの代わりにリクエストを実行できます。- 委任された認可 機能は、2つのレルムをリンクさせ、1つのレルムに対して認証されたユーザーが別のレルムのユーザーに関連付けられた役割とメタデータを持つことができるようにします。
これらの各ケースでは、ユーザーは最初に1つのレルムに認証し、その後 Elasticsearch が2つ目のレルムをクエリして別のユーザーを見つけます。認証されたユーザーの資格情報は最初のレルムでのみ使用され、2つ目のレルムのユーザーは資格情報なしでユーザー名によって取得されます。
Elasticsearch が資格情報を使用してユーザーを解決する場合(最初のレルムで行われるように)、これはユーザー認証として知られています。
Elasticsearch がユーザー名のみを使用してユーザーを解決する場合(2つ目のレルムで行われるように)、これはユーザー検索として知られています。
これらの機能についての詳細は、run_as および 委任された認可 ドキュメントを参照してください。どのレルムと認証方法が run_as
または委任された認可をサポートしているかを含めて確認できます。いずれの場合も、ユーザー検索に使用できるのは以下のレルムのみです:
- 予約済みの
native
およびfile
レルムは常にユーザー検索をサポートします。 ldap
レルムは、レルムが ユーザー検索モード に設定されている場合にユーザー検索をサポートします。レルムがuser_dn_templates
で設定されている場合、ユーザー検索はサポートされません。active_directory
レルムでのユーザー検索のサポートは、レルムがbind_dn
とバインドパスワードで設定されている必要があります。
pki
、saml
、oidc
、kerberos
および jwt
レルムはユーザー検索をサポートしていません。
ユーザー検索のみにレルムを使用し、そのレルムに対するユーザーの認証を防ぎたい場合は、レルムを設定し、authentication.enabled
を false
に設定できます。
ユーザー検索機能は、run-as
および委任された認可機能を実装するために使用される内部機能です - ユーザー検索のための API はありません。ユーザー検索の設定をテストしたい場合は、run_as
を使用してこれを行うことができます。Authenticate API を使用して、superuser
として認証し(例:ビルトインの elastic
ユーザー)、es-security-runas-user
リクエストヘッダーを指定します。
Get users API および User profiles 機能は、Elastic Stack ユーザーに関する情報を取得するための代替手段です。これらの API はユーザー検索機能とは関連していません。