Amazon Connect 専任担当をしている丸山です。
今日はAmazon Connect の G Suite連携について説明します。
Amazon Connect は SAML 2.0 を使った IDフェデレーションをサポートしています。
サーバーワークスではOneLoginと連携してAmazon Connectを利用しています。
OneLoginは素晴らしいサービスなのですが、すでにG Suiteを利用しているので認証をG Suiteに統一したい、というご要望もあります。
連携設定の手順が少しわかりにくいので、ポイントをまじえてご説明いたします。
G SuiteからSSOするメリット
メリット1)セキュリティレベルの向上
Amazon Connectの標準のID管理方法ではID/パスワードで認証します。
どこからでも誰でも利用できるのが Amazon Connect のメリットである反面、社内のセキュリティー要件を満たさないケースもあるかもしれません。
G Suiteで認証するようにすれば、2段階認証を利用することができます。
万一パスワードが漏洩してもアカウントの不正使用を防止することができます。
ただし多くの日本企業で要求されている接続元IPアドレスの制限を設けることはできません。
もし接続元IPアドレスの制限が必要な場合は、OneLogin等その機能をもっているIdPをご利用ください
メリット2)アカウントの統合管理
G Suiteでアカウントを統合管理することができるため、Amazon Connect用のパスワードを管理する必要がありません。
退職者がいた場合、G Suiteで認証をできなくすれば、Amazon Connectのアカウントも強制的に利用ができなくなります。
復帰を前提とした長期休暇/産休/育児休暇などの場合もG Suiteでアカウントを一時的に停止しておけば、Amazon Connectを含めてスムーズな再開が可能です。
ユーザーの認証機能はG Suiteにおまかせしますが Amazon Connect側の設定は必要なので、Amazon Connect側のユーザ管理がなくなるわけではありません。
G Suiteでユーザーを登録・削除した場合は、Amazon Connect側でもユーザー登録・削除作業が必要になる点はお気をつけください。
Amazon Connect の G Suite 認証連携手順
ここからはさっそく連携の手順を説明します。
サーバーワークスに構築をご依頼いただいた場合は [G Suite] の項目のみ、貴社にてご対応いただければ大丈夫です。
AWS側の作業はおまかせください。
1)[AWS] Amazon Connect インスタンスを作成
Amazon Connectのインスタンスを作成します。
Amazon Connetでは、ID管理方式を3つから選択可能です。
- Amazon Connect 内にユーザーを保存
- Link to an existing directory (既存のディレクトリへのリンク)
- SAML 2.0 ベースの認証
今回は「SAML 2.0 ベースの認証」を選択します。
◎ポイント
ID管理方式はインスタンス作成時のみ選択可能です。
あとから変更できないので、インスタンス構築前に運用要件とセキュリティー要件を確定しておきましょう。
その他の項目はG suite連携には影響がないため通常の設定をしていただいて問題ありません。
2)[G Suite] ユーザーのカスタム属性を追加
SAML認証をする際に利用する項目をカスタム属性として追加します。
- 必須項目:Role 用のフィールド
-
任意項目:Session Duration
<参考ドキュメント>
> 追加せずに既存のフィールドを代用することも可能ですが、新規に作成されたほうがいいかと思います。
とご指導があるので、新規でカスタム属性を追加したほうがよいと思います。
◎ポイント
デフォルトの Session の有効期間は1時間とのことなので、Amazon Connectの運用をするなら Session Duration も追加するのが事実上必須になります。
あとからマッピングできればよいので、カテゴリや名前は任意の名称で問題ありません。
SAMLアプリをステップに沿って作成していきます。
サービスとしてAWSが用意されているのでこちらを選択します。
◎ポイント
・この次のステップで利用するIDPメタデータをダウンロード
・Session Durationを含めて属性のマッピングをする
SAMLアプリのメニューを選択して新規登録します。
AWSはサービスとして登録されているので探して選択します。
IDPメタデータを忘れずにダウンロードします。
開始URLはあとから設定するのでブランクでOKです。
ステップ5はキャプチャをうっかり取り忘れてしまったのですが属性のマッピングです。
Session Durationのフィールドは新規追加します。
事前に2)で設定したカスタムフィールドを入力してください。
<参考ドキュメント>
4)[AWS]IdP の作成
IAMのIDプロバイダーを追加します。
◎ポイント
・ダウンロードしておいた、IDPメタデータをアップロード
慣れないG Suiteの画面からAWSに戻ってくると安心します。
普通にID プロバイダーをメニューを選び「プロバイダの作成」をします。
タイプはSAMLを選びます。
プロバイダ名は任意の文字列を設定。
メタデータドキュメントは3)でダウンロードしたファイルをアップロードします。
5)[AWS]IAM Role の作成
ロールとポリシーの作成をします。
◎ポイント
・設定するロールは下記からコピー
ロールを作成します。
SAML 2.0 フェデレーションを選択します。
SAML プロバイダーは4)で作成した名前を選択します。
ポリシーの作成をします。
ここでAmazon ConnectのインスタンスIDが要求されますが確認方法が少しわかりにくいです。
Amazon Connect 管理画面の概要にあるインスタンスARNの値のうち :instance/ 以降の文字列がインスタンスIDになります。
戻りましてポリシーをアタッチします。
ロールに名前をつけたらできあがりです。
6)[G Suite]SAMLアプリの開始URLを設定
開始URLにAmazon Connectインスタンスの情報を設定します。
設定値
https://region-id.console.aws.amazon.com/connect/federate/instance-id
region-id を、Amazon Connect インスタンスを作成したリージョン名 (たとえば、東京リージョンなら ap-northeast-1) で置き換えます。
instance-id をインスタンスのインスタンス ID で置き換えます。
7)[G Suite]AWSで利用する SAML 属性をユーザープロファイルに追加
2)で作成したカスタム属性の項目に値をセットします。
◎ポイント
・Roleは、 Role ARN と ID プロバイダーの ARN をコンマ区切りで記載
・Session の有効期間は、1日の稼働時間を考慮して秒で設定
例)8時間→28800秒
下記の仕様も考慮してください。
Amazon Connect セッションの有効期限は、ユーザーのログインから 10 時間後に切れます。10 時間後、ユーザーは、通話中であっても自動的にログアウトされます。
8)[G Suite]SAML アプリの有効化
設定直後は無効化されているため、SAML アプリを有効化する必要があります。
最初有効化する必要があると知らずに認証に失敗して悩みました。
こういうお作法がG Suite管理経験がないとまったくわかりません。
9)[AWS]Amazon Connectユーザーの作成
Amazon Connect に G Suite のメールアドレスのユーザーを作成します。
パスワードの管理は不要ですが、ルーティングプロファイル/セキュリティープロファイル/電話の設定 などAmazon Connectとしての属性登録が必要になります。
10)動作確認・ログイン
G Suiteのアプリからログインができることを確認します。
恥を忍んで告白してしまうとわたしはログイン方法すらわかりませんでした。
作成をしたアプリはアプリの一覧に追加されます。
8)の有効化を忘れると一覧に出てこないのでご注意ください。
おまけ
G Suiteの2段階認証プロセスは有効にしていますか?
各社のパスワード運用状況をヒアリングしていると、いまだに定期的なパスワード変更の運用を採用している会社が多いです。
総務省ですら「定期的な変更は不要」と言っています。
そんなことより多要素認証(MFA)ですよ。
G Suiteでは2段階認証プロセスを利用することが可能です。
2 段階認証プロセス方式も選択肢があるので社内で利用しやすいものをお選びください。
この画面から確認と設定が可能です。
まとめ
改めて注意事項をまとめます
- G Suite/Amazon Connectの両方でユーザー管理は必要です
- あとからAmazon ConnectmのID管理方式は変更できません→再構築が必要です
- セッションの有効時間の取り扱いにご注意ください
- 通話中に切断されることがないよう、業務終了後はAmazon ConnectとG Suite両方からログアウトをする運用としてください
普段IdPの管理と全く関わりがなく、G Suiteの管理画面もほぼ初対面でしたが認証の連携ができました。
G Suite管理経験者であれば、難しい操作はないかと思います。
サーバーワークスではAWS側の設定、G Suite設定支援はもちろん運用要件に合わせた設計もお手伝いさせていただいています。
今G Suiteを利用しているから、G Suiteと連携するのが正解とは限りません。
Amazon Connectでは満たせないセキュリティー要件、例えば部門ごとに参照可能なコンタクト情報をコントロールしたい
といったご要件の場合はCRM側のアカウントとの連携が必須となります。
繰り返しますがID管理方式はあとから変更できません。
ぜひ最初にわたしたちにご相談ください。
丸山 麻衣子(記事一覧)
Amazon Connect 専任担当
Amazon Connect の情報をお探しの方はこちらもどうぞ