AWS SSOのSAML認証でSIEM on Amazon OpenSearch Serviceにログイン

前回、SIEM on Amazon OpenSearch Serviceをパブリックアクセス(Amazon VPC外)にデプロイしました。 今回はAWS SSOのSAML認証でシングルサインオンします。

これにより、OpenSearch Serviceにユーザーを作る必要がなくなり、AWS SSOのアカウント管理に一元化できます。 また、ログイン先がAWS SSOに統一されますし、AWS SSO側の設定で2要素認証を必須にしておけばセキュリティも強化できます。

前提

  • AWS Control Towerを有効化している
  • 管理アカウントにAWS SSOがある
  • 監査アカウントにSIEM on Amazon OpenSearch Serviceが有効

AWS SSOでSAML認証設定(1)

まず、管理アカウントにログインします。

AWS SSOのアプリケーションを開きます。

AWS SSOで新規アプリケーションの追加

新規アプリケーションの追加からカスタムSAML2.0 アプリケーションの追加を選択します。

表示名AWS SSOのダッシュボードに表示される名前なので分かりやすい表記にしておきます。

例:SIEM on Amazon OpenSearch Service

アプリケーションの表示名

AWS SSO SAML メタデータファイルをダウンロードします。

AWS SSO SAML メタデータファイルのダウンロード

画面はこのままにしておき、次にOpenSearch Service側の設定に移ります。

OpenSearch ServiceでSAML認証設定(1)

次に、監査アカウントにログインします。

OpenSearch Serviceにあるドメインaes-siemを開き、セキュリティ設定を編集します。

SAML認証を有効化にチェックを入れます。

SAML認証を有効化

サービスプロバイダエンティティID(図中①)とIdPによって開始されたSSO URL(図中②)をメモしておきます。

アイデンティティプロバイダーを設定

またXMLファイルからインポートで先ほどAWS SSOからダウンロードしたXMLファイルを選択します。

XMLファイルのインポート

ここまで完了したら、画面はこのままにしておき、中断していたAWS SSOの設定に戻ります。

AWS SSOでSAML認証設定(2)

管理アカウントのAWS SSOに戻ります。

アプリケーションのプロパティにメモしておいた値をそれぞれ入力し保存します。 各属性の対応に注意してください。(上図と下図の番号は対応させています。)

アプリケーション ACS URLIdPによって開始されたSSO URL(図中②)

アプリケーションSAML対象者サービスプロバイダーエンティティID(図中①)

AWS SSO アプリケーションメタデータの設定

ここまで完了できたら設定の保存をクリックします。

アプリケーション設定の保存

属性マッピングの設定

次に、属性マッピングのタブを開き、2つの属性を追加します。

アプリケーションのユーザー属性 この文字列値またはAWS SSOの…(省略)
Subject ${user:subject}
Role ${user:groups}

AWS SSOの属性マッピング

OpenSearch Serviceにログインできるユーザーの設定

割り当て済みユーザーのタブを開きます。

この設定により、OpenSearch Serviceにログインを許可するAWS SSOのユーザー or グループを指定できます。

AWS SSOでのユーザーの割り当て

許可するユーザー or グループにチェックを入れてユーザーの割り当てをクリックします。

OpenSearch Serviceにログインできるユーザー or グループを選択

設定後、割り当てたユーザーのIDをメモしておきます。

割り当てたグループのIDを確認

OpenSearch ServiceでSAML認証設定(2)

監査アカウントのOpenSearch Serviceに戻り、下記項目を設定します。

設定項目 設定値
SAML マスターバックエンドロール 割り当てたユーザーorグループのID
ロールキー - オプション Role

ここまで設定できたら変更の保存をクリックします。

OpenSearch Service SAML認証の設定保存

設定確認

AWS SSOのダッシュボードにアクセスすると、 アプリケーション設定で指定した表示名の名称でアイコンが表示されます。

SIEM on Amazon OpenSearch Serviceにログイン

アイコンをクリックしてOpenSearch Serviceにログインできれば設定完了です。

シングルサインオンの動作確認

まとめ

2つのAWSアカウントを交互に行き来して設定する点がややこしかったです。 別ブラウザを使ったり、シークレットモードを使うなどして、両方ともログインした状態にしておくと便利かと思いました。

これまではSIEM環境へのログイン先をAWS SSOに一元化できたので管理面でも楽になりました。

参考

dev.classmethod.jp

faun.pub