ガチャつくブログ

IT系のお勉強のために、やってみたことをアウトプットしていきます。

MENU

Azure Active Directory で遊ぶ - SSO環境の構築(無料で) -

f:id:tmt-tty:20190627190131p:plain

はじめに

SSO(Single Sign-On)な環境を無料で構築してみたいと思います。

本番環境では試す事がなかなか難しいので、こういった環境で実際の動きを確認してみたいと思います。

 

AzureADを経由して、AWS管理コンソールにSSOできる環境を構築します。

f:id:tmt-tty:20190627185359p:plain 

必要なもの

いくつか必要なものがあるので、整理しておきます。

 

・Office365(試用版)

products.office.com

 

SAML対応アプリケーション

今回はAmazon Web Service を使用します。

無料アカウントが作成できますので、持っていない方は下記より作成してください。

aws.amazon.com

  

やり方

Office365環境の準備

今回はSSO環境として、Office365に含まれているAzure Active Directory を使用します。

そのため、まずOffice365の試用版の環境を構築します。

下記のページにアクセスします。

products.office.com

 

最上位ライセンスのOffice365 E5 の最下部の無料で試すをクリックします。

f:id:tmt-tty:20190625221042p:plain

 

メールアドレスを入力し、次へをクリックします。

f:id:tmt-tty:20190625221148p:plain

 

アカウントのセットアップをクリックします。

f:id:tmt-tty:20190625221239p:plain

 

必要な項目を入力し、次へをクリックします。

f:id:tmt-tty:20190625221413p:plain

 

確認コードを送信をクリックします。

確認のため登録した電話番号宛に確認コードが送られます。

f:id:tmt-tty:20190625221541p:plain

 

ドメイン名を入力し、利用可能かどうか確認をクリックします。

f:id:tmt-tty:20190625221658p:plain

 

確認後問題なければ、次へをクリックします。

f:id:tmt-tty:20190625221827p:plain

 

ユーザーIDとパスワードを入力し、次へをクリックします。

f:id:tmt-tty:20190625221955p:plain

 

設定に移動をクリックします。

f:id:tmt-tty:20190625222101p:plain

 

Office365セットアップの画面になります。

カスタムドメインは使用しないので、下を選択し、次へをクリックします。

f:id:tmt-tty:20190625222243p:plain

 

ユーザー追加は後からできるので、次へをクリックします。

f:id:tmt-tty:20190625222431p:plain

 

 

Teamsの作成も後からできるので、次へをクリックします。

f:id:tmt-tty:20190625222540p:plain

 

Officeアプリのインストールも後で良いので、次へをクリックします。

f:id:tmt-tty:20190625222635p:plain

 

管理センターに移動をクリックします。

f:id:tmt-tty:20190625222727p:plain

 

管理センターの画面になります。

f:id:tmt-tty:20190625222852p:plain

 

Office365環境の準備ができました。

 

Azure Active Directory の設定 

SSOを構成するためAzure Active Directoryの設定を実施します。

マニュアルは下記を参照しました。

docs.microsoft.com

 

管理センターのメニューから、Azure Active Directory をクリックします。

f:id:tmt-tty:20190625224940p:plain

 

Azure Active Directory をクリックし、SSO機能が含まれているENTERPRISE MOBILITY + SECURITY E5 の無料試用版をクリックします。

f:id:tmt-tty:20190625225127p:plain

 

アクティブ化をクリックします。

f:id:tmt-tty:20190625225419p:plain



再度Azure Active Directoy をクリックします。

f:id:tmt-tty:20190625225537p:plain

 

AWSとの連携設定 (Azure側)

続いて、AWSへのSSOを構成していきます。Microsoftチュートリアルを出しているので、この手順に従って設定します。

docs.microsoft.com

 

手順通りにやれば問題無いと思いますが、自分がやった手順を貼っておきます。

Azure Active Directoryエンタープライズアプリケーションをクリックします。

f:id:tmt-tty:20190627150021p:plain

 

すべてのアプリケーションから新しいアプリケーションをクリックします。

f:id:tmt-tty:20190627150133p:plain

 

Amazonで検索し、Amazon Web Services (AWS) をクリックします。

f:id:tmt-tty:20190627150237p:plain

 

追加をクリックします。

f:id:tmt-tty:20190627150340p:plain

 

Amazon Web Services (AWS)の画面になるので、シングル サインオンをクリックします。

f:id:tmt-tty:20190627150435p:plain

 

SAMLをクリックします。

f:id:tmt-tty:20190627150538p:plain

 

基本的なSAML構成 の編集ボタンをクリックします。

f:id:tmt-tty:20190627150621p:plain

 

設定値は自動で入っているので、保存をクリックします。

f:id:tmt-tty:20190627150716p:plain

 

ユーザー属性とクレームの編集ボタンをクリックします。

f:id:tmt-tty:20190627150825p:plain

 

新しいクレームの追加をクリックします。

f:id:tmt-tty:20190627150914p:plain

下記の3つを追加します。

