« 【AWS発表】 Amazon Redshift - 様々な新機能を追加! | メイン | 【AWS発表】 AWS Management Console - AWS Marketplaceを統合 »

【AWS発表】 SAMLを使用したAWS Identity and Access Management

AWS Identity and Access Management (IAM)チームのシニア・プロダクト。マネージャであるBen Brauerが、新しい、業界標準に準拠したAWSとのIDフェデレーションについて寄稿してくれました。

-- Jeff;


これまで何年にもわたり、AWS Identity and Access Management (IAM)によっていかにID フェデレーションが可能になるか説明したブログをいくつも掲載して参りました(これまでの背景をお知りになりたい方は、過去のポスト、 AWS IAMがLDAP等とのID統合をサポートAWS Management Consoleへのシングルサインオン(英語) AWS IAM が Amazon、Facebook、GoogleのID連携をサポート をご覧ください)。これらの過去のソリューションは多くのお客様の役に立ってきましたが、既存のSAML (Security Assertion Markup Language)に基づいたアイデンティティ管理ソフトウェアを活用できるようSAMLをサポートして欲しいというお客様もいらっしゃいました。

本日、私たちはIdentity Federation(ID連携)を拡張し、多くのアイデンティティ・プロバイダ(IdP)により使用される、確立された業界標準であるSAML 2.0をサポートすることを発表致します。この新しい機能はID連携によるSSOを可能にし、ユーザーがSAML準拠のアイデンティティ・プロバイダ(IdP)からの認証を用いて、AWS Management Consoleにサインインしたり、AWS APIに対してプログラムからのCallを行う事を可能にします。

Identity Federation(ID連携)により、既存のディレクトリ内のアイデンティティを維持管理することが可能になり、ユーザーの管理が一層容易になります。SAML準拠のフェデレーションは、SAMLをサポートするいかなるIdPソフト(例えば、Windows Active Directory Federation ServicesやShibboleth)でも使えることから、フェデレーションの構成をシンプルに行えるようになります。フェデレーションを使用することで、もしユーザーが会社から離れたときにも、会社のアイデンティティを一か所から削除するだけで、AWSへのアクセス権も取り消せます。一つだけユーザー名とパスワードを覚えればよいので、ユーザーにも恩恵があります。どうですか、気になってきましたね?

ID連携によるSSOを体験
どのようにしてID連携によるSSOが機能するかを詳しく説明するユースケースを見てみましょう。Windows Active Directory (AD)ドメインのメンバーである複数のユーザーがいると想定しましょう。この複数のユーザーはAWS Management Consoleにサインインできるようにしたいが、それぞれにIAMユーザーを作りたくはありません。その代わりに、ユーザーは、内部ポータルにアクセスし、ADにより認証され、SSOによりAWS Management Consoleにリダイレクトされます。(もしSAMLの用語を良くご存知なら、IdP起動のWebSSOのユースケースとおわかりでしょう。)このユースケースにおいては、あなたの会社は、ユーザーを認証し、AWSにアサーションを渡すIdPということになり、AWSはアサーションを受け入れコンソールへのSSOを提供するサービスプロバイダとなります。

このユースケースをサポートするため、私たちはいくつかの新しいものを導入しました。すなわち、SAMLプロバイダ、AssumeRolewithSAML API、そして、新しく追加されたサインインのエンドポイント(https://signin.aws.amazon.com/SAML)です。SAMLプロバイダは新たなIAMエンティティで、あなたのAWSアカウントと信頼を確立したい、ひとつか複数の組織の実体を定義づけます。AWS Management Console、AWS CLIまたはIAM APIを使用して、標準のSAMLメタデータ文書をアップロードしてSAMLプロバイダを作成します。新しいAPI、AssumeRoleWithSAMLによりIAMロールを承継してSecurity Token Service (STS)に一時的なセキュリティ・クレデンシャルを要求する事が出来ます。既存のAssumeRole APIと違い、AWSクレデンシャル(すなわち、アクセスキーIDとシークレット・アクセス・キー)を用いて要求に署名することは不要です。かわりに、SAMLのアサーションをAssumeRoleWithSAML要求と一緒に渡してやればいいのです。また、新しいサインイン・エンドポイントにより、SAMLアサーションを使用してAWS Management Consoleにログインできます。

どのようにしてWindowsノートパソコンにサインインしてから、AWS Management Consoleにログインするのか見ていきましょう。

  1. A user in your organization browses to an internal portal in your network. The portal also functions as the IdP which handles the SAML trust between your organization and AWS.
  2. お客様の組織のユーザーは、お客様のネットワークから、内部向けポータルにアクセスします。このポータルは、お客様の組織とAWSの間でSAMLの交換を処理するIdPとしても機能します。
  3. IdPは、ADに照らし合わせてアイデンティティを認証します。
  4. The IdPは、新しいAWSのサインイン・エンドポイントに対してSAMLアサーションをポストします。舞台裏では、サインインはAssumeRoleWithSAML API を使用してテンポラリなセキュリティ・クレデンシャルを要求し、サインインURLを作成します。
  5. ユーザーのブラウザーはサインインURLを受け取り、AWS Management Consoleにリダイレクトされます。

ユーザーの目から見ると、このプロセスはトランスペアレントで、お客様の組織のポータルから始まり、AWS Management Consoleにたどり着きますが、その間、いかなるAWSのクレデンシャルも入力しません。

  1. お使いのIdPソフトウェアを使ってメタデータ文書を作成する
  2. メタデータ文書を使用してSAMLプロバイダを作成する
  3. ひとつでも複数でも、SAMLプロバイダとの信頼関係を持ち、連携されたユーザーの権限を定めるIAMロールを作成する
  4. IdPソフトにおいて、(例えばADのグループのような)属性をIAMロールにマッピングするよう構成する
  5. 出来上がり!

AWS Management ConsoleへのID連携SSOは、AWSとのID連携のためにSAMLを使用する一つの例にすぎません。もし、SAMLを用いた、プログラムによるAWS APIへのアクセスについてお知りになりたければ、SAMLをベースにしたフェデレーションのためのAWSアカウントの構成に関する詳しい説明もありますので、AWS Security Blogへお進みください。

SAMLを使用したID連携を始めるには、STSのドキュメントをご覧ください。

-- Ben Brauer, シニア・プロダクト・マネージャ

この記事はAWSシニアエバンジェリスト Jeff Barが綴るAmazon Web Services Blogの記事、 AWS Identity and Access Management Using SAMLを 吉荒祐一 (Facebook, Twitter)が翻訳したものです。

コメント

トラックバック

この記事のトラックバックURL:
http://www.typepad.com/services/trackback/6a00d8341c534853ef019b00fa2146970b

【AWS発表】 SAMLを使用したAWS Identity and Access Managementを参照しているブログ:

Featured Event

2016年3 月

    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31