Amazon Q(for Business Use) のWeb画面の認証にMicrosoft Entra IDを構成する

Amazon Q(for Business Use)のWeb画面の認証にEntra IDを設定する様子をご紹介します
2023.12.11

ども、大瀧です。 re:Invent 2023で発表されたAmazon Q(for Business Use)(以下Q for Business)は、業務向けに生成AIアシスタントを提供するサービスです。本ブログでは、Q for BusinessのWeb画面の認証にEntra IDを設定する様子をご紹介します。

2023年12月現在、Q for Businessはプレビューです。本番での適用は避け、今後仕様が変更される可能性があることを承知しておきましょう。

Amazon Q for BusinessにはWeb画面がある

AWSのサービスとしては珍しく、Q for Businessはユーザー認証が統合された専用のWeb画面が提供されます。ユーザー認証は組織のIdPとSAML2.0で統合するため、本ブログではサポートするIdPのうちMicrosoft Entra ID(旧Azure AD)で構成する様子をご紹介します。

手順1. Q for Businessの準備

こちらのブログの手順にしたがって、Q for Businessのアプリケーションを作成します。

アプリケーション一覧から作成したアプリケーションを選択し、一覧右上の[Deploy web experience]ボタンをクリックします。Deploy web experience画面の[Configure user and group mapping]セクションの[Application consumer services (ACS) URL]と[Audience URI (SP Entity ID]の項目をそれぞれコピーして控えておきます。

amazonq_entraid09

このあとの手順でこの画面の操作をするので、開いたままEntra IDの構成に進みましょう。

手順2. Entra IDの構成

続いてEntra IDを構成していきます。

動作確認環境

  • プラン: Microsoft Entra ID Free
  • ディレクトリ: Default Directory

今回はDefault Directoryをそのまま利用しログイン時のメールアドレスは既定の ユーザー名@xxxx.onmicrosoft.com にしました。

SAML2.0を構成するために、メニューの[エンタープライズアプリケーション]を選択します。

amazonq_entraid01

一覧の上にある[+ 新しいアプリケーション]をクリックします

amazonq_entraid02

[Microsoft Entra ギャラリーを参照する]画面では[+ 独自のアプリケーションの作成]をクリックします

amazonq_entraid03

[独自のアプリケーションの作成]画面では、アプリ名を入力(今回は「Amazon Q」)、[ギャラリーに見つからないその他のアプリケーションを統合します(ギャラリー以外)]を選択します。

amazonq_entraid04

プロパティの[Getting Started]から、[1. ユーザーとグループの割り当て]の[ユーザーとグループの割り当て]リンクをクリックし、アクセスを許可するユーザーやグループを選択します。

amazonq_entraid24

続いて概要画面に戻り、[2. シングルサインオンの設定]の[作業の開始]リンクをクリックします。

amazonq_entraid05 リサイズ

[シングルサインオン方式の選択]では、[SAML]を選択します

amazonq_entraid06 リサイズ 

[SAMLベースのサインオン]画面では、[基本的なSAML構成]セクション右上の[編集]をクリックします

amazonq_entraid07

[基本的なSAML構成]の[識別子(エンティティID)]、[応答URL(Assertion Consumer Service URL)]それぞれの追加リンクをクリックし、テキストボックスを表示します。

amazonq_entraid08

手順1でコピーしておいた項目をそれぞれペーストし、[保存]をクリックします。

  • 項目名: 識別子(エンティティID) → 手順1の値: Audience URI (SP Entity ID)
  • 項目名: 応答URL(Assertion Consumer Service URL) → 手順1の値: Application consumer services (ACS) URL

amazonq_entraid10

[SAMLベースのサインオン]画面に戻り、[属性とクレーム]セクション右側の[編集]をクリックします。

amazonq_entraid11

[必要な要求]にある項目「一意のユーザー識別子(名前ID)」をクリックします。

amazonq_entraid12

[要求の管理]画面では、[名前識別子の形式の選択]のドロップダウンメニューから「指定なし」を選択し、[保存]をクリックします。

amazonq_entraid13

[属性とクレーム]画面に戻ったら、画面上部の[+ 新しいクレームの追加]ボタンをクリックします。

amazonq_entraid14

[名前]に「Email」と入力、[名前の形式を選択する]テキストをクリックし、[名前の形式]のドロップダウンメニューから「指定なし」を選択します。

amazonq_entraid15 リサイズ

[ソース属性]のドロップダウンメニューから user.mail を選択し、[保存]をクリックします。

amazonq_entraid16 リサイズ

[属性とクレーム]画面に戻ったら右上の「×」をクリック[SAMLベースのサインオン]画面に戻り、[SAML証明書]セクションの[フェデレーションメタデータ XML]右側の[ダウンロード]リンクをクリックして、XMLファイルをPCの任意のフォルダにダウンロードします。

amazonq_entraid17

これでEntra IDの構成は完了です。

手順3. Q for Businessの構成(続き)

最後にQ for BusinessのDeploy web experience画面の残りの項目2点を設定し、[Deploy]ボタンでデプロイを実行します。

  1. [Provide metadata from your IdP]にある[Import from XML file]ボタンをクリックし、手順2でダウンロードしたXMLファイルを選択
  2. [COnfigure user and group mapping]の[Email attribute of SAML assertion]に「Email」(手順2で追加したクレーム名)と入力

amazonq_entraid18

これでQ for Businessの構成も完了です。

動作確認

それでは、Q for BusinessのWeb画面にアクセスしましょう。Q for BusinessのApplication一覧画面から作成したApplicationの[Deployed URL]列のリンク`https://xxxx.chat.qbusiness.リージョン名.on.aws/`をクリックします。

Entra IDのログイン画面が表示されたら、手順2で割り当てたユーザーのメールアドレス(ユーザー名@xxxx.onmicrosoft.com)を入力し[次へ]をクリックしてパスワードを入力しログインします(MFAの構成など追加の設定を促される場合があります)。

Q for Businessのチャット画面が表示されました!

amazonq_entraid23

まとめ

Q for BusinessのWeb画面の認証にEntra IDを設定する様子をご紹介しました。現時点ではQ for Business側でユーザーを認可する仕組みはなく、Entra IDのアプリケーションへの割り当てでユーザーの認可を制御する点に注意が必要かもしれません。まだプレビューなのでこの辺りの様子は今後変わっていく可能性がありそうですね。

参考URL