すべてのプロダクト
Search
ドキュメントセンター

Elasticsearch:ES インスタンスの SAML ベースのシングルサインオンを有効にする

最終更新日:Nov 21, 2025

Alibaba Cloud Elasticsearch (ES) は、Kibana のシングルサインオン (SSO) をサポートしています。Security Assertion Markup Language 2.0 (SAML 2.0) 認証を有効にすると、SAML 2.0 準拠の ID プロバイダー (IdP) を使用して Alibaba Cloud ES インスタンスと Kibana にアクセスできます。このトピックでは、ES V7.10 インスタンスを例に、SAML IdP とサービスプロバイダー (SP) である ES と Kibana を設定して、Kibana コンソールの SSO を実装する方法について説明します。

背景情報

SAML では、ES と Kibana はサービスプロバイダー (SP) として機能します。これらは、Web ブラウザー SSO プロファイルと SAML 2.0 のシングルログアウトプロファイルをサポートしています。これにより、Alibaba Cloud Identity as a Service (IDaaS) や Active Directory Federation Services (ADFS) など、SAML 2.0 に準拠した ID プロバイダー (IdP) を使用して Alibaba Cloud ES と Kibana にアクセスできます。このトピックでは、IDaaS を例として使用します。

説明
  • シングルサインオン (SSO):

    ユーザーが一度ログインするだけで、相互に信頼されたすべてのアプリケーションにアクセスできるようにします。

  • Security Assertion Markup Language (SAML):

    SAML は、クロスドメインシングルサインオン (SSO) を実装する XML ベースのプロトコルです。アサーションを含むセキュリティトークンを使用して、ID プロバイダー (IdP) とサービスプロバイダー (SP) の間で ID 情報を転送します。SAML は、パブリッククラウドおよびプライベートクラウドで広く使用されている成熟した認証プロトコルです。

  • Alibaba Cloud Identity as a Service (IDaaS):

    IDaaS は、エンタープライズユーザー向けの一元化された ID、権限、およびアプリケーション管理サービスのセットです。IDaaS は、EIAM や CIAM などの複数のプロダクトをサポートしています。

前提条件

  • Alibaba Cloud ES V7.10 インスタンスが作成され、HTTPS プロトコルが有効になっています。他のバージョンでは操作が異なる場合があり、実際の UI も異なる場合があります。

    説明
  • IDaaS サービスの EIAM インスタンスがアクティベートされています。

    説明

    Elastic は、SAML 認証に対して HTTP-Redirect バインディングメソッド のみをサポートし、HTTP-POST バインディングやその他のメソッドはサポートしていません。したがって、PC が IdP および SP サービスにアクセスできることを確認する必要があります。

Kibana のパブリックポートが 443 の場合

手順

説明

