top of page
Blog article

Blog article

YubiOn Portal SSOを使用してAWSへのSSOを試してみた

2022年3月16日に弊社サービス「YubiOn Portal」にシングルサインオン(SSO)の機能が追加されました。私自身はよくAWSを使用するため、今回はYubiOn PortalのSSO機能を利用してAWSにシングルサインオンする手順をご紹介しようと思います。


【前提条件】

・AWSのアカウントを持っており、管理者操作ができること。

・Yubico OTP機能が付いたYubiKeyを持っていること。

YubiOn Portalに登録し、操作者にYubiKeyを紐付けておくこと。

SSOの初期登録が済んでいること。


YubiOn Portalの登録やSSO機能の利用は無料で開始することができるので、お気軽に登録してみてください。


【SSOを使用するまでの流れ】

ざっくり流れを説明すると、YubiOn Portal (IdP)とAWS (SP)との間でメタデータ等のやり取りで信頼関係を構築し、IdP側からSPへシングルサインオンする流れとなります。


App (AWS)の作成とメタデータのダウンロード


プロバイダ設定 (IdPメタデータの取り込み )、ロール設定、AWS (SP)メタデータダウンロード


AWS側メタデータの取り込み、AWSのロールとプロバイダARNの設定、セッション名の設定、アクセス可能なメンバーを設定




【SSO設定手順】


YubiOn Portalにログインし、サイドバーから「SSO App設定」にアクセスします。


「Appを選択して追加」ボタンをクリックします。


アプリケーション登録モーダルで「AWS Management Console」をクリックし、登録を行います。


登録が完了するとApp一覧に「AWS Management Console」が表示されます。

続いて「AWS Management Console」をクリックします。


AWS側のSSO設定で使用するYubiOn Portalのメタデータを「メタデータダウンロード」をクリックしてダウンロードします。


YubiOn Portal側のメタデータは次の「AWSの設定」に使用するため、任意の場所に保存しておきます。


シングルサインオンを利用するために、IDプロバイダの設定とロールの設定を行います。まずはYubiOn Portalのプロバイダを設定するため、AWSの管理コンソールにアクセスします。


画面上部の検索ボックスに「IAM」と入力し、サービス一覧から「IAM」を選択します。


画面左側の「IDプロバイダ」をクリックします。


「プロバイダを追加」ボタンをクリックします。


プロバイダの設定で下記を設定します。

  1. プロバイダのタイプ: SAMLを選択します。

  2. プロバイダ名: わかりやすい名前をつけます (例では、YubiOnPortal)

  3. メタデータドキュメント: YubiOn Portalからダウンロードしたメタデータをアップロードします。


最後に「プロバイダを追加」ボタンからプロバイダを追加します。


追加したプロバイダをクリックします。(ここではYubiOnPortal)


プロバイダのARN情報をコピーし、テキストエディタに貼り付けておきます。

※後のYubiOn Portal側の設定で使用します。


次に、AWSにログインするためのロールを設定します。

※AWSのSAMLを利用したSSOでは、各ユーザーを用意するのではなく、ある権限をもったロールを指定してログインするイメージです。


画面左側の「ロール」をクリックします。


「ロールを作成」ボタンをクリックします。


下記を設定します。

  1. 信頼されたエンティティタイプ: SAML2.0フェデレーション

  2. SAML2.0プロバイダー: 作成したプロバイダを選択 (ここではYubiOn Portal)

  3. アクセスレベル ここでは管理コンソールアクセス時のSSOを設定するため、「プログラムによるアクセスとAWSマネジメントコンソールによるアクセスを許可する」を選択します。 ※条件  必要に応じて条件を追加してください。ここでは特に設定しません。

  4. 最後に「次へ」ボタンをクリックします。


最後の画面で下記の設定をします。


ロール名: わかりやすいロール名を入力します。

説明: ロールの説明を入力します。

信頼されたエンティティを選択する: 必要であれば修正します。

許可を追加する: 必要であれば追加します。

タグを追加: 必要であれば追加します。


最後に「ロールを作成」ボタンをクリックします。


作成したロールを選択します。


ロールのARN情報をコピーし、テキストエディタに貼り付けておきます。

※後のYubiOn Portal側の設定で使用します。


最後にAWS (SP)側のメタデータを下記URLからダウンロードしておきます。


AWS側の操作は以上です。

次にYubiOn Portal側の設定に移ります。


YubiOn Portalの「SSO App設定」画面に戻り、AWS (SP)メタデータを取り込みます。

「SPメタデータアップロード」タブをクリックします。


SPメタデータアップロードから、AWS (SP)側のメタデータをアップロードします。


確認モーダルが表示されるので、「アップロード」ボタンからアップロードします。


次に、AWSのSSO設定に最低必要なアトリビュートを設定します。


【必須項目は以下】

Role: ロールARNとプロバイダARNをカンマ区切りで指定します。

RoleSessionName: 名前やメールアドレスなどのログインしているアカウントを表すもの。


画面左下の「アトリビュート設定」タブをクリックします。


AWSのロールを指定するため「Role」アトリビュートを設定します。

テンプレートアトリビュートの「Role」右側にある「編集」アイコンをクリックします。


アトリビュート値に下記を設定します。

  1. 設定方法: 「直接入力」を選択します。

  2. 設定値: AWS側の設定で控えていたロールのARNとプロバイダのARNをカンマ区切りで入力します。 設定値の入力例) 「ロールのARN,プロバイダのARN」

  3. 最後に「更新」ボタンをクリックし、情報を更新します。


次に、AWSログイン後に表示される「RoleSessionName」アトリビュートの設定を行います。

「RoleSessionName」右側の「編集」アイコンをクリックします。


下記のアトリビュート値を設定します。

※本記事ではメンバー名を設定する手順で説明します。


  1. 設定方法: 「メンバー情報」を選択します。

  2. 設定値: 「メンバー名」を選択します。

  3. 最後に「更新」ボタンをクリックし、情報を更新します。


アトリビュートの設定は以上です。


引き続き、AWSにアクセスできるメンバーを設定します。

※グループ機能を使用してグループに所属するメンバーを一括で割り当てる方法もありますが、ここではメンバー個別の割り当て方法で説明します (グループ機能は有料の機能です)


画面右下の「メンバー割当」をクリックします。


割り当てたいメンバーを選択し、「登録」ボタンから登録します。


以上でSSOの設定は完了です。


実際にYubiOn Portal SSOを利用してAWSにログインしてみましょう。

サイドメニューの「SSO」アイコンをクリックし、「SSO Appログイン」にアクセスします。


「AWS Management Console」をクリックします。


AWSの管理コンソールにログインできました。


最後に

AWSの運用に合わせたロールを作成し、YubiOn Portal側でアクセス設定を行うだけで簡単にSSOを実現することができます。AWSに個々のユーザーを用意する必要はないので、管理も楽になると思います。SSO有料版に切り替えたい場合はお問い合わせフォームよりお問い合わせください。

bottom of page