サービスマネージドユーザーの使用 - AWS Transfer Family

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

サービスマネージドユーザーの使用

サーバーのドメイン設定に応じて、Amazon S3 または Amazon EFS いずれかのサービスマネージドユーザーをサーバーに追加できます。詳細については、「SFTP、FTPS、または FTP サーバーエンドポイントの設定」を参照してください。

サービスマネージドユーザーをプログラムで追加するには、 CreateUser API の例を参照してください。

注記

サービスマネージドユーザーの場合、論理ディレクトリエントリは 2,000 個に制限されます。論理ディレクトリの使用については、「」を参照してください論理ディレクトリを使用して Transfer Family ディレクトリ構造を簡素化する

Amazon S3 サービスマネージドユーザーの追加

注記

クロスアカウント Amazon S3 バケットを設定する場合は、ナレッジセンターの記事「別の AWS アカウントにある Amazon Simple Storage Service バケットを使用するように AWS Transfer Family サーバーを設定する方法を教えてください」に記載されているステップに従います。

Amazon S3 サービスマネージドユーザーをサーバーに追加するには
  1. https://console.aws.amazon.com/transfer/ で AWS Transfer Family コンソールを開き、ナビゲーションペインからサーバーを選択します。

  2. [Servers] (サーバー) ページで、ユーザーの追加先になるサーバーのチェックボックスをオンにします。

  3. [Add user] (ユーザーを追加) を選択します。

  4. [ユーザー設定] セクションの[ユーザー名] にユーザー名を入力します。このユーザー名は最低 3 文字、最高 100 文字である必要があります。ユーザー名に使用できる文字は、a-z、A-Z、0-9、アンダースコア「_」、ハイフン「-」、ピリオド「.」、およびアットマーク「@」です。ユーザー名をハイフン「-」、ピリオド「.」、アットマーク「@」で始めることはできません。

  5. [Access] (アクセス) で、以前に作成した Amazon S3 バケットへのアクセスを提供する IAM ロールを選択します。

    この IAM ロールは、「IAM ポリシーとロールを作成する」の手順に従って作成されました。その IAM ロールには、Amazon S3 バケットへのアクセスを提供する IAM ポリシーが含まれます。また、別の IAM ポリシーで定義されている AWS Transfer Family サービスとの信頼関係も含まれます。ユーザーに対してきめ細かなアクセスコントロールが必要な場合は、「 によるデータアクセスコントロールの強化 AWS Transfer Family 」およびAmazon S3ブログ記事」を参照してください。

  6. (オプション)「Policy」では、以下のいずれかを選択する:

    • None (なし)

    • Existing policy (既存のポリシー)

    • IAM からポリシーを選択する」:既存のセッションポリシーを選択できます。[View] (表示) を選択すると、ポリシーの詳細を含む JSON オブジェクトが表示されます。

    • [ホームフォルダーに基づいてポリシーを自動生成]:セッションポリシーを生成します。[View] (表示) を選択すると、ポリシーの詳細を含む JSON オブジェクトが表示されます。

      注記

      [ホームフォルダーに基づいてポリシーを自動生成] を選択した場合は、[このユーザーに対して制限付き] を選択しないでください。

    セッションポリシーの詳細については、「IAM ポリシーとロールを作成する」を参照してください。セッションポリシーの作成方法の詳細については、「Amazon S3 バケットのセッションポリシーの作成」を参照してください 。

  7. ホームディレクトリ で、 を使用して転送するデータを保存する Amazon S3 バケットを選択します AWS Transfer Family。ユーザーが SFTP クライアントを使用してログインしたときにアクセスする home ディレクトリのパスを入力します。

    このパラメータを空白のままにした場合、Amazon S3 バケットの root ディレクトリが使用されます。この場合、IAM ロールが root ディレクトリへのアクセスを提供することを確認します。

    注記

    セッションポリシーを効果的に使用できるように、ユーザーのユーザー名が含まれるディレクトリパスを選択することをお勧めします。セッションポリシーは、Amazon S3 バケットでのユーザーアクセスを home ディレクトリに制限します。

  8. (オプション) [Restricted] (制限) チェックボックスをオンにすると、ユーザーはそのフォルダの外部にあるものにアクセスしたり、Amazon S3 バケット名やフォルダ名を表示したりできなくなります。

    注記

    ユーザーにホームディレクトリを割り当て、そのホームディレクトリへのアクセスを制限すれば、指定されたフォルダへのアクセスをロックダウンするのに十分なはずです。さらにコントロールの適用が必要な場合、セッションポリシーを使用します。

    このユーザーに対して [制限付き] を選択した場合、ホーム フォルダーは制限付きユーザーに対して定義された値ではないため、[ホーム フォルダーに基づいてポリシーを自動生成] を選択できません。

  9. [SSH public key] (SSH 公開キー) に SSH キーペアの SSH 公開キー部分を入力します。

    新しいユーザーを追加する前に、サービスによってキーが検証されます。

    注記

    SSH キーペアを生成する手順については、「サービス管理ユーザーの SSH キーの生成」を参照してください。

  10. (オプション) [Key] (キー) と [Value] (値) にキーバリューペアとして 1 つ以上のタグを入力して [Add tag] (タグの追加) を選択します。

  11. [Add] (追加) を選択して、選択したサーバーに新しいユーザーを追加します。

    [Server details] (サーバーの詳細) ページの [Users] (ユーザー) セクションに新しいユーザーが表示されます。

