カスタム ID プロバイダーソリューション - AWS Transfer Family

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

カスタム ID プロバイダーソリューション

AWS Transfer Family カスタム ID プロバイダーソリューションは、企業がサービスを実装する際に持つ多くの一般的な認証と認可のユースケースを解決するモジュラーカスタム ID プロバイダーソリューションです。このソリューションは、ユーザーごとの詳細なセッション設定でカスタム ID プロバイダーを実装するための再利用可能な基盤を提供し、認証ロジックと認可ロジックを分離して、さまざまなユースケース向けに柔軟でeasy-to-maintain基盤を提供します。

AWS Transfer Family カスタム ID プロバイダーソリューションを使用すると、一般的なエンタープライズ認証と認可のユースケースに対処できます。このモジュラーソリューションは以下を提供します。

  • カスタム ID プロバイダーを実装するための再利用可能な基盤

  • ユーザーごとの詳細なセッション設定

  • 認証ロジックと認可ロジックを分離

カスタム ID ツールキットの実装の詳細

このソリューションは、さまざまなユースケースに柔軟で保守可能なベースを提供します。開始するには、https://github.com/aws-samples/toolkit-for-aws-transfer-family でツールキットを確認し、「開始方法」セクションのデプロイ手順に従ってください。

GitHub で利用可能なカスタム ID プロバイダーツールキットのアーキテクチャ図。
注記

カスタム ID プロバイダーのテンプレートと例を以前に使用したことがある場合は、代わりにこのソリューションを採用することを検討してください。今後、プロバイダー固有のモジュールはこのソリューションで標準化されます。このソリューションには、継続的なメンテナンスと機能強化が適用されます。

このソリューションには、ログ記録や AWS Transfer FamilyHomeDirectoryDetailsパラメータなど、必要な追加のセッションメタデータの保存先などの詳細を考慮したカスタムプロバイダーを実装するための標準パターンが含まれています。このソリューションは、ユーザーごとの詳細なセッション設定でカスタム ID プロバイダーを実装するための再利用可能な基盤を提供し、認証を完了してセッションの設定を確立するために Transfer Family に返される設定を構築する再利用可能なロジックから ID プロバイダー認証ロジックを切り離します。

このソリューションのコードとサポートリソースは、https://github.com/aws-samples/toolkit-for-aws-transfer-family で入手できます。

ツールキットには以下の機能が含まれています。

  • 必要なリソースをプロビジョニングするAWS Serverless Application Modelテンプレート。必要に応じて、ブログ記事「Securing with Web Application Firewall and Amazon API Gateway」で説明されているように AWS WAF、Amazon API Gateway をデプロイして設定します。 AWS Transfer FamilyAWS Amazon API Gateway

  • HomeDirectoryDetails、、 などのユーザーセッション設定など、ID プロバイダーに関する設定メタデータを保存する Amazon DynamoDB スキーマPolicyRole

  • モジュールとして、将来的に新しい ID プロバイダーをソリューションに追加できるモジュラーアプローチ。

  • 属性の取得: 必要に応じて、AD、LDAP、Okta など、サポートされている ID プロバイダーから IAM ロールと POSIX プロファイル (UID と GID) 属性を取得します。

  • ソリューションの同じデプロイを使用して、単一の Transfer Family サーバーと複数の Transfer Family サーバーに接続された複数の ID プロバイダーのサポート。

  • IP 許可リストなどの組み込み IP 許可リストチェック。オプションでユーザーごとまたは ID プロバイダーごとに設定できます。

  • 詳細なログ記録と設定可能なログレベル、およびトラブルシューティングに役立つトレースのサポート。

カスタム ID プロバイダーソリューションのデプロイを開始する前に、次の AWS リソースが必要です。

  • NAT ゲートウェイまたは DynamoDB ゲートウェイエンドポイントを介したインターネット接続を備えた、プライベートサブネットを持つ Amazon Virtual Private Cloud (VPC)。

  • 以下のタスクを実行するための適切な IAM アクセス許可。

    • custom-idp.yaml AWS CloudFormation テンプレートをデプロイします。

    • AWS CodePipeline プロジェクトの作成

    • AWS CodeBuild プロジェクトの作成

    • IAM ロールとポリシーを作成する

重要

ターゲット Transfer Family サーバー AWS リージョン を含む同じ AWS アカウント および にソリューションをデプロイする必要があります。

サポートされている ID プロバイダー

次のリストには、カスタム ID プロバイダーソリューションでサポートされている ID プロバイダーの詳細が含まれています。

プロバイダー パスワードフロー パブリックキーフロー 多要素 属性の取得 詳細
Active Directory と LDAP はい あり なし あり

ユーザー検証は、パブリックキー認証フローの一部として実行できます。

Argon2 (ローカルハッシュ) あり なし なし なし Argon2 ハッシュは、「ローカル」パスワードベースの認証ユースケースのユーザーレコードに保存されます。
Amazon Cognito あり なし はい* なし

時間ベースのワンタイムパスワード (TOTP) ベースの多要素認証のみ。

*SMS ベースの MFA はサポートされていません。

Entra ID (旧 Azure AD) あり なし なし なし
Okta はい あり はい* あり TOTP ベースの MFA のみ。
パブリックキー なし あり なし なし パブリックキーは DynamoDB のユーザーレコードに保存されます。
Secrets Manager はい あり なし なし