目次

AWSでCloudFormationスタックを作成する

AWS Lambda でPython 3.6のサポートを終了します。2022年7月18日以降、 Lambda は、セキュリティパッチとアップデートをPython 3.6ランタイムに適用しなくなります。2022年8月17日をもって、Python 3.6ランタイムを使用した関数のアップデートはできなくなります。その結果、

  • スタックをアップデートしない場合でも、 File Storage Security の問題についてサポートおよび調査を行います。ただし、この方法はお勧めしません。
  • File Storage Security の設定で問題が発生した場合は、スタックのアップデートまたは再構築が必要になることがあります。
2022年8月17日までに、既存のPython 3.6関数をPython 3.8にアップグレードすることをお勧めします。

前提条件

  1. (オプション) AWSコマンドラインインタフェース(CLI)をインストールします。すべてのバージョンがサポートされています。
  2. 外部IDを取得する

テンプレートリンクを使用して All-in-one Stack を作成する

  1. AWSでAll-in-one Stackを作成します

    • スタックを配信するAWSアカウントにログインします。
    • このリンクを選択してください:Launch Stack button

      AWS Quick Create Stack ページにリダイレクトされます。

    • S3バケットのをスキャンする領域に対応する AWSリージョン (右上)を選択します。サポートされているリージョンについては、 サポートされているリージョンは何ですか。を参照してください。

    • All-in-one Stackを配信 の指示に従って、必要なフィールド( ExternalID フィールドと CloudOneRegion フィールドを含む)に入力し、スタックを作成します。
  2. スタックの作成が完了したことを確認します

    • CloudFormation > Stacksに移動します。
    • All-in-one Stackとネスト化されたScanner StackとStorage Stackを探します。 3つの スタックすべてが CREATE COMPLETE 状態に達すると、オールインワンスタックが準備されます。

テンプレートリンクを使用して Scanner Stack を作成する

  1. AWSでScanner Stackを作成します

    • このリンクを選択してください:起動スタックボタン

      AWS Quick create stack ページにリダイレクトされます。

    • Scanner Stackの領域に対応する AWSリージョン (右上)を選択します。サポートされているリージョンについては、 どのAmazonリージョンがサポートされていますか?を参照してください。

    • Scanner Stackの追加 の手順に従ってください、必要なフィールド( ExternalID フィールドと CloudOneRegion フィールドを含む)に入力し、スタックを作成します。
  2. スタックの作成が完了したことを確認します

    • CloudFormation > Stacksに移動します。
    • Scanner Stackを探します。完了したら、 CREATE COMPLETE が表示されます。

テンプレートリンクを使用して Storage Stack を作成する

  1. AWSでストレージスタックを作成します

  2. スタックの作成が完了したことを確認します

    • CloudFormation > Stacksに移動します。
    • Storage Stackを探します。完了したら、 CREATE COMPLETE が表示されます。

AWS CLIの使用