次のステップ— 次のステップについては、「クライアントを使用してサーバーエンドポイント経由でファイルを転送する」に進みます。

Amazon EFS サービスマネージドユーザーの追加

Amazon EFS は、Portable Operating System Interface (POSIX) ファイルアクセス許可モデルを使用して、ファイルの所有権を表します。

Amazon EFS サービスマネージドユーザーをサーバーに追加するには
  1. https://console.aws.amazon.com/transfer/ で AWS Transfer Family コンソールを開き、ナビゲーションペインからサーバーを選択します。

  2. [Servers] (サーバー) ページで、ユーザーの追加先になる Amazon EFS サーバーのチェックボックスをオンにします。

  3. [Add user] (ユーザーの追加) を選択して [Add user] (ユーザーの追加) ページを表示します。

  4. [User configuration] (ユーザー設定) セクションで、次のように設定します。

    1. [ユーザー名] は、最小 3 文字、最大 100 文字にする必要があります。ユーザー名に使用できる文字は、a-z、A-Z、0-9、アンダースコア「_」、ハイフン「-」、ピリオド「.」、およびアットマーク「@」です。ユーザー名をハイフン「-」、ピリオド「.」、アットマーク「@」で始めることはできません。

    2. ユーザー ID およびグループ ID については、以下の点に注意してください。

      • 最初に作成するユーザーには、グループ IDユーザー ID の両方に 0 の値を入力することをお勧めします。これにより、Amazon EFS のユーザー管理者権限が付与されます。

      • 追加のユーザーについて、ユーザーの POSIX ユーザー ID とグループ ID を入力します。これらの ID は、ユーザーが実行するすべての Amazon Elastic File System オペレーションに使用されます。

      • [User ID] (ユーザー ID) と [Group ID] (グループ ID) には、先頭にゼロを使用しないでください。たとえば、12345 は許容されますが 012345 は許容されません。

    3. (オプション) [Secondary Group IDs] (セカンダリグループ ID) には、ユーザーごとに 1 つ以上の追加の POSIX グループ ID をカンマで区切って入力します。

    4. [Access] (アクセス) で、以下のような IAM ロールを選択します。

      • アクセスしたい Amazon EFS リソース (ファイルシステム) にのみアクセス権を付与します。

      • ユーザーが実行できるファイルシステム操作と実行できないファイルシステムシステムオペレーションを定義します。

      Amazon EFS ファイルシステムの選択にあたっては、マウントアクセスと読み書きアクセス許可を持つ IAM ロールを使用することをお勧めします。例えば、次の 2 つの AWS 管理ポリシーの組み合わせは、非常に許容されますが、ユーザーに必要なアクセス許可を付与します。

      • AmazonElasticFileSystemClientFullAccess

      • AWSTransferConsoleFullAccess

      詳細は、ブログ記事「Amazon Elastic File SystemのAWS Transfer Family 対応」を参照してください。

    5. [Home directory] (ホームディレクトリ) について、次のように操作します。

      • AWS Transfer Familyで転送するデータの保存に使用したい Amazon EFS ファイルシステムを選択します。

      • ホームディレクトリを制限するかどうかを決めます。ホームディレクトリを [Restricted] (制限) に設定すると次の効果があります。

        • Amazon EFS ユーザーは、そのフォルダ外のファイルやディレクトリにアクセスできません。

        • Amazon EFS ユーザーは Amazon EFS ファイルシステム名 (fs-xxxxxxx) を表示できません。

          注記

          [Restricted] (制限) オプションを使用すると、Amazon EFS ユーザーのシンボリックリンクは解決されません。

      • (オプション) ユーザーがクライアントとしてログインしたときのホームディレクトリのパスを入力します。

        ホームディレクトリを指定しない場合、Amazon EFS ファイルシステムのルートディレクトリが使用されます。この場合、IAM ロールがルートディレクトリへのアクセスを提供することを確認します。

  5. [SSH public key] (SSH パブリックキー) に SSH キーペアの SSH パブリックキー部分を入力します。

    新しいユーザーを追加する前に、サービスによってキーが検証されます。

    注記

    SSH キーペアを生成する手順については、「サービス管理ユーザーの SSH キーの生成」を参照してください。

  6. (オプション) ユーザーに任意のタグを入力します。[Key] (キー) と [Value] (値) にキーバリューペアとして 1 つ以上のタグを入力して [Add tag] (タグの追加) を選択します。

  7. [Add] (追加) を選択して、選択したサーバーに新しいユーザーを追加します。

    [Server details] (サーバーの詳細) ページの [Users] (ユーザー) セクションに新しいユーザーが表示されます。