f:id:tmt-tty:20190627151001p:plain

f:id:tmt-tty:20190627150957p:plain

f:id:tmt-tty:20190627150953p:plain

 

SAML名証明書のフェデレーションメタデータXMLダウンロードをクリックします。※AWS側の設定の際に使用します。

f:id:tmt-tty:20190627151140p:plain

 

 

AWSとの連携設定 (AWS側)

AWSのIAM(Identity and Access Management) を開き、IDプロバイダーをクリックします。

f:id:tmt-tty:20190627151537p:plain

プロバイダの作成をクリックします。

f:id:tmt-tty:20190627151647p:plain

 

下記の通り設定します。

メタデータドキュメントは先程のAzureの手順でダウンロードしたファイルです。

f:id:tmt-tty:20190627151740p:plain

Create をクリックします。

f:id:tmt-tty:20190627151843p:plain

 

IAMのロールをクリック、ロールの作成をクリックします。

f:id:tmt-tty:20190627151936p:plain

 

SAML 2.0 フェデレーション をクリックします。

f:id:tmt-tty:20190627152035p:plain

 

先程作成したIDプロバイダーを選択、プログラムによるアクセスと〜を選択し、次のステップをクリックします。

f:id:tmt-tty:20190627152158p:plain

 

アクセス権を設定し、次のステップをクリックします。

f:id:tmt-tty:20190627152349p:plain

 

タグはオプションですので、次のステップをクリックします。

f:id:tmt-tty:20190627152622p:plain

 

ロール名を入力し、ロールの作成をクリックします。

f:id:tmt-tty:20190627152742p:plain

 

IAMのポリシーをクリック、ポリシーの作成をクリックします。

f:id:tmt-tty:20190627152942p:plain

 

JSONタブをクリックし、下記のJSONコードを貼り付けます。

{

"Version": "2012-10-17",

"Statement": [

{

"Effect": "Allow",

"Action": [

"iam:ListRoles"

],

"Resource": "*"

}

]

}

 

ポリシーの確認をクリックします。

f:id:tmt-tty:20190627153026p:plain


名前を入力し、ポリシーの作成をクリックします。

f:id:tmt-tty:20190627153351p:plain

IAMのユーザーをクリック、ユーザーを追加をクリックします。

f:id:tmt-tty:20190627153453p:plain

 

ユーザー名の入力、プログラムによるアクセスを選択し、次のステップをクリックします。

f:id:tmt-tty:20190627153607p:plain

 

既存のポリシーを直接アタッチを選択、先程作成したポリシーを選択し、次のステップをクリックします。

f:id:tmt-tty:20190627153919p:plain

タグはオプションなので、次のステップをクリックします。

f:id:tmt-tty:20190627154048p:plain

 

ユーザーの作成をクリックします。

f:id:tmt-tty:20190627154144p:plain

csvをダウンロードします。

Azure側の設定で使用します。

f:id:tmt-tty:20190627154308p:plain

 

AWSとの連携設定 (再びAzure側)

Amazon Web Services の設定画面で、プロビジョニングをクリックします。

f:id:tmt-tty:20190627154520p:plain

 

プロビジョニングモードを自動にし、先程AWSからダウンロードしたCSVを確認し、Clientsecretとシークレットトークンを入力します。

テスト接続をクリックしエラーが出ないことを確認します。

f:id:tmt-tty:20190627154641p:plain

 

プロビジョニング状態をONに変更し、保存をクリックします。

f:id:tmt-tty:20190627154825p:plain

 

Azure Active Directory をクリック、ユーザーをクリックします。

f:id:tmt-tty:20190627154930p:plain

 

新規ユーザーを作成します。

f:id:tmt-tty:20190627155101p:plain

 

すべてのアプリケーションからAmazon Web Servicesをクリックします。

f:id:tmt-tty:20190627155247p:plain

 

ユーザーとグループをクリックし、ユーザーの追加をクリックします。

f:id:tmt-tty:20190627155429p:plain

 

先程作成したユーザーを選択し、選択をクリックします。

f:id:tmt-tty:20190627155631p:plain

 

割り当てをクリックします。

f:id:tmt-tty:20190627155815p:plain

 

アクセス確認

マイアプリポータルからSSOをしてみます。

マイアプリポータルについては、下記をご参照ください。

docs.microsoft.com

 

マイアプリポータルへのログインは下記になります。

myapps.microsoft.com

 

作成したユーザーでログインすると下記の画面になります。

早速Amazon Web Services をクリックしてみます。

f:id:tmt-tty:20190627160030p:plain

 

ログイン画面は表示されずにAWSマネジメントコンソールにログインできました!!

f:id:tmt-tty:20190627160212p:plain

 

1回やってみると、イメージが湧きますね。それほど、難しくない感覚。

オンプレのADとAzureADを同期しているハイブリッド環境でもやる事は変わらないかなと思いますので、社内でもちょっと試そうかなと思いました。

AWS以外のSaaSとの連携も試していきたいと思います。