読者です 読者をやめる 読者になる 読者になる

アラタナエンジニアブログ

aratana Engineer's Blog

AWSにOneLoginでシングルサインオン

AWS OneLogin セキュリティ

アラタナでギターを担当している月岡です。
なんだか久しぶりにブログを書きます..


今回はAWSにIDaaSのOneLoginを経由してシングルサインでログインをしてみます。


通常、AWSのマネージメントコンソールにログインする際にはメールアドレスとパスワードの組み合わせ
加えては2段階認証でというのがポピュラーだと思います。

AWSでは認証方式にSAMLにも対応されているので
OneLoginからのシングルサインを行なってみます。
これによって個別にAWSアカウントのメールアドレスやパスワードの作成管理を行う手間が省けますし何より安全ですね。

OneLoginとは

IDaaS (ID as a Service)でありクラウド型のID管理サービスとなります。
アラタナではAWSはもちろん様々なWEBサービスの業務アプリケーションについてOneLoginを介して運用しております。
OneLognについてはフリープランもありますので一度試されてはいかがでしょうか。

f:id:ststyle:20151030113426p:plain
「OneLogin」 より

OneLoginwww.pentio.com

ざっくりの利用イメージは例えば下図のような感じとなります。
OneLoginは対応しているWEBサービスの数が4000を超えています。
独自でコネクターと呼ばれる定義が行えますので自社のサービスについても対応用可能です。
またこれまでID,パスワードのみしか対応していないWEBサービスについてもOneLoginをゲートウェイとすることで
多要素認証をすることも可能になります。

個別にWEBサービスログイン
f:id:ststyle:20151030115603p:plain


OneLogin経由の場合

例えば情シスの管理者のみがOneLoginの設定を行うことで社員の方は
業務アプリケーションを利用する際にパスワードを意識すること無く利用ができますので
アカウント管理的にも非常にメリットが高いですね。
加えてスマホからの利用でもOneLoginを経由することでセキュリティレベルが社内アクセスと変わらない事からBYODの導入促進にも繋がりますよね。

f:id:ststyle:20151030115717p:plain
「OneLogin」 より



では今回はタイトルにありますようにAWSマネージメントコンソールをOneLogin経由としますので
早速準備に移りましょう。

1. OneLoginにAWSのアプリケーションを追加する

OneLoginの管理者権限でログイン後に、グローバルナビの"APPS"より"Add Apps"を選択します。
f:id:ststyle:20151030131817p:plain
「OneLogin」 より


"アプリケーションを検索"のページに遷移しますので検索ボックスに"aws"と入力しますと
"Amazon Web Services (AWS)"が表示されますので選択します。
f:id:ststyle:20151030131620p:plain
「OneLogin」 より


"Configuration" の画面が表示されましたら右上の"SAVE"を押下します。
f:id:ststyle:20151030132100p:plain
「OneLogin」 より


もう一度似たような画面が表示されますが"Display Name"の表示名など必要に応じて変更してください。
f:id:ststyle:20151030134126p:plain
「OneLogin」 より


次にナビゲーションから"SSO"を選択します。
f:id:ststyle:20151030134645p:plain
「OneLogin」 より


"Issure URL"をコピーします。WEBブラウザにコピーしたURLを貼っつけてアクセスしますとSAML認証定義のメタデータドキュメントファイル(XML)がダウンロードされます。
f:id:ststyle:20151030135220p:plain
「OneLogin」 より



2. AWSにてIDプロバイダの作成

今度はAWSマネージメントコンソールでの作業となります。
IAMのメニューの"IDプロバイダ"から"プロバイダの作成"ボタンを押下します。
f:id:ststyle:20151030135817p:plain
「AWSマネジメントコンソール」 より


プロバイダーの設定では"プロバイダーのタイプ"についてコンボボックスより"SAML"を選択します。
f:id:ststyle:20151030140132p:plain
「AWSマネジメントコンソール」 より


"SAML"を選択すると以下の画面になりますのでプロバイダ名と先程ダウンロードしたXMLのファイルを選択してください。
f:id:ststyle:20151030140255p:plain
「AWSマネジメントコンソール」 より


"プロバイダ情報の検証"画面へ遷移します画面の指示に従ってください。
f:id:ststyle:20151030140430p:plain
「AWSマネジメントコンソール」 より



3. AWSにてロールの作成

左ペインの"ロール"より"新しいロールの作成"を押下します。
f:id:ststyle:20151030140633p:plain
「AWSマネジメントコンソール」 より


ロール名を入力します。
f:id:ststyle:20151030140826p:plain
「AWSマネジメントコンソール」 より


"ロールタイプの選択"では"IDプロバイダアクセス用のロール"を選び"SAMLプロバイダへのウェブシングルサインオン (WebSSO) アクセスを付与"を選択します。
f:id:ststyle:20151030141231p:plain
「AWSマネジメントコンソール」 より


先程作成した"onelogin"を選びます。
f:id:ststyle:20151030141608p:plain
「AWSマネジメントコンソール」 より


4. AWSにてポリシーのアタッチ

ポリシーのアタッチですが状況に合わせてアタッチするポリシーを選択してください。
f:id:ststyle:20151030141848p:plain
「AWSマネジメントコンソール」 より


設定した内容が表示されます。ロールARNとエンティティはこの後OneLogin側の設定で利用しますので控えておいてください。
f:id:ststyle:20151030142100p:plain
「AWSマネジメントコンソール」 より

AWS側の設定は以上です。簡単ですね。



5. OneLoginにてロールの適用設定

最後にOneLogin側の設定となります、"Parameters"から以下の設定を行います。

"Amazon Username" → Email
"Role" → Macro を選択し値は先に控えていた "ロールARN","エンティティ"をカンマ区切りで入力します。※←ここがポイントですね
"RoleSessionName" → Email
f:id:ststyle:20151030142639p:plain
「OneLogin」 より


OneLoginのポータル画面にAWSのアイコンが表示されますのでOneLoginからアクセスを許可するユーザーを適時選びましたら完了です。


6. OneLogin経由でAWSシングルサインオンしてみる

ではでは早速アイコンをポチッ!!
f:id:ststyle:20151030143352p:plain
「OneLogin」 より

ワンクリックで問題なくAWSマネージメントコンソールにログインが行えました。
f:id:ststyle:20151030143420p:plain
「AWSマネジメントコンソール」 より

ログインユーザー名も右上にきちんと表示されてますね。
f:id:ststyle:20151030143523p:plain
「AWSマネジメントコンソール」 より


以上となります。ではでは