初めて SFTP で Transfer Family サーバーに接続する際に発生する可能性がある問題:

  • sftp コマンドを実行した場合にプロンプトが表示されず、次のメッセージが表示されることがあります。

    Couldn't canonicalize: Permission denied

    Need cwd

    この場合、ユーザーのロールのポリシー許可を増やす必要があります。などの AWS 管理ポリシーを追加できますAmazonElasticFileSystemClientFullAccess

  • sftp プロンプトで pwd を入力してユーザーのホームディレクトリを表示すると、以下のようなメッセージが表示されます。USER-HOME-DIRECTORYは SFTP ユーザーのホームディレクトリです。

    remote readdir("/USER-HOME-DIRECTORY"): No such file or directory

    この場合、親ディレクトリ (cd ..) をクリックし、ユーザーのホームディレクトリ (mkdir username) を作成します。

次のステップ— 次のステップについては、「クライアントを使用してサーバーエンドポイント経由でファイルを転送する」に進みます。

サービスマネージドユーザーの管理

このセクションでは、ユーザーのリストを表示する方法、ユーザーの詳細を編集する方法、および SSH パブリックキーを追加する方法について説明します。

ユーザーのリストを検索するには
  1. https://console.aws.amazon.com/transfer/ で AWS Transfer Family コンソールを開きます。

  2. ナビゲーションペインで [Servers] (サーバー) を選択して [Servers] (サーバー) ページを表示します。

  3. [Server ID] (サーバー ID) 列で ID を選択すると、[Server Configuration] (サーバーの構成) ページが表示されます。

  4. [Users] (ユーザー) の下にユーザーのリストが表示されます。

