ファイルゲートウェイの管理 - AWS Storage Gateway

Amazon S3 ファイルゲートウェイのドキュメントはAmazon S3 ファイルゲートウェイとは

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

ファイルゲートウェイの管理

以下は、ファイルゲートウェイリソースを管理する方法についての情報です。

ファイル共有の追加

ファイルゲートウェイをアクティブ化して実行すると、ファイル共有をさらに追加して、Amazon S3 バケットにアクセス権限を付与できます。アクセス権限を付与するバケットには、ファイルを共有するアカウントとは異なる Amazon Web Services アカウントのバケットが含まれます。ファイル共有を追加する方法については、「ファイル共有の作成」を参照してください。

Amazon S3 バケットへのアクセス許可の付与

ファイル共有を作成すると、ファイルゲートウェイは Amazon S3 バケットにファイルをアップロードするためのアクセスを要求します。このアクセスを許可するために、ファイルゲートウェイはAWS Identity and Access Management(IAM) ロールで、このアクセスを許可する IAM ポリシーに関連付けられています。

このロールには、この IAM ポリシーに加え、Security Token Service (STS) 信頼関係が設定されていることが必要です。このポリシーによって、ロールで実行できるアクションが決まります。また、S3 バケットには、この IAM ロールが S3 バケットにアクセスすることを許可するアクセスポリシーが必要です。

ロールとアクセスポリシーは自分自身で作成できます。または、ファイルゲートウェイによって作成することもできます。ファイルゲートウェイでポリシーを作成した場合、そのポリシーは S3 アクションのリストに含まれます。ロールとアクセス許可の詳細については、をに委任するロールの作成AWSのサービスIAM ユーザーガイド

次に示すのは、ファイルゲートウェイが IAM ロールを引き受けることができるようにする信頼ポリシーの例です。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "storagegateway.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

ファイルゲートウェイがユーザーに代わってポリシーを作成しないようにするには、独自のポリシーを作成してファイル共有にアタッチします。これを行う方法については、「ファイル共有の作成」を参照してください。