SAML 認証を有効にすると、クラスターの再起動が必要になります。この変更による影響を最小限に抑えるため、オフピーク時にこの操作を実行してください。

  1. Alibaba Cloud Elasticsearch コンソールにログインします。

  2. 左側のナビゲーションウィンドウで、[Elasticsearch クラスター] をクリックします。

  3. 目的のクラスターに移動します。

    1. 上部のナビゲーションバーで、クラスターが属するリソースグループとクラスターが存在するリージョンを選択します。

    2. [Elasticsearch クラスター] ページで、クラスターを見つけてその ID をクリックします。

  4. ターゲットインスタンスの左側のナビゲーションウィンドウで、設定と管理 > セキュリティ を選択します。

  5. クラスターアクセス設定 エリアで、SAML 認証 を有効にします。

    説明

    現在のインスタンスの HTTPS プロトコルを無効にしようとすると、ダイアログボックスに「このインスタンスには SAML 認証が有効化されているため、HTTPS を無効にすることはできません」というメッセージが表示されます。

  6. SAML 認証を有効にする パネルで、SAML アプリケーションを設定できます。

    1. SAML アプリケーションの設定 ページで、アクセス方法インターネットでの Kibana へのアクセス を選択します。

    2. IdP メタデータをダウンロードします。詳細については、「IDaaS SAML アプリケーションの設定」をご参照ください。

      説明

      シングルサインオン ACS URL と SP エンティティ ID は、SAML アプリケーションの設定 ウィザードページからコピーできます。

    3. クリックまたはドラッグして IdP メタデータをアップロードします。

    4. 次へ をクリックします。

  7. カスタム ES ロールを関連付けます。

    1. ES のカスタムロールを関連付ける ウィザードページで、ES アクセスパスワードを入力します。

      • ロール名: デフォルト値は es_saml1_default で、変更できません。

      • ロール権限: デフォルトでは、es_saml1_default ロールに対してすべての権限が有効になっています。詳細な権限を設定するには、Kibana コンソールでロールの権限を変更できます。詳細については、「Elasticsearch X-Pack ロール管理によるユーザー権限の管理」をご参照ください。

      • ES アクセスパスワード: ロールを作成する権限があることを確認するためのパスワードを入力します。

    2. ロールを作成して関連付ける をクリックします。

      ロールが作成され、SAML にマッピングされます。

    3. 次へ をクリックします。

  8. YML パラメーターを設定します。

    カテゴリ

    項目

    説明

    SAML 情報

    ID 認証のレルム

    以前のマッピングと一致している必要があります。デフォルトでは、saml1 のみがサポートされています。この値は変更できません。

    order

    レルムの優先度。値が小さいほど優先度が高くなります。デフォルト値は 2 です。この値は変更できません。

    idp.entity_id

    IdP によって使用される識別子。

    sp.entity_id

    Kibana インスタンスの一意の識別子。これは、SAML アプリケーションの SP エンティティ ID と同じです。IdP の SP として Kibana を追加する場合は、この値を設定します。

    sp.acs

    Assertion Consumer Service (ACS) エンドポイント。IdP から ID 認証情報を受け取ります。これは、SAML アプリケーションの SSO の ACS URL と同じです。

    attributes.principal

    nameid:persistent などのアサーション情報。詳細については、「属性マッピング」をご参照ください。

    attributes.groups

    roles などのアサーション情報。詳細については、「属性マッピング」をご参照ください。

    詳細設定

    Kibana 基本ログイン

    デフォルトでは、Kibana の基本ログインエントリポイントが表示されます。このエントリポイントを表示しないように選択することもできます。

    Kibana SAML ログインの説明

    Kibana への SAML ログインの説明を入力します。

    説明
    • 設定が完了すると、システムはバックエンドが認識できる標準の YML ファイルを自動的に生成し、インスタンスの YML 設定を変更します。

    • `idp.metadata.path` などの他のパラメーターは、バックエンド管理に必要な XML パスです。これらは自動的に生成され、編集することはできません。

  9. 完了 をクリックします。

    ページの上部に「SAML 認証が有効になりました」というメッセージが表示され、設定が成功し、インスタンスが再起動中であることを示します。

  10. インスタンスが再起動したら、Kibana の SSO を確認します。

    1. 左側のナビゲーションウィンドウで、設定と管理 > インターネットからのアクセス を選択します。

    2. [Kibana] エリアで、インターネットからのアクセス をクリックします。

    3. ユーザー名パスワード を入力し、[ログイン] をクリックします。

      Kibana ページにログインします。

    説明
    • 詳細については、「Kibana コンソールへのログイン」をご参照ください。

    • インスタンスの セキュリティ ページで SAML ID 認証設定を表示および変更できます。SAML 設定が正しいにもかかわらずログインできない場合は、Kibana アクセスホワイトリストまたはセキュリティグループが正しく設定されているか確認してください。詳細については、「Kibana を使用してクラスターに接続する」をご参照ください。

IDaaS SAML アプリケーションの設定

  1. IDaaS コンソールにログインします。

  2. ターゲット IDaaS インスタンスの ID をクリックします。

  3. アプリケーションを追加します。

    1. 左側のメニューバーで、Application Management > Applications をクリックします。

    2. Applications ページで、Add Application をクリックします。

    3. Standard Protocols タブをクリックします。

    4. [SAML 2.0] エリアで、Add Application をクリックします。

    5. Application Name を入力し、Add をクリックします。

  4. Sign-In セクションの SSO タブで、アプリケーションの SSO を完了できます。

    次の表で説明するパラメーターを設定します。他のパラメーターはデフォルト値のままにできます。詳細については、「IDaaS 側の設定フィールドの説明」をご参照ください。

    パラメーター

    説明

    シングルポイントログインアドレス ACS URl

    ACS URL は、IdP から認証情報を受信するために使用されます。ACS URL は、ES コンソールの SAML アプリケーションの設定 ウィザードページからコピーできます。

    アプリケーション一意識別子 SP Entity ID

    SP の一意の識別子。この例では、SP は Kibana です。SP エンティティ ID は、ES コンソールの SAML アプリケーションの設定 ウィザードページからコピーできます。

    Authorize

    権限付与の範囲を選択します。

    Manually を選択した場合は、Authorize タブで権限を割り当てる必要があります。

    NameIDFormat

    [2.0 Persistent] を選択します。

    設定例:

    image.png

  5. Application Settings セクションで、IDP メタデータ の横にある Download をクリックします。

  6. Save をクリックしてアプリケーションを保存します。

その他の操作