ユーザーの詳細を表示または編集するには
  1. https://console.aws.amazon.com/transfer/ で AWS Transfer Family コンソールを開きます。

  2. ナビゲーションペインで [Servers] (サーバー) を選択して [Servers] (サーバー) ページを表示します。

  3. [Server ID] (サーバー ID) 列で ID を選択すると、[Server Configuration] (サーバーの構成) ページが表示されます。

  4. [ユーザー] でユーザー名を選択し、[ユーザーの詳細] ページを見ます。

    このページで [Edit] (編集) を選択すると、ユーザーのプロパティを変更できます。

  5. [User details] (ユーザーの詳細) ページで [User configuration] (ユーザー設定) の隣にある [Edit] (編集) を選択します。

    ユーザーの構成を編集する画面を示す画像
  6. [Edit onfigu] (設定の編集) ページで [Access] (アクセス) について、以前に作成した Amazon S3 バケットへのアクセスを提供する IAM ロールを選択します。

    この IAM ロールは、「IAM ポリシーとロールを作成する」の手順に従って作成されました。その IAM ロールには、Amazon S3 バケットへのアクセスを提供する IAM ポリシーが含まれます。また、別の IAM ポリシーで定義されている AWS Transfer Family サービスとの信頼関係も含まれます。

  7. (オプション) [Policy] (ポリシー) で、次のいずれかを選択します。

    • None (なし)

    • Existing policy (既存のポリシー)

    • 既存のポリシーを選択するには、IAM からから ポリシーを選択します。[View] (表示) を選択すると、ポリシーの詳細を含む JSON オブジェクトが表示されます。

    セッションポリシーの詳細については、「IAM ポリシーとロールを作成する」を参照してください。セッションポリシーの作成方法の詳細については、「Amazon S3 バケットのセッションポリシーの作成」を参照してください 。

  8. ホームディレクトリ で、 を使用して転送するデータを保存する Amazon S3 バケットを選択します AWS Transfer Family。ユーザーが SFTP クライアントを使用してログインしたときにアクセスする home ディレクトリのパスを入力します。

    このパラメータを空白のままにした場合、Amazon S3 バケットの root ディレクトリが使用されます。この場合、IAM ロールが root ディレクトリへのアクセスを提供することを確認します。

    注記

    セッションポリシーを効果的に使用できるように、ユーザーのユーザー名が含まれるディレクトリパスを選択することをお勧めします。セッションポリシーは、Amazon S3 バケットでのユーザーアクセスを home ディレクトリに制限します。

  9. (オプション) [Restricted] (制限) チェックボックスをオンにすると、ユーザーはそのフォルダの外部にあるものにアクセスしたり、Amazon S3 バケット名やフォルダ名を表示したりできなくなります。

    注記

    ユーザーにホームディレクトリを割り当てて、ユーザーをそのホームディレクトリに制限する場合、指定したフォルダへのユーザーのアクセスをロックダウンするにはこれで十分なはずです。さらなるコントロールの適用が必要な場合、セッションポリシーを使用します。

  10. [Save] (保存) を選択して変更内容を保存します。

ユーザーを削除するには
  1. https://console.aws.amazon.com/transfer/ で AWS Transfer Family コンソールを開きます。

  2. ナビゲーションペインで [Servers] (サーバー) を選択して [Servers] (サーバー) ページを表示します。

  3. [Server ID] (サーバー ID) 列で ID を選択すると、[Server Configuration] (サーバーの構成) ページが表示されます。

  4. [ユーザー] でユーザー名を選択し、[ユーザーの詳細] ページを見ます。

  5. [ユーザーの詳細] ページで、ユーザー名の右にある[削除] を選択します。

  6. 表示される確認ダイアログボックスで、「delete」という語を入力してから [Delete] (削除) を選択してユーザーを削除してよいことを確認します。

[Users] (ユーザー) リストからユーザーが削除されます。

ユーザーの SSH パブリックキーを追加するには
  1. https://console.aws.amazon.com/transfer/ で AWS Transfer Family コンソールを開きます。

  2. ナビゲーションペインで、[Servers] (サーバー) を選択します。

  3. [Server ID] (サーバー ID) 列で ID を選択すると、[Server Configuration] (サーバーの構成) ページが表示されます。

  4. [ユーザー] でユーザー名を選択し、[ユーザーの詳細] ページを見ます。

  5. [Add SSH public key] (SSH パブリックキーの追加) を選択して、新しい SSH パブリックキーをユーザーに追加します。

    注記

    SSH キーは、Secure Shell(SSH)File Transfer Protocol (SFTP)が有効になっているサーバーでのみ使用されます。SSH キーペアを生成する方法については、「サービス管理ユーザーの SSH キーの生成」を参照してください。

  6. [SSH public key] (SSH パブリックキー) に SSH キーペアの SSH パブリックキー部分を入力します。

    新しいユーザーを追加する前に、サービスによってキーが検証されます。SSH キーの形式は ssh-rsa string です。SSH キーペアを生成するには、「サービス管理ユーザーの SSH キーの生成」を参照してください。

  7. [Add key] (キーの追加) を選択します。

ユーザーの SSH パブリックキーを削除するには
  1. https://console.aws.amazon.com/transfer/ で AWS Transfer Family コンソールを開きます。

  2. ナビゲーションペインで、[Servers] (サーバー) を選択します。

  3. [Server ID] (サーバー ID) 列で ID を選択すると、[Server Configuration] (サーバーの構成) ページが表示されます。

  4. [ユーザー] でユーザー名を選択し、[ユーザーの詳細] ページを見ます。

  5. パブリックキーを削除するには、その SSH キーチェックボックスを選択し、「削除」を選択します。