次のポリシーの例では、ファイルゲートウェイがポリシーに表示されたすべての Amazon S3 アクションを実行できるよう許可します。ステートメントの最初の部分では、リストされたすべてのアクションを TestBucket という S3 バケットで実行するよう許可します。次に、TestBucket のすべてのオブジェクトでリストされたアクションを許可します。

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:GetAccelerateConfiguration", "s3:GetBucketLocation", "s3:GetBucketVersioning", "s3:ListBucket", "s3:ListBucketVersions", "s3:ListBucketMultipartUploads" ], "Resource": "arn:aws:s3:::TestBucket", "Effect": "Allow" }, { "Action": [ "s3:AbortMultipartUpload", "s3:DeleteObject", "s3:DeleteObjectVersion", "s3:GetObject", "s3:GetObjectAcl", "s3:GetObjectVersion", "s3:ListMultipartUploadParts", "s3:PutObject", "s3:PutObjectAcl" ], "Resource": "arn:aws:s3:::TestBucket/*", "Effect": "Allow" } ] }

クロスアカウントアクセスのファイル共有の使用

クロスアカウントアクセスとは、Amazon Web Services アカウントおよびそのアカウントのユーザーが別のアマゾンウェブサービスのアカウントに属するリソースに対するアクセスを付与されている場合をいいます。ファイルゲートウェイを使用すると、1 つのAmazon Web Services アカウントのファイル共有を使用して、別のAmazon Web Services アカウントに属する Amazon S3 バケットのオブジェクトにアクセスできます。

1 つのAmazon Web Services アカウントが所有するファイル共有を使用して別のAmazon Web Services アカウントの S3 バケットにアクセスするには

  1. アクセスする必要のある S3 バケットおよびそのバケット内のオブジェクトへのアクセス権限が S3 バケット所有者から Amazon Web Services アカウントに付与されてていることを確認します。このアクセスを許可する方法については、」例 2: バケット所有者がクロスアカウントのバケットのアクセス許可を付与するAmazon Simple Storage Service 開発者ガイド。必要なアクセス権限のリストについては、「Amazon S3 バケットへのアクセス許可の付与」を参照してください。

  2. ファイル共有が S3 バケットにアクセスするために使用する IAM ロールには、s3:GetObjectAcls3:PutObjectAcl などのオペレーションを行うアクセス権限が含まれていることを確認します。さらに、この IAM ロールにはアカウントがこの IAM ロールを引き受けることができる信頼ポリシーが含まれていることを確認します。このような信頼ポリシーの例については、「Amazon S3 バケットへのアクセス許可の付与」を参照してください。

    ファイル共有が既存のロールを使用して S3 バケットにアクセスする場合は、s3:GetObjectAcl および s3:PutObjectAcl オペレーションに対するアクセス許可を含める必要があります。このロールには、アカウントがこのロールを引き受けることを許可する信頼ポリシーも必要です。このような信頼ポリシーの例については、「Amazon S3 バケットへのアクセス許可の付与」を参照してください。

  3. [Storage Gateway] コンソールを開きます。https://console.aws.amazon.com/storagegateway/home

  4. [ファイル共有の設定] ダイアログボックスの [オブジェクトメタデータ] にある [バケット所有者に完全なコントロールを付与] を選択します。

クロスアカウントアクセスのファイル共有を作成または更新して、ファイル共有をオンプレミスにマウントした場合は、セットアップをテストすることを強くお勧めします。これを行うには、ディレクトリの内容一覧を表示するか、テストファイルを書き込んで S3 バケットのオブジェクトとして表示されることを確認します。

重要

クロスアカウントにファイル共有に使用するアカウントへのアクセス権限が付与されるようにポリシーが正しくセットアップされていることを確認します。正しく設定されていない場合には、操作している Amazon S3 バケットに伝達していないオンプレミスアプリケーションでファイルを更新します。

アクセスポリシーおよびアクセスコントロールリストの詳細については、以下を参照してください。

アクセスポリシーのオプションを使用するためのガイドラインAmazon Simple Storage Service 開発者ガイド

アクセスコントロールリスト (ACL) の概要Amazon Simple Storage Service 開発者ガイド

ファイル共有を削除する

ファイル共有が不要になった場合は、Storage Gateway 管理コンソールから削除できます。ファイル共有を削除すると、ゲートウェイは、ファイル共有でマッピングされている Amazon S3 バケットからデタッチされます。ただし、S3 バケットとその内容は削除されません。

ファイル共有を削除する際にゲートウェイから S3 バケットにデータをアップロードしている場合は、すべてのデータがアップロードされるまで削除プロセスは完了しません。データが完全にアップロードされるまで、ファイル共有のステータスは「削除中 (DELETING)」になります。

データを完全にアップロードするには、すぐ後の「ファイル共有を削除するには」の手順を使用します。データが完全にアップロードされるまで待ちたくない場合は、本トピックの後半の「ファイル共有を強制的に削除するには」の手順を参照してください。

ファイル共有を削除するには

  1. [Storage Gateway] コンソールを開きます。https://console.aws.amazon.com/storagegateway/home

  2. [ファイル共有] を選択して、削除するファイル共有を選択します。

  3. [アクション] で、[ファイル共有の削除] を選択します。以下の確認ダイアログボックスが表示されます。

  4. 確認ダイアログボックスで、削除するファイル共有のチェックボックスをオンにし、[Delete] を選択します。

場合によっては、ファイル共有を削除する前に、Network File System (NFS) ファイル共有のファイルに書き込まれるデータがすべてアップロードされるまで待機することがあります。たとえば、書き込まれたデータを意図的に破棄する際、アップロードが完了していないことがあります。別の例では、Amazon S3 バケット、またはファイル共有を戻すオブジェクトがすでに削除されていることがあります。つまり、指定されたデータをアップロードすることはできません。

このような場合は、Amazon Web Services マネジメントコンソールまたはDeleteFileShareAPI オペレーション。このオペレーションでは、データのアップロードプロセスは中断されます。このオペレーションを実行すると、ファイル共有は、FORCE_DELETING ステータスに変わります。コンソールからファイル共有を強制的に削除するには、次の手順を参照してください。

ファイル共有を強制的に削除するには

  1. [Storage Gateway] コンソールを開きます。https://console.aws.amazon.com/storagegateway/home

  2. [ファイル共有] を選択し、強制的に削除するファイル共有を選択して、数秒間待ちます。[Details] タブに、削除のメッセージが表示されます。

    注記

    強制削除オペレーションを元に戻すことはできません。

  3. [詳細] タブに表示されるメッセージで、強制的に削除するファイル共有の ID を確認し、確認のボックスをオンにして、[今すぐ強制削除] を選択します。

また、DeleteFileShare API オペレーションを使用して、ファイル共有を強制的に削除することもできます。

NFS ファイル共有の設定を編集するには

Amazon S3 バケットのストレージクラス、ファイル共有名、オブジェクトメタデータ、スカッシュレベル、エクスポート形式、自動キャッシュ更新設定を編集できます。

ファイル共有の設定を編集する

  1. [Storage Gateway] コンソールを開きます。https://console.aws.amazon.com/storagegateway/home

  2. [File shares] を選択し、更新するファイル共有を選択します。

  3. を使用する場合アクション] で、共有設定の編集

  4. 次の 1 つ以上の操作を行います。

    • を使用する場合新規オブジェクトのストレージクラスで、Amazon S3 バケットで作成された新しいオブジェクトで使用するストレージクラスを選択します。

    • (オプション)ファイル共有名[] で、ファイル共有の新しい名前を入力します。

    • [オブジェクトメタデータ] で、使用するメタデータを選択します。

      • アップロードされたオブジェクトの MIME タイプをファイルの拡張子に基づいて推測するには、[MIME の種類の推測] を選択します。

      • ファイルのネットワークファイルシステム (NFS) またはサーバーメッセージブロック (SMB) ファイル共有にマッピングする S3 バケットの所有者に完全なコントロールを付与するには、[バケット所有者に完全なコントロールを付与] を選択します。別のアカウントが所有するバケット内のオブジェクトへのファイル共有を使用したアクセスの詳細については、「クロスアカウントアクセスのファイル共有の使用」を参照してください。

      • バケット所有者ではなくリクエスタまたはリーダーがアクセス料金を支払う必要があるバケットのこのファイル共有を使用している場合は、[リクエスタ支払いを有効にする] を選択します。詳細については、「リクエスタ支払いバケット」を参照してください。

    • を使用する場合をにエクスポートする[] で、ファイル共有のオプションを選択します。デフォルト値は [Read-write] です。

      注記

      Microsoft Windows クライアントにマウントされたファイル共有の場合、[Read-only]forをにエクスポートするで、予期しないエラーによってフォルダを作成できないことを示すエラーメッセージが表示される場合があります。このエラーメッセージは NFS バージョン 3 での既知の問題です。このメッセージは無視できます。

    • [Squash レベル] で、NFS ファイル共有の Squash レベルを選択して、[Save] (保存) を選択します。

      注記

      NFS ファイル共有でのみ、Squash レベルの設定を選択できます。SMB ファイル共有では、Squash の設定は使用されません。

      取り得る値には以下のものがあります。

      • Root squash (default) – リモートスーパーユーザー (ルート) のアクセスは UID (65534) および GID (65534) にマッピングされます。

      • No root squash – リモートスーパーユーザー (ルート) はルートとしてのアクセスを受け取ります。

      • All squash – すべてのユーザーアクセスは UID (65534) および GID (65534) にマッピングされます。

      スカッシュレベルのデフォルト値は、[Root squash] です。

    • (オプション)後にS3からの自動キャッシュ更新で、チェックボックスをオンにし、Time to Live (TTL) を使用してファイル共有のキャッシュを更新する時間を日、時間、分単位で設定します。TTL は、最後に更新してからディレクトリにアクセスすると、ファイルゲートウェイが Amazon S3 バケットからそのディレクトリの内容を最初に更新する時間の長さです。

    • (オプション)ファイルのアップロード通知で、ファイルゲートウェイによって S3 にファイルが完全にアップロードされたときに通知するチェックボックスを選択します。設定:セトリング時間は、クライアントがファイルに書き込んだ最後のポイント・イン・タイム後に待機する秒数を制御します。ObjectUploaded通知。クライアントはファイルに多くの小さな書き込みを行うことができるため、このパラメーターをできるだけ長く設定して、同じファイルに複数の通知が短い期間に生成されないようにすることをお勧めします。詳細については、「ファイルのアップロード通知の取得」を参照してください。

      注記

      この設定は、オブジェクトが S3 にアップロードされるタイミングには影響せず、通知のタイミングにのみ影響します。

  5. [Save] を選択します。

NFS ファイル共有のメタデータデフォルトを編集するには

バケットのファイルまたはディレクトリのメタデータ値を設定しない場合、ファイルゲートウェイによりデフォルトのメタデータ値が設定されます。これらの値にはファイルとフォルダの Unix アクセス許可が含まれています。メタデータデフォルトは、Storage Gateway 管理コンソールで編集できます。

ファイルゲートウェイはファイルとフォルダを Amazon S3 に保存し、Unix ファイルのアクセス許可はオブジェクトメタデータに保存されます。ファイルゲートウェイがファイルゲートウェイによって保存されなかったオブジェクトを検出した場合、これらのオブジェクトにはデフォルトの Unix ファイルのアクセス許可が割り当てられます。次の表では、デフォルトの Unix のアクセス許可を示しています。

メタデータ 説明
ディレクトリ許可

形式「nnnn」の Unix ディレクトリモード。たとえば、「0666」は、ファイル共有内のすべてのディレクトリのアクセスモードを表します。デフォルト値は 0777 です。

ファイルのアクセス許可

形式「nnnn」の Unix ファイルモード。たとえば、「0666」はファイル共有内のファイルモードを表します。デフォルト値は 0666 です。

ユーザー ID

ファイル共有のファイルのデフォルトの所有者 ID。デフォルト値は 65534 です。

グループ ID ファイル共有のデフォルトグループ ID。デフォルト値は 65534 です。

メタデータのデフォルト値を編集するには

  1. [Storage Gateway] コンソールを開きます。https://console.aws.amazon.com/storagegateway/home

  2. [File shares] を選択し、更新するファイル共有を選択します。

  3. [アクション] で、[メタデータのファイルのデフォルトの編集] を選択します。

  4. [メタデータのファイルのデフォルトの編集] ダイアログボックスで、メタデータの情報を提供して、[保存] を選択します。

NFS ファイル共有のアクセス設定の編集

NFS ファイル共有の許可された NFS クライアントの設定を変更することをお勧めします。変更しない場合、ネットワークのすべてのクライアントがファイル共有にマウントできます。

NFS のアクセス設定を編集するには

  1. [Storage Gateway] コンソールを開きます。https://console.aws.amazon.com/storagegateway/home

  2. [ファイル共有] を選択して、編集する NFS ファイル共有を選択します。

  3. [Actions] (アクション) で、[Edit share access settings] (共有のアクセス設定の編集) を選択します。

  4. [許可されたクライアントを編集] ダイアログボックスで、[エントリの追加] を選択し、許可するクライアントの IP アドレスまたは CIDR 表記を入力したら、[Save] (保存) を選択します。

SMB ファイル共有のゲートウェイレベルのアクセス設定の編集

ゲートウェイのセキュリティレベルの設定、AD ユーザーへのアクセス権の設定、ゲストアクセスの提供、ファイル共有のファイル共有の表示設定を行うことができます。

SMB ファイル共有のゲートウェイレベルのアクセス設定を編集するには

  1. [Storage Gateway] コンソールを開きます。https://console.aws.amazon.com/storagegateway/home

  2. ドメインへの参加に使用するゲートウェイを選択します。

  3. [Actions (アクション)] で、[Edit SMB settings (SMB 設定の編集)] を選択して、[Edit SMB settings (SMB 設定の編集)] ダイアログボックスを開き、実行するアクションを選択します。

ゲートウェイのセキュリティレベルの設定

ファイルゲートウェイを使用して、ゲートウェイのセキュリティレベルを指定することができます。このセキュリティレベルを指定することで、ゲートウェイでサーバーメッセージブロック (SMB) 署名または SMB 暗号化を義務付けるか、または SMB バージョン 1 を有効にするかどうかを設定できます。

セキュリティレベルを設定するには

  1. [SMB security settings (SMB セキュリティ設定)] セクションの右上隅にある鉛筆アイコンを選択します。

  2. [セキュリティレベル] で、以下のいずれかを選択します。

    注記

    この設定は、API リファレンスでは SMBSecurityStrategy と呼ばれています。

    セキュリティレベルが高いほど、パフォーマンスに影響する可能性があります。

    • 暗号化を強制する— このオプションを選択した場合、ファイルゲートウェイは、暗号化が有効になっている SMBv3 クライアントからの接続のみを許可します。このオプションは、機密データを処理する環境に強くお勧めします。このオプションは、Microsoft Windows 8、Windows Server 2012 以降の SMB クライアントで使用できます。

    • 署名を強制する— このオプションを選択した場合、ファイルゲートウェイは、署名が有効になっている SMBv2 または SMBv3 クライアントからの接続のみを許可します。このオプションは、Microsoft Windows Vista、Windows Server 2008 以降の SMB クライアントで使用できます。

    • ネゴシエーションされたクライアント— このオプションを選択した場合、要求は、クライアントによってネゴシエートされた内容に基づいて確立されます。このオプションは、環境内の異なるクライアント間で互換性を最大限に高める場合に推奨されます。

    注記

    2019 年 6 月 20 日以前にアクティブ化されたゲートウェイの場合、デフォルトのセキュリティレベルは [Client negotiated] です。

    2019 年 6 月 20 日以降にアクティブ化されたゲートウェイの場合、デフォルトのセキュリティレベルは [Enforce encryption] です。

  3. [Save] を選択します。

Active Directory を使用したユーザーの認証

SMB ファイル共有へのユーザー認証アクセスに社内の Active Directory を使用するには、Microsoft AD ドメインの認証情報でゲートウェイの SMB 設定を編集します。これにより、ゲートウェイが Active Directory ドメインに参加し、ドメインのメンバーが SMB ファイル共有にアクセスできるようになります。

注記

を使用するAWS Directory Serviceでは、アマゾンウェブサービスクラウドにホスト型の Active Directory ドメインサービスを作成できます。

正しいパスワードを提供できるすべてのユーザーは SMB ファイル共有へのゲストアクセスが許可されます。

また、SMB ファイル共有でアクセスコントロールリスト (ACL) を有効にすることもできます。ACL を有効にする方法については、「Microsoft Windows ACL を使用して、SMB ファイル共有へのアクセスを制御する」を参照してください。

Active Directory 認証を有効にするには

  1. [Active Directory settings (Active Directory 設定)] セクションの右上隅にある鉛筆アイコンを選択します。

  2. [Domain name] (ドメイン名) で、ゲートウェイに参加させるドメインを指定します。ドメインの結合には、その IP アドレスあるいは組織単位を使用できます。組織単位は、ユーザー、グループ、コンピューター、および他の組織単位を一括できる Active Directory のサブディビジョンです。

    注記

    ゲートウェイが Active Directory ディレクトリと結合できない場合には、JoinDomain API オペレーションを使用して、ディレクトリの IP アドレスとの結合をお試しください。

    注記

    ゲートウェイがドメインに参加していないときは、[Active Directory status (Active Directory のステータス)] に [Detached (デタッチ済み)] と表示されます。

  3. ドメインユーザーとドメインのパスワードを入力し、[Save (保存)] を選択します。

    コンソールの [Gateways] (ゲートウェイ) セクションの上部にあるメッセージは、ゲートウェイが AD ドメインに参加したことを示します。

ファイル共有へのアクセスを特定の AD ユーザーおよびグループに制限するには

  1. Storage Gateway コンソールで、アクセスを制限するファイル共有を選択します。

  2. を使用する場合アクション] で、共有設定の編集をクリックして許可/拒否されたユーザーとグループの編集ダイアログボックス。

  3. [Allowed users (許可ユーザー)] で [エントリの追加] を選択し、ファイル共有へのアクセスを許可する AD ユーザーのリストを入力します。

  4. [Allowed groups (許可グループ)] で [エントリの追加] を選択し、ファイル共有へのアクセスを許可する AD グループのリストを入力します。

  5. [Denied users (拒否ユーザー)] で [エントリの追加] を選択し、ファイル共有へのアクセスを拒否する AD ユーザーのリストを入力します。

  6. [Denied groups (拒否グループ)] で [エントリの追加] を選択し、ファイル共有へのアクセスを拒否する AD グループのリストを入力します。

  7. エントリの追加が完了したら、[Save] (保存) を選択します。

    注記

    ユーザーおよびグループで、AD ユーザーまたはグループ名のみを入力します。ドメイン名は、ゲートウェイが結合されている特定の AD のゲートウェイのメンバーシップによって暗黙的に設定されます。

有効/無効なユーザーまたはグループを指定しない場合、認証されたすべての Active Directory ユーザーがファイル共有をエクスポートできます。

ファイル共有へのゲストアクセスの提供

ゲストアクセスのみを許可する場合、ファイルゲートウェイを Microsoft AD ドメインに参加させる必要はありません。AD ドメインのメンバーであるファイルゲートウェイを使用して、ゲストアクセスを使用したファイル共有を作成することもできます。ゲストアクセスを使用するファイル共有を作成する前に、デフォルトのパスワードを変更する必要があります。

ゲストアクセスパスワードを変更するには

  1. [Guest access settings (ゲストアクセス設定)] セクションの右上隅にある鉛筆アイコンを選択します。

  2. を使用する場合ゲストパスワードを選択し、パスワードを入力し、保存

ファイル共有の可視性の設定

ファイル共有の可視性は、ユーザーに共有を表示するときにゲートウェイ上の共有を表示するかどうかを制御します。

ファイル共有の表示設定を設定するには

  1. ファイル共有の表示設定セクションで、編集する鉛筆アイコンを選択します。

  2. を使用する場合可視性ステータス] で、ユーザーに共有を一覧表示するときに、このゲートウェイの共有を表示するチェックボックスをオンにします。このゲートウェイ上の共有をユーザに一覧表示するときに、このゲートウェイ上の共有が表示されないようにするには、このチェックボックスをオフにします。

SMB ファイル共有の設定を編集するには

SMB ファイル共有を作成したら、ファイル共有の設定として、Amazon S3 バケットのストレージクラス、オブジェクトメタデータ、大文字と小文字の区別、アクセスベースの列挙、監査ログ、自動キャッシュ更新、エクスポートを編集できます。

SMB ファイル共有設定を編集するには

  1. [Storage Gateway] コンソールを開きます。https://console.aws.amazon.com/storagegateway/home

  2. [File shares] を選択し、更新するファイル共有を選択します。

  3. を使用する場合アクション] で、共有設定の編集

  4. 次の 1 つ以上の操作を行います。

    • を使用する場合新規オブジェクトのストレージクラスで、Amazon S3 バケットで作成された新しいオブジェクトで使用するストレージクラスを選択します。

    • (オプション)ファイル共有名[] で、ファイル共有の新しい名前を入力します。

    • [オブジェクトメタデータ] で、使用するメタデータを選択します。

      • アップロードされたオブジェクトの MIME タイプをファイルの拡張子に基づいて推測するには、[MIME の種類の推測] を選択します。

      • ファイルのネットワークファイルシステム (NFS) またはサーバーメッセージブロック (SMB) ファイル共有にマッピングする S3 バケットの所有者に完全なコントロールを付与するには、[バケット所有者に完全なコントロールを付与] を選択します。別のアカウントが所有するバケット内のオブジェクトへのファイル共有を使用したアクセスの詳細については、「クロスアカウントアクセスのファイル共有の使用」を参照してください。

      • バケット所有者ではなくリクエスタまたはリーダーがアクセス料金を支払う必要があるバケットのこのファイル共有を使用している場合は、[リクエスタ支払いを有効にする] を選択します。詳細については、「リクエスタ支払いバケット」を参照してください。

    • を使用する場合をにエクスポートする[] で、ファイル共有のオプションを選択します。デフォルト値は [Read-write] です。

      注記

      Microsoft Windows クライアントにマウントされたファイル共有の場合、[Read-only]forをにエクスポートするで、予期しないエラーによってフォルダを作成できないことを示すエラーメッセージが表示される場合があります。このエラーメッセージは NFS バージョン 3 での既知の問題です。このメッセージは無視できます。

    • を使用する場合大文字と小文字の区別] で、ゲートウェイで大文字と小文字の区別を制御できるようにするには、チェックボックスを選択するか、クライアントで大文字と小文字の区別を制御するには、チェックボックスをオフにします。

      注記
      • このチェックボックスをオンにすると、この設定は新しい SMB クライアント接続に直ちに適用されます。既存の SMB クライアント接続をファイル共有から切断し、設定を有効にするには、再接続する必要があります。

      • このチェックボックスをオフにすると、この設定により、大文字と小文字のみが異なる名前のファイルにアクセスできなくなる可能性があります。

    • を使用する場合アクセスベースの列挙で、共有上のファイルとフォルダを読み取りアクセス権を持つユーザーのみに表示するには、このチェックボックスをオンにします。ディレクトリの列挙中に共有上のファイルとフォルダがすべてのユーザーに表示されるようにするには、このチェックボックスをオフのままにします。

      注記

      アクセスベースの列挙は、共有のアクセス制御リスト (ACL) に基づいて、SMB ファイル共有上のファイルとフォルダーの列挙をフィルタリングするシステムです。

    • [Audit logs (監査ログ)] で、以下のいずれかを選択します。

      • [Disable logging (ログ記録の無効化)]

      • [Create a new log group (新しいロググループの作成)] で、新しい監査ログを作成します。

      • [Use an existing log group (既存のロググループの使用)] で、リストから既存の監査ログを選択します。

      監査ログの詳細については、「ファイルゲートウェイ監査ログについて」を参照してください。

    • (オプション)後にS3からの自動キャッシュ更新で、チェックボックスをオンにし、Time to Live (TTL) を使用してファイル共有のキャッシュを更新する時間を日、時間、分単位で設定します。TTL は、最後に更新してからディレクトリにアクセスすると、ファイルゲートウェイが Amazon S3 バケットからそのディレクトリの内容を最初に更新する時間の長さです。

    • (オプション)ファイルのアップロード通知で、ファイルゲートウェイによって S3 にファイルが完全にアップロードされたときに通知するチェックボックスを選択します。設定:セトリング時間は、クライアントがファイルに書き込んだ最後のポイント・イン・タイム後に待機する秒数を制御します。ObjectUploaded通知。クライアントはファイルに多くの小さな書き込みを行うことができるため、このパラメーターをできるだけ長く設定して、同じファイルに複数の通知が短い期間に生成されないようにすることをお勧めします。詳細については、「ファイルのアップロード通知の取得」を参照してください。

      注記

      この設定は、オブジェクトが S3 にアップロードされるタイミングには影響せず、通知のタイミングにのみ影響します。

  5. [Save] を選択します。

Amazon S3 バケットのオブジェクトの更新

NFS または SMB クライアントがファイルシステムオペレーションを実行すると、ゲートウェイはファイル共有に関連付けられる S3 バケット内のオブジェクトのインベントリを維持します。ゲートウェイは、このキャッシュされた在庫表を使用して、S3 リクエストのレイテンシーと頻度を減らします。この操作は、ファイルゲートウェイキャッシュストレージにファイルをインポートしません。キャッシュされたインベントリのみが更新され、S3 バケット内のオブジェクトのインベントリでの変更が反映されます。

ファイル共有の S3 バケットを更新するには、Storage Gateway コンソールのRefreshCacheオペレーション、またはStorage Gateway API でAWS Lambdafunction.

コンソールで S3 バケット内のオブジェクトを更新するには

  1. [Storage Gateway] コンソールを開きます。https://console.aws.amazon.com/storagegateway/home

  2. [ファイル共有] を選択し、更新する S3 バケットに関連付けられているファイル共有を選択します。

  3. [アクション] では、[キャッシュを更新] を選択します。

    更新処理にかかる時間は、ゲートウェイにキャッシュされているオブジェクトの数、および S3 バケットに対して追加または削除されたオブジェクトの数によって異なります。

S3 バケットのオブジェクトを更新するにはAWS Lambda関数

  1. ファイルゲートウェイで使用される S3 バケットを特定します。

  2. [(オブジェクトエディタ)イベントセクションは空白になります。後で自動的に移入されます。

  3. IAM ロールを作成し、Lambda の信頼関係を許可するlambda.amazonaws.com

  4. 次のポリシーを使用します。

    { "Version": "2012-10-17", "Statement": [ { "Sid": "StorageGatewayPermissions", "Effect": "Allow", "Action": "storagegateway:RefreshCache", "Resource": "*" }, { "Sid": "CloudWatchLogsPermissions", "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:CreateLogGroup", "logs:PutLogEvents" ], "Resource": "*" } ] }
  5. Lambda コンソールで Lambda 関数を作成します。

  6. Lambda タスクには、次の関数を使用します。

    import json import boto3 client = boto3.client('storagegateway') def lambda_handler(event, context): print(event) response = client.refresh_cache( FileShareARN='arn:aws:storagegateway:ap-southeast-2:672406774878:share/share-E51FBD9C' ) print(response) return 'Your FileShare cache has been refreshed'
  7. を使用する場合実行ロール[] で、作成した IAM ロールを選択します。

  8. オプション:Amazon S3 のトリガーを追加し、イベントを選択しますObjectCreatedまたはObjectRemoved

    注記

    RefreshCacheは、別のプロセスを開始する前に1つのプロセスを完了する必要があります。バケット内に多数のオブジェクトを作成または削除すると、パフォーマンスが低下する可能性があります。したがって、S3 トリガーの使用は推奨されません。代わりに、以下で説明する Amazon CloudWatch ルールを使用します。

  9. CloudWatch コンソールで CloudWatch ルールを作成し、スケジュールを追加します。一般的に、私たちは固定レートの 30 分. ただし、大きな S3 バケットでは 1 ~ 2 時間を使用できます。

  10. CloudWatch イベント用の新しいトリガーを追加し、作成したルールを選択します。

  11. Lambda 設定を保存します。[Test] を選択します。

  12. 選択S3プットを選択し、要件に合わせてテストをカスタマイズします。

  13. テストが成功します。そうでない場合は、JSON を要件に合わせて変更し、再テストします。

  14. Amazon S3 コンソールを開き、作成したイベントと Lambda 関数 ARN が存在することを確認します。

  15. オブジェクトを S3 バケットにアップロードするには、Amazon S3 コンソールまたはAWS CLI。

    CloudWatch コンソールでは、次のような出力が生成されます。

    { u'Records': [ {u'eventVersion': u'2.0', u'eventTime': u'2018-09-10T01:03:59.217Z', u'requestParameters': {u'sourceIPAddress': u'MY-IP-ADDRESS'}, u's3': {u'configurationId': u'95a51e1c-999f-485a-b994-9f830f84769f', u'object': {u'sequencer': u'00549CC2BF34D47AED', u'key': u'new/filename.jpeg'}, u'bucket': {u'arn': u'arn:aws:s3:::MY-BUCKET', u'name': u'MY-GATEWAY-NAME', u'ownerIdentity': {u'principalId': u'A3OKNBZ72HVPP9'}}, u's3SchemaVersion': u'1.0'}, u'responseElements': {u'x-amz-id-2': u'76tiugjhvjfyriugiug87t890nefevbck0iA3rPU9I/s4NY9uXwtRL75tCyxasgsdgfsq+IhvAg5M=', u'x-amz-request-id': u'651C2D4101D31593'}, u'awsRegion': u'MY-REGION', u'eventName': u'ObjectCreated:PUT', u'userIdentity': {u'principalId': u'AWS:AROAI5LQR5JHFHDFHDFHJ:MY-USERNAME'}, u'eventSource': u'aws:s3'} ] }

    Lambda 呼び出しでは、次のような出力が生成されます。

    { u'FileShareARN': u'arn:aws:storagegateway:REGION:ACCOUNT-ID:share/MY-SHARE-ID', 'ResponseMetadata': {'RetryAttempts': 0, 'HTTPStatusCode': 200, 'RequestId': '6663236a-b495-11e8-946a-bf44f413b71f', 'HTTPHeaders': {'x-amzn-requestid': '6663236a-b495-11e8-946a-bf44f413b71f', 'date': 'Mon, 10 Sep 2018 01:03:59 GMT', 'content-length': '90', 'content-type': 'application/x-amz-json-1.1' } } }

    クライアントにマウントされた NFS 共有には、この更新が反映されます。

    注記

    何百万ものオブジェクトを含む大きなバケットでラージオブジェクトの作成または削除を更新するキャッシュの場合、更新には数時間かかることがあります。

  16. オブジェクトを手動で削除するには、Amazon S3 コンソールまたはAWS CLI。

  17. クライアントにマウントされている NFS 共有を表示します。オブジェクトがなくなったことを確認します(キャッシュが更新されたため)。

  18. CloudWatch ログをチェックして、イベントを含む削除のログを確認しますObjectRemoved:Delete

    { u'account': u'MY-ACCOUNT-ID', u'region': u'MY-REGION', u'detail': {}, u'detail-type': u'Scheduled Event', u'source': u'aws.events', u'version': u'0', u'time': u'2018-09-10T03:42:06Z', u'id': u'6468ef77-4db8-0200-82f0-04e16a8c2bdb', u'resources': [u'arn:aws:events:REGION:MY-ACCOUNT-ID:rule/FGw-RefreshCache-CW'] }
    注記

    cron ジョブまたはスケジュールされたタスクの場合、CloudWatch ログイベントはu'detail-type': u'Scheduled Event'

キャッシュを更新すると、更新オペレーションのみが開始されます。キャッシュの更新が完了しても、必ずしもファイルの更新が完了したとは限りません。ゲートウェイのファイル共有で新しいファイルを確認する前にファイルの更新オペレーションが完了したかどうかを判断するには、refresh-complete 通知を使用します。これを行うには、Amazon CloudWatch イベントを介して通知をサブスクライブして、RefreshCache操作が完了します。詳細については、「ファイル操作についての通知を受信する」を参照してください。

ファイルゲートウェイでの S3 オブジェクトロックの使用

ファイルゲートウェイは、Amazon S3 オブジェクトロックが有効になっている S3 バケットへのアクセスをサポートしています。Amazon S3 オブジェクトロックでは、「Write Once Read Many」(WORM) モデルを使用してオブジェクトを保存できます。Amazon S3 オブジェクトロックを使用すると、S3 バケット内のオブジェクトが削除または上書きされるのを防ぐことができます。Amazon S3 オブジェクトロックは、オブジェクトのバージョニングと連携してデータを保護します。

Amazon S3 オブジェクトロックを有効にしても、オブジェクトはまだ変更できます。たとえば、ファイルゲートウェイ上のファイル共有を通じて、ファイルの書き込み、削除、または名前変更を行うことができます。このようにしてオブジェクトを変更すると、ファイルゲートウェイは前のバージョン (つまりロックされたオブジェクト) に影響せずに、オブジェクトの新しいバージョンを配置します。

たとえば、ファイルゲートウェイの NFS または SMB インターフェイスを使用してファイルを削除する場合、対応する S3 オブジェクトがロックされていると、ゲートウェイはオブジェクトの次のバージョンとして S3 削除マーカーを配置し、元のオブジェクトバージョンをそのままにします。同様に、ファイルゲートウェイがロックされたオブジェクトのコンテンツまたはメタデータを変更した場合、そのオブジェクトの新しいバージョンはその変更と共にアップロードされますが、元のロックされたバージョンのオブジェクトは変更されません。

Amazon S3 オブジェクトロックの詳細については、「」を参照してください。S3 オブジェクトロックを使用したオブジェクトのロックAmazon Simple Storage Service 開発者ガイド

ファイル共有の状態について

各ファイル共有には、ファイル共有の状態をわかりやすく示すステータスが関連付けられています。ほとんどの場合、ステータスは、ファイル共有が通常どおり機能していて、お客様による操作は必要ないことを示しています。場合によっては、ステータスによって問題があることが示され、お客様による操作が必要な場合と、必要ない場合があります。

ファイル共有のステータスは、Storage Gateway コンソールに表示されます。ファイル共有のステータスは、ゲートウェイの各ファイル共有の [ステータス] 列に表示されます。通常どおり機能しているファイル共有は、AVAILABLE のステータスになります。

次の表では、各ファイル共有のステータスについての説明と、ステータスにおける対応のタイミングおよびその必要性についてを示しています。ファイル共有の使用中は、常に、またはほとんどの場合 AVAILABLE ステータスです。

ステータス 意味
AVAILABLE

ファイル共有は適切に設定され、使用可能です。AVAILABLE ステータスは、ファイル共有が正常に実行中であることを示すステータスです。

CREATING

ファイル共有は作成中でまだ使用できません。CREATING ステータスは遷移します。アクションは必要ありません。ファイル共有がこのステータスにスタックする場合、ゲートウェイ VM がAWS。

更新中

ファイル共有の設定は更新されています。ファイル共有がこのステータスにスタックする場合、ゲートウェイ VM がAWS。

削除中

ファイル共有は削除中です。ファイル共有は、すべてのデータがアップロードされるまで削除されません。AWS。削除中ステータスは変化するので、アクションは必要ではありません。

FORCE_DELETING

ファイル共有は強制的に削除されます。ファイル共有は、直ちに削除され、AWSは中止されます。FORCE_DELETING ステータスは変化するため、必要なアクションはありません。

使用不可

ファイル共有が異常です。特定の問題により、ファイルの共有が異常な状態になることがあります。たとえば、ロールポリシーのエラーや、存在しない Amazon S3 バケットへのファイル共有のマッピングが、問題として考えられます。異常な状態を引き起こしていた問題が解決すると、ファイルは使用可能な状態に戻ります。

ファイル共有のベストプラクティス

このセクションでは、ファイル共有を作成するためのベストプラクティスについての情報を紹介します。

Amazon S3 バケットへの複数のファイル共有の書き込みを防止する

ファイル共有を作成する際、1 つのファイル共有のみが書き込めるように Amazon S3 バケットを設定することが推奨されます。複数のファイル共有が書き込めるように S3 バケットを設定すると、予期しない結果が発生する場合があります。このような事態を回避するには、バケット内でオブジェクトを追加あるいは削除するファイル共有に使用されるロールを除いたすべてのロールを拒否する S3 バケットポリシーを作成します。そして、このバケットポリシーを S3 バケットにアタッチします。

次のポリシーの例では、S3 バケットに書き込むバケットを作成するロールを除くすべてのロールを拒否しています。s3:DeleteObject および s3:PutObject アクションは、"TestUser" を除くすべてのロールに対して拒否されます。このポリシーは、"arn:aws:s3:::TestBucket/*" バケット内のすべてのオブジェクトに適用されます。

{ "Version":"2012-10-17", "Statement":[ { "Sid":"DenyMultiWrite", "Effect":"Deny", "Principal":"*", "Action":[ "s3:DeleteObject", "s3:PutObject" ], "Resource":"arn:aws:s3:::TestBucket/*", "Condition":{ "StringNotLike":{ "aws:userid":"TestUser:*" } } } ] }

特定の NFS クライアントにファイル共有のマウントを許可する

ファイル共有で付与された NFS クライアントの設定を変更することをお勧めします。変更しない場合、ネットワークのすべてのクライアントがファイル共有をマウントできます。NFS クライアントの設定を編集する方法については、「NFS ファイル共有のアクセス設定の編集」を参照してください。