AWSCLIを使用して All-in-one Stack を作成する

  1. AWSでAll-in-one Stackを作成します

    • AWS CLIをインストールしたコンピュータのbashやPowerShellなどのプログラムで、次のコマンドを入力してスタックを作成します。
      aws cloudformation create-stack \
          --stack-name ALLINONE-STACK-NAME \
          --region REGION \
          --template-url https://file-storage-security.s3.amazonaws.com/latest/templates/FSS-All-In-One.template \
          --parameters \
              ParameterKey=S3BucketToScan,ParameterValue=S3-BUCKET-TO-SCAN \
              ParameterKey=KMSKeyARNForBucketSSE,ParameterValue=KMS-MASTER-KEY-ARN \
              ParameterKey=KMSKeyARNForQueueSSE,ParameterValue=KMS-MASTER-KEY-ARN-FOR-SQS \
              ParameterKey=CloudOneRegion,ParameterValue=CLOUD-ONE-REGION \
              ParameterKey=ExternalID,ParameterValue=EXTERNAL-ID \
          --capabilities CAPABILITY_NAMED_IAM
      

    ここで...

    • ALLINONE-STACK-NAME スタックの名前で置き換える必要があります。任意の名前を使用できます。 例: FileStorageSecurity-All-In-One
    • REGION スタックをインストールする領域に置き換える必要があります。検索するS3バケットに対応するリージョンを選択します。サポートされているリージョンについては、 どのAmazonリージョンがサポートされていますか?を参照してください。 例: ap-east-2us-west-2
    • S3-BUCKET-TO-SCAN は、S3に表示されているとおりに検索するS3バケットの名前を置き換える必要があります。指定できるバケットは1つのみです。 例: my-s3-bucket-to-scan-01
    • KMS-MASTER-KEY-ARN は、検索するS3バケット内のオブジェクトの暗号化に使用されるKCDマスターキーのARNに置き換える必要があります。S3バケットでSSE-KMSを有効にしていない場合は空白のままにしてください。
    • KMS-MASTER-KEY-ARN-FOR-SQS を、Scanner Stack内のSQSメッセージを暗号化するために使用されるKMSマスターキーのARNに置き換える必要があります。SSE-KMS for SQSを有効にしていない場合は空白のままにしてください。
    • CLOUD-ONE-REGION サポート対象の Cloud One リージョンのいずれかである必要があります。 例: us-1
    • EXTERNAL-ID は、以前に取得したExternalIDで置き換える必要があります。
    • CAPABILITY_NAMED_IAM はそのままにしてください。

    既存の s3:ObjectCreated:* イベント通知があるバケットに配信するには、s3:ObjectCreated:* event in useを参照してください。

    テンプレートによって作成される権限を制御するには、AWS権限の制御を参照してください。

    リソース名のカスタムプレフィックスを指定するには、 リソースプレフィックスを参照してください。

    配信不能キューを備えた Storage Stack を配置するには、Storage Stack DLQを参照してください。

    Lambda関数をVPCにアタッチするには、VPCにデプロイするを参照してください。。

    getObject要求時の検索を有効にするには、getObjectリクエスト時の検索を参照してください。

    使用する値の詳細については、「All-in-one Stackの配信 ページを参照してください。このページには、All-in-one CloudFormationテンプレートのパラメータの説明が含まれています。これらは、CLIのパラメータと同じです。

  2. スタックの作成が完了したことを確認します

    • 次のAWS CLIコマンドを入力します。

      aws cloudformation describe-stacks --stack-name ALLINONE-STACK-NAME --output json --query 'Stacks[0].StackStatus'

      ここで...

      ALLINONE-STACK-NAME はAll-in-one Stackの名前に置き換えられます。

    • スタックの準備が整うと、ステータスは CREATE_COMPLETEになります。

AWSCLIを使用して Scanner Stack を作成する

  1. AWSでScanner Stackを作成します

    • AWS CLIをインストールしたコンピュータのbashやPowerShellなどのプログラムで、次のコマンドを入力してスタックを作成します。
      aws cloudformation create-stack \
          --stack-name SCANNER-STACK-NAME \
          --region REGION \
          --template-url https://file-storage-security.s3.amazonaws.com/latest/templates/FSS-Scanner-Stack.template \
          --parameters \
              ParameterKey=KMSKeyARNForQueueSSE,ParameterValue=KMS-MASTER-KEY-ARN-FOR-SQS \
              ParameterKey=CloudOneRegion,ParameterValue=CLOUD-ONE-REGION \
              ParameterKey=ExternalID,ParameterValue=EXTERNAL-ID \
          --capabilities CAPABILITY_NAMED_IAM
      

    ここで...

    • SCANNER-STACK-NAME スタックの名前で置き換える必要があります。任意の名前を使用できます。 例: FSSScanner2
    • REGION スタックをインストールする領域に置き換える必要があります。 例: ap-east-2us-west-2
    • KMS-MASTER-KEY-ARN-FOR-SQS Scanner StackのSQSメッセージの暗号化に使用するKMSマスターキーのARNに置き換える必要があります。対応する Storage Stackを配置する場合は、同じKMSマスターキーを使用します。SSE-KMS for SQSが有効になっていない場合は空白のままにしてください。
    • CLOUD-ONE-REGION サポート対象の Cloud One リージョンのいずれかである必要があります。 例: us-1
    • EXTERNAL-ID 前に取得したExternalIDで置き換える必要があります。
    • CAPABILITY_NAMED_IAM そのまま残す必要があります。

    テンプレートによって作成される権限を制御するには、AWS権限の制御を参照してください。

    リソース名のカスタムプレフィックスを指定するには、 リソースプレフィックスを参照してください。

    Lambda関数をVPCにアタッチするには、VPCにデプロイするを参照してください。

    使用する値の詳細については、 Scanner Stackの追加 ページを参照してください。このページには、Scanner Stack CloudFormationテンプレートのパラメータの説明が含まれています。これらは、CLIのパラメータと同じです。

  2. スタックの作成が完了したことを確認します

    • 次のAWS CLIコマンドを入力します。

      aws cloudformation describe-stacks --stack-name SCANNER-STACK-NAME --output json --query 'Stacks[0].StackStatus'

      ここで...

      SCANNER-STACK-NAME は、Scanner Stackの名前に置き換えられます。

    • スタックの準備が整うと、ステータスは CREATE_COMPLETEになります。

AWSCLIを使用して Storage Stack を作成する

  1. AWSでStorage Stackを作成します

    • AWS CLIをインストールしたコンピュータのbashやPowerShellなどのプログラムで、次のコマンドを入力してスタックを作成します。
      aws cloudformation create-stack \
          --stack-name STORAGE-STACK-NAME \
          --region REGION \
          --template-url https://file-storage-security.s3.amazonaws.com/latest/templates/FSS-Storage-Stack.template \
          --parameters \
              ParameterKey=S3BucketToScan,ParameterValue=S3-BUCKET-TO-SCAN \
              ParameterKey=KMSKeyARNForBucketSSE,ParameterValue=KMS-MASTER-KEY-ARN \
              ParameterKey=ScannerAWSAccount,ParameterValue=SCANNER-AWS-ACCOUNT \
              ParameterKey=ScannerSQSURL,ParameterValue=SCANNER-QUEUE-URL \
              ParameterKey=KMSKeyARNForQueueSSE,ParameterValue=KMS-MASTER-KEY-ARN-FOR-SQS \
              ParameterKey=CloudOneRegion,ParameterValue=CLOUD-ONE-REGION \
              ParameterKey=ExternalID,ParameterValue=EXTERNAL-ID \
          --capabilities CAPABILITY_NAMED_IAM
      

    ここで...

    • STORAGE-STACK-NAME スタックの名前で置き換える必要があります。任意の名前を使用できます。 例: FSSStorage2
    • REGION スタックをインストールする領域に置き換える必要があります。 例: ap-east-2us-west-2
    • S3-BUCKET-TO-SCAN は、S3に表示されているとおりに 検索するS3バケットの名前を置き換える必要があります。指定できるバケットは1つのみです。 例: my-s3-bucket-to-scan-02
    • KMS-MASTER-KEY-ARN は、 検索するS3バケット内のオブジェクトの暗号化に使用されるKCDマスターキーのARNに置き換える必要があります。S3バケットでSSE-KMSを有効にしていない場合は空白のままにしてください。
    • SCANNER-AWS-ACCOUNT は、Scanner StackがインストールされているAWSアカウントのIDで置き換える必要があります。このIDは、AWSコンソール> [アカウント名]> My Account > Account Idで確認できます。
    • SCANNER-QUEUE-URL は、 SQS ScannerQueue URLに置き換える必要があります。このURLは次のとおりです:

      • AWSコンソールの[CloudFormation]→[Stacks]→[all-in-one]または[ Scanner Stack ]→[Outputs]→[ScannerQueueURL]の順に選択します。
      • AWS CLIを使用して、次のコマンドを入力します。

        aws cloudformation describe-stacks --stack-name STACK-NAME --output json --query 'Stacks[0].Outputs'

        ここで...

        STACK-NAME は、オールインワンまたは Scanner Stackの名前に置き換えられます。

    • KMS-MASTER-KEY-ARN-FOR-SQS Scanner StackのSQSメッセージの暗号化に使用するKMSマスターキーのARNに置き換える必要があります。対応する Scanner Stackで使用したものと同じKMSマスターキーを使用します。SSE-KMS for SQSが有効になっていない場合は空白のままにしてください。

    • CLOUD-ONE-REGION サポート対象の Cloud One リージョンのいずれかである必要があります。 例: us-1
    • EXTERNAL-ID 前に取得したExternalIDで置き換える必要があります。
    • CAPABILITY_NAMED_IAM そのまま残す必要があります。

    既存の s3:ObjectCreated:* イベント通知がある バケット に配信するには、s3:ObjectCreated:* event in useを参照してください。

    テンプレートによって作成される権限を制御するには、AWS権限の制御を参照してください。

    リソース名のカスタムプレフィックスを指定するには、 リソースプレフィックスを参照してください。

    配信不能キューを備えた Storage Stack を配置するには、Storage Stack DLQを参照してください。

    Lambda関数をVPCにアタッチするには、VPCにデプロイするを参照してください。

    getObject要求時の検索を有効にするには、getObjectリクエスト時の検索を参照してください。

    使用する値の詳細については、 Storage Stackの追加 ページを参照してください。このページには、Storage Stack CloudFormationテンプレート内のパラメータの説明が含まれています。これらのパラメータは、CLIのパラメータと同じです。

  2. スタックの作成が完了したことを確認します

    • 次のAWS CLIコマンドを入力します。

      aws cloudformation describe-stacks --stack-name STORAGE-STACK-NAME --output json --query 'Stacks[0].StackStatus'

      ここで...

      STORAGE-STACK-NAME がStorage Stackの名前に置き換えられます。

    • スタックの準備が整うと、ステータスは CREATE_COMPLETEになります。