インスタンスの セキュリティ ページの クラスターアクセス設定 セクションで、SAML 認証設定の表示と変更、または SAML 認証の無効化ができます。

項目

操作

SAML 認証設定の表示

SAML 認証 の横にある 設定の変更 をクリックして、SAML 認証設定を表示します。

SAML 認証設定の変更

SAML 認証 の横にある 設定の変更 をクリックします:

  • ES 設定パラメーター セクションの右上隅にある 編集 をクリックして、IdP メタデータを再アップロードするか、yml パラメーターを編集します。変更後、システムはクラスターを再起動します。

  • ES カスタムロールの関連付け: 関連付けられたロールは変更できません。Kibana で es_saml1_default ロールの権限を変更できます。

  • Kibana 設定パラメーター エリアの右上隅にある 編集 をクリックして、Kibana ログイン設定を変更します。この変更により、Kibana ノードが再起動します。

SAML 認証の無効化

SAML 認証 スイッチをオフにし、表示されるダイアログボックスで OK をクリックします。変更はクラスターの再起動後に有効になります。

説明

SAML 認証を無効にすることを確認すると、現在の SAML 認証設定はパージされます。

Kibana のパブリックポートが 5601 の場合

ステップ 1: IDaaS SAML アプリケーションの設定

  1. IDaaS コンソールにログインします。

  2. ターゲット IDaaS インスタンスの ID をクリックします。

  3. アプリケーションを追加します。

    1. 左側のメニューバーで、Application Management > Applications をクリックします。

    2. Applications ページで、Add Application をクリックします。

    3. Standard Protocols タブをクリックします。

    4. [SAML 2.0] エリアで、Add Application をクリックします。

    5. Application Name を入力し、Add をクリックします。

  4. Sign-In で、SSO タブで、アプリケーションの SSO を完了します。

  5. 次の表で説明するパラメーターを設定します。他のパラメーターはデフォルト値のままにできます。詳細については、「IDaaS 設定フィールドの説明」をご参照ください。

    パラメーター

    説明

    シングルポイントログインアドレス ACS URl

    この ACS エンドポイントは IDP からの ID 検証情報を受け入れ、SAML HTTP-POST バインディングのみをサポートします。通常、${kibana-url}:5601/api/security/v1/saml のように設定されます。

    アプリケーション一意識別子 SP Entity ID

    サービスプロバイダー (SP) の URL。このトピックでは、サービスプロバイダーは Kibana です。この値を ${kibana-url}:5601 に設定します。

    Authorize

    権限付与の範囲を選択します。手動承認を選択した場合は、Authorize タブで権限を割り当てる必要があります。

    NameIDFormat

    [2.0 Persistent] を選択します。

    説明
    • ${kibana-url} は Kibana のパブリックアドレスです。

    • Kibana のパブリック URL とパブリックポートは、Elasticsearch コンソールの Kibana 設定ページで確認できます。詳細については、「Kibana を使用してクラスターに接続する」をご参照ください。

    設定例:

    image

  6. Application Settings セクションで、IDP メタデータDownload をクリックします。

    ダウンロードされたファイルは IDaaS SAML メタデータ設定ファイルです。後で使用するためにこのファイルを保存します。

  7. アプリケーションを保存するには、Save をクリックします。

ステップ 2: カスタムロールの作成と elastic SAML の設定

  1. ターゲットインスタンスの Kibana コンソールにログインします。詳細については、「Kibana コンソールへのログイン」をご参照ください。

  2. ロールを作成します

  3. ロールを SAML にマッピングします。

    PUT /_security/role_mapping/idaas-test
    {
      "roles": "<admin_role>" ,
      "enabled": true,
      "rules": {
        "field": { "realm.name": "saml1" }
      }
    }
    • idaas-testステップ 1 で作成した IDaaS サービスアカウントの名前に置き換えます。

    • <admin_role> を前のステップで作成したロールの名前に置き換えます。

  4. Elasticsearch と Kibana の YAML 設定ファイルを作成し、SAML 情報を追加します。

    説明

    YML パラメーター情報は、IDaaS SAML アプリケーションの設定 で設定した SAML 情報と一致している必要があります。

    • elasticsearch.yml 設定ファイルの内容

      #elasticsearch.yml configuration
      
      xpack.security.authc.token.enabled: 'true'
      xpack.security.authc.realms.saml.saml1:
        order: 2
        idp.metadata.path: saml/metadata.xml
        idp.entity_id: "https://es-cn-n6xxxxxx1d.elasticsearch.aliyuncs.com/"
        sp.entity_id: "https://es-cn-n6xxxxxx1d.kibana.elasticsearch.aliyuncs.com:5601/"
        sp.acs: "https://es-cn-n6xxxxxx1d.kibana.elasticsearch.aliyuncs.com:5601/api/security/v1/saml"
        attributes.principal: "nameid:persistent"
        attributes.groups: "roles"

      パラメーター

      説明

      xpack.security.authc.token.enabled

      トークンサービスを有効にするかどうかを指定します。SAML シングルサインオンを設定するには、このパラメーターを true に設定する必要があります。詳細については、「saml-enable-token」をご参照ください。

      xpack.security.authc.realms.saml.saml1

      ID 認証レルム。この例では、saml1 が使用されます。レルムの詳細については、「Realms」をご参照ください。

      order

      レルムの優先度。値が小さいほど優先度が高くなります。

      説明

      V8.x では order に一意の値が必要です。2 を使用することをお勧めします。

      idp.metadata.path

      IdP メタデータファイルへのパス。

      idp.entity_id

      IdP によって使用される識別子。メタデータファイルの EntityID と一致する必要があります。

      sp.entity_id

      Kibana インスタンスの一意の識別子。これは、SAML アプリケーションの SP エンティティ ID と同じです。IdP の SP として Kibana を追加する場合は、この値を設定します。Kibana URL に設定することをお勧めします。

      重要

      パラメーター値がビジネス環境と一致していることを確認してください。URL を使用して直接 Kibana にアクセスする代わりに、リバースプロキシを使用して Kibana にアクセスする場合は、このパラメーターをリバースプロキシのアドレスとポートに設定します。

      sp.acs

      Assertion Consumer Service (ACS) エンドポイント。値は、SAML アプリケーションのシングルサインオンアドレスの ACS URL と同じである必要があります。このエンドポイントは IdP から ID 検証情報を受け取り、SAML HTTP-POST バインディングのみをサポートし、通常は ${kibana-url}:5601/api/security/v1/saml として設定されます。

      説明

      ${kibana-url} は Kibana のインターネットアドレスです。

      attributes.principal

      アサーション情報。詳細については、「属性マッピング」をご参照ください。

      attributes.groups

      アサーション情報。詳細については、「属性マッピング」をご参照ください。

    • kibana.yml 設定ファイルの内容

      重要

      この設定は、バージョン 7.10 のインスタンスにのみ適用されます。Kibana の設定は、バージョンによって大きく異なる場合があります。必要に応じて設定を調整できます。詳細については、「Kibana の設定」をご参照ください。

      # kibana configuration
      
      xpack.security.authc.providers:
        saml.saml1:
          order: 0
          realm: "saml1"
        basic.basic1:
          order: 1
          icon: "logoElasticsearch"
          hint: "Typically for administrators"

      パラメーター

      説明

      xpack.security.authc.providers

      SAML プロバイダーを追加して、Kibana が認証方式として SAML SSO を使用するように設定します。

      xpack.security.authc.providers.saml.<provider-name>.realm

      SAML レルム名を設定します。<provider-name> を elasticsearch.yml で設定したレルム名に置き換えます。この例では saml1 です。

      xpack.security.authc.providers.basic.basic1

      Kibana に SAML を設定すると、SAML 認証に合格したユーザーのみが Kibana にログインできます。Kibana ログインページで基本認証を有効にするには、basic.basic1 設定を指定できます。これは、elastic ユーザー名とパスワードを使用してクラスターにログインし、ロールとロールマッピングを作成する必要があるテスト環境で特に便利です。この設定を指定すると、基本認証のエントリポイントが Kibana ログインページに追加されます。詳細については、「kibana での認証」をご参照ください。

      説明

      ユーザーが Kibana コンソールにログインするために基本認証を使用する必要がない場合は、kibana.yml で基本認証を設定する必要はありません。

ステップ 3: ファイルの提出

次のファイルを Alibaba Cloud Elasticsearch テクニカルサポートに提出してください:

  • テクニカルサポートエンジニアが IDaaS SAML メタデータ設定ファイルを Elasticsearch の config/saml パスにアップロードします。

  • elasticsearch.yml 設定ファイル。テクニカルサポートは、提出された内容に基づいてクラスターの YML ファイルを更新します。

  • kibana.yml 設定ファイル。テクニカルサポートは、提出された内容に基づいてクラスターの YML ファイルを更新します。

ステップ 4: Kibana への SSO の検証

テクニカルサポートが設定を完了したら、Kibana の SSO を検証します。

  1. Kibana コンソールのログインページに移動します。[Log In With Saml/saml1] をクリックします。

    詳細については、「Kibana コンソールへのログイン」をご参照ください。

  2. IDaaS アカウントを入力し、送信 をクリックします。

    Kibana ページにログインします。