シングルサインオン (SAML 2.0 ベースのフェデレーション認証) - AWS クライアント VPN

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

シングルサインオン (SAML 2.0 ベースのフェデレーション認証)

AWS Client VPN は、クライアント VPN エンドポイントの Security Assertion Markup Language 2.0 (SAML 2.0) との ID フェデレーションをサポートします。SAML 2.0 をサポートする ID プロバイダー (IdPs) を使用して、一元化されたユーザー ID を作成できます。その後、SAML ベースのフェデレーション認証が使用されるようにクライアント VPN エンドポイントを設定し、IdP に関連付けることができます。その後、ユーザーは、一元化された認証情報を使用してクライアント VPN エンドポイントに接続します。

SAML ベースの IdP をクライアント VPN エンドポイントに使用するには、次の操作を行う必要があります。

  1. 選択した IdP に SAML ベースのアプリを作成して で使用するか AWS Client VPN、既存のアプリを使用します。

  2. との信頼関係を確立するために IdP を設定します AWSリソースについては、「SAML ベースの IdP 設定リソース」を参照してください。

  3. IdP で、組織を IdP として定義するフェデレーションメタデータドキュメントを生成し、ダウンロードします。この署名付き XML ドキュメントは、 AWS と IdP 間の信頼関係を確立するために使用されます。

  4. クライアント VPN エンドポイントと同じ AWS アカウントに IAM SAML ID プロバイダーを作成します。IAM SAML ID プロバイダーは、IdP によって生成されたメタデータドキュメントを使用して、組織の IdP とAWS 信頼の関係を定義します。詳細については、IAM ユーザーガイドの「SAML ID プロバイダーの作成」を参照してください。後で IdP のアプリ設定を更新する場合は、新しいメタデータドキュメントを生成し、IAM SAML ID プロバイダーを更新します。

    注記

    IAM SAML ID プロバイダーを使用するために IAM ロールを作成する必要はありません。

  5. クライアント VPN エンドポイントを作成します。認証タイプとしてフェデレーション認証を指定し、作成した IAM SAML ID プロバイダーを指定します。詳細については、「クライアント VPN エンドポイントを作成する」を参照してください。

  6. クライアント設定ファイルをエクスポートし、ユーザーに配布します。AWS が提供するクライアントの最新バージョンをダウンロードし、これを使用して設定ファイルをロードして、クライアント VPN エンドポイントに接続するようにユーザーに指示します。または、クライアント VPN エンドポイントのセルフサービスポータルを有効にした場合は、セルフサービスポータルに移動して設定ファイルと AWS 提供されたクライアントを取得するようにユーザーに指示します。詳細については、「セルフサービスポータルにアクセスする」を参照してください。

認証ワークフロー

次の図に、SAML ベースのフェデレーション認証を使用するクライアント VPN エンドポイントの認証ワークフローの概要を示します。クライアント VPN エンドポイントを作成および設定するときは、IAM SAML ID プロバイダーを指定します。

認証ワークフロー
  1. ユーザーは AWS 、提供されたクライアントをデバイスで開き、クライアント VPN エンドポイントへの接続を開始します。

  2. クライアント VPN エンドポイントは、IAM SAML ID プロバイダーで提供された情報に基づいて IdP URL と認証リクエストをクライアントに送信します。

  3. AWS 提供されたクライアントは、ユーザーのデバイスで新しいブラウザウィンドウを開きます。ブラウザは IdP にリクエストを送信し、ログインページを表示します。

  4. ユーザーがログインページに認証情報を入力し、IdP は署名付き SAML アサーションをクライアントに返します。

  5. AWS 提供されたクライアントは、SAML アサーションをクライアント VPN エンドポイントに送信します。

  6. クライアント VPN エンドポイントはアサーションを検証し、ユーザーへのアクセスを許可または拒否します。

SAML ベースのフェデレーション認証の要件と考慮事項

SAML ベースのフェデレーション認証の要件と考慮事項を次に示します。

  • SAML ベースの IdP でユーザーとグループを設定するためのクォータとルールについては、「ユーザーとグループのクォータ」を参照してください。

  • SAML アサーションと SAML ドキュメントには署名が必要です。

  • AWS Client VPN はAudienceRestriction、SAML アサーションの「」およびNotBefore NotOnOrAfter「」条件のみをサポートします。

  • SAML 応答でサポートされる最大サイズは 128 KB です。

  • AWS Client VPN は署名付き認証リクエストを提供しません。

  • SAML シングルログアウトはサポートされていません。ユーザーは、 AWS 提供されたクライアントから切断してログアウトすることも、接続を終了することもできます。

  • 1 つのクライアント VPN エンドポイントでサポートされるのは、単一の IdP のみです。

  • IdP で有効になっている場合は Multi-Factor Authentication (MFA) がサポートされます。

  • ユーザーは、 AWS 提供されたクライアントを使用してクライアント VPN エンドポイントに接続する必要があります。バージョン 1.2.0 以降を使用する必要があります。詳細については、AWS 「提供されたクライアント を使用して接続する」を参照してください。

  • IdP 認証は、Apple Safari、Google Chrome、Microsoft Edge、Mozilla Firefox の各ブラウザでサポートされています。

  • AWS が提供するクライアントは、SAML レスポンスのためにユーザーのデバイスに TCP ポート 35001 を予約します。

  • 正しくない URL または悪意のある URL で IAM SAML ID プロバイダーのメタデータドキュメントが更新されると、ユーザーの認証の問題が発生したり、フィッシング攻撃につながる可能性があります。このため、IAM SAML ID プロバイダーに対して行われる更新は、 AWS CloudTrail を使用してモニタリングすることをお勧めします。詳細については、IAM ユーザーガイドの「AWS CloudTrailを使用した IAM および AWS STS 呼び出しのログ記録」を参照してください。

  • AWS Client VPN は、HTTP リダイレクトバインディングを介して IdP に AuthN リクエストを送信します。このため、HTTP リダイレクトバインディングが IdP でサポートされ、IdP のメタデータドキュメントに存在する必要があります。

  • SAML アサーションでは、NameID 属性に E メールアドレス形式を使用する必要があります。

SAML ベースの IdP 設定リソース

次の表に、 での使用をテスト IdPs した SAML ベースと AWS Client VPN、IdP の設定に役立つリソースを示します。

IdP リソース
Okta SAML で AWS Client VPN ユーザーを認証する
Microsoft Azure Active Directory (Azure AD) 詳細については、Microsoft ドキュメントウェブサイトの「チュートリアル: Azure Active Directory シングルサインオン (SSO) と AWS ClientVPN の統合」を参照してください。
JumpCloud での Single Sign On (SSO) AWS Client VPN
AWS IAM Identity Center での認証と認可 AWS Client VPN のための IAM Identity Center の使用

アプリを作成するためのサービスプロバイダー情報

前の表に示されていない IdP を使用して SAML ベースのアプリケーションを作成するには、次の情報を使用して AWS Client VPN サービスプロバイダー情報を設定します。

  • Assertion Consumer Service (ACS) URL: http://127.0.0.1:35001

  • Audience URI: urn:amazon:webservices:clientvpn

IdP からの SAML レスポンスには、少なくとも 1 つの属性が含まれている必要があります。以下は属性の例です。

属性 説明
FirstName ユーザーの名。
LastName ユーザーの姓。
memberOf ユーザーが属するグループ (複数も可)。
注記

memberOf 属性は、Active Directory または SAML IdP グループベースの承認ルールを使用する場合に必要です。また、属性は大文字と小文字を区別し、指定どおりに設定する必要があります。詳細については、「ネットワークベースの承認」と「承認ルール」を参照してください。

セルフサービスポータルのサポート

クライアント VPN エンドポイントでセルフサービスポータルを有効にした場合、ユーザーは SAML ベースの IdP 認証情報を使用してポータルにログインします。

IdP が複数の Assertion Consumer Service (ACS) URL をサポートしている場合は、次の ACS URL をアプリに追加します。

https://self-service.clientvpn.amazonaws.com/api/auth/sso/saml

GovCloud リージョンでクライアント VPN エンドポイントを使用している場合は、代わりに次の ACS URL を使用します。同じ IDP アプリを使用して標準と GovCloud リージョンの両方を認証する場合は、両方の URLsを追加できます。

https://gov.self-service.clientvpn.amazonaws.com/api/auth/sso/saml

IdP が複数の ACS URL をサポートしていない場合は、以下を実行します。

  1. IdP に追加の SAML ベースのアプリを作成し、次の ACS URL を指定します。

    https://self-service.clientvpn.amazonaws.com/api/auth/sso/saml
  2. フェデレーションメタデータドキュメントを生成し、ダウンロードします。

  3. クライアント VPN エンドポイントと同じ AWS アカウントに IAM SAML ID プロバイダーを作成します。詳細については、IAM ユーザーガイドの「SAML ID プロバイダーの作成」を参照してください。

    注記

    メインアプリ用に作成したプロバイダーに加えて、この IAM SAML ID プロバイダーを作成します。

  4. クライアント VPN エンドポイントを作成し、作成した IAM SAML ID プロバイダーを両方指定します。