推奨事項 親トピック

APIを使用する前に、 File Storage Security およびAWSのWebインタフェースを使用してスタックの配置を実行することをお勧めします。Webインタフェースを使用すると、配置パラメータ、概念、プロセスに対するユーザフレンドリーな紹介が可能になります。
Webインターフェイスを通じてデプロイする手順については、開始するを参照してください。

前提条件 親トピック

手順

  1. (オプション) AWS コマンドラインインターフェイス (CLI) をインストール。すべてのバージョンがサポートされています。
  2. スタックを作成
  3. APIキーを作成
  4. リクエストを実行するたびに、ヘッダ内の認証とAPIバージョンが必要になります。
    • Authorization Header
      • Trend Micro Cloud One APIキーの場合:
        • キー: Authorization
        • 値: ApiKey <your api key value>
      • 従来のAPIキー(非推奨):
        • キー: api-secret-key
        • 値: <your api key value>
    • APIバージョンヘッダ:
      • キー: api-version
      • 値: v1

次に進む前に

Trend Micro Cloud One APIキーの例:
GET /api/external-id HTTP/1.1
Authorization: ApiKey YOUR-API-KEY
Api-Version: v1
従来のAPIキーの例:
GET /api/filestorage/external-id HTTP/1.1
api-secret-key: YOUR-API-KEY
Api-Version: v1
ここで、YOUR-API-KEY は以前に生成したAPIキーに置き換えられます。
APIキーが有効な場合、APIコールは許可されます。そうでない場合は、403コードが返されます。

APIを使用してAll-in-one Stackを配信する 親トピック

All-in-one Stackをデプロイするには:

手順

  1. [Obtain the ARNs of the scanner and storage stacks]
    • オプション1 - AWSコンソールから:
      • [CloudFormation][Stacks] > All-in-one Stack > [Outputs] に移動します。
      • [ScannerStackManagementRoleARN][StorageStackManagementRoleARN]の値に注意してください。
    • オプション2 - AWS CLIを介して:
      • 次のAWS CLIコマンドを入力します。
      aws cloudformation describe-stacks --stack-name ALLINONE-STACK-NAME --output json --query 'Stacks[0].Outputs'
      どこに...
      ALLINONE-STACK-NAME はAll-in-one Stackの名前に置き換えられます。
      • コマンド出力で、ScannerStackManagementRoleARN および StorageStackManagementRoleARN の出力値をメモしておきます。
        		{
        			"OutputKey": "ScannerStackManagementRoleARN",
        			"OutputValue": "arn:aws:iam::123456789012:role/FileStorageSecurity-All-In-One-Stac-ManagementRole-EWQZVJ9M19R6",
        			"Description": "The ARN of the IAM role for File Storage Security backend services to manage the deployed resources."
        		},
        		{
        			"OutputKey": "StorageStackManagementRoleARN",
        			"OutputValue": "arn:aws:iam::123456789012:role/FileStorageSecurity-All-In-One-Stac-ManagementRole-17O6WHFHH59YY",
        			"Description": "The ARN of the IAM role for File Storage Security backend services to manage the deployed resources."
        		},
        
  2. [Add the scanner and storage stacks to File Storage Security]
    まず、Scanner Stackを追加します。
    • Create Stackを呼び出し、リクエスト本文にScannerStackManagementRoleARNの出力値を含めます。
      Scanner Stackの作成が開始されます。
    • API応答の stackID をメモしておきます。これは、Scanner StackのIDです。
    • Describe Stack を呼び出し、前の手順でメモした Scanner Stack の stackID を使用して、レスポンス本文 の statusok になるまで呼び出しを続けます。
      これで、Scanner Stackが追加されました。
    Storage Stackを追加します。
    • Create Stackを呼び出し、以前に記録したScannerスタックstackIDおよびstorageスタックStorageStackManagementRoleARNの出力値をリクエスト本文に含めます。
    Storage Stackの作成が開始されます。
    • APIレスポンスの stackID をメモしておきます。それはStorage StackのIDです。
    • 前の手順でメモしたStorage StackのstackIDを使用してDescribe Stackを呼び出し、レスポンス本文のstatusokになるまで呼び出しを続けます。
    注意
    注意
    スタックは個別に追加する必要があり、前述のようにStorage Stackの前にScanner Stackを追加する必要があります。

APIを使用してScanner Stackを配信する 親トピック

Scanner Stackをデプロイするには:

手順

  1. [Obtain the ARN of the scanner stack]
    • オプション1 - AWSコンソールから:
      • [CloudFormation][Stacks] > Scanner Stack > [Outputs] に移動します。
      • [ScannerStackManagementRoleARN]の出力値に注意してください。
    • オプション2 - AWS CLIを介して:
      • 次のAWS CLIコマンドを入力します。
        aws cloudformation describe-stacks --stack-name SCANNER-STACK-NAME --output json --query 'Stacks[0].Outputs'
        どこに...
        SCANNER-STACK-NAME はScanner Stackの名前に置き換えられます。
        • コマンド出力で、ScannerStackManagementRoleARN 出力値をメモしておきます。
          		{
          			"OutputKey": "ScannerStackManagementRoleARN",
          			"OutputValue": "arn:aws:iam::123456789012:role/FileStorageSecurity-Scanner-Stack-ManagementRole-17O6WHFHH59YY",
          			"Description": "The ARN of the IAM role for File Storage Security backend services to manage the deployed resources."
          		},
          
        • (任意) コマンド出力で、 ScannerLambdaAliasARN 出力値をメモしておきます。
          		{
          			"OutputKey": "ScannerLambdaAliasARN",
          			"OutputValue": "arn:aws:lambda:us-east-1:123456789012:function:FileStorageSecurity-Scanner-Stack-ScannerLambda-I9ni6ZtjUyuD:TM-FSS-MANAGED"
          		},
          
  2. [Add the scanner stack to File Storage Security]
    • Create Stackを呼び出し、リクエスト本文にScannerスタックのScannerStackManagementRoleARN出力値を含めます。
      Scanner Stackの作成が開始されます。
    • APIレスポンスの stackID をメモしておきます。これは、Scanner StackのIDです。
    • Describe Stack を呼び出し、前の手順でメモした Scanner Stack の stackID を使用して、レスポンス本文 の statusok になるまで呼び出しを続けます。
      これで、Scanner Stackが追加されました。
  3. [(Optional) Update KMS key policy if enabling ScanResultTopic SNS encryption]
    • [You only need to do this step if you deploy the storage stack in a different AWS account from the scanner stack.]
    • 次のAWS CLIコマンドを入力します。
      aws kms get-key-policy --key-id KMS-MASTER-KEY-ARN-FOR-SNS --policy-name default --output text > key-policy.json
      どこに...
      KMS-MASTER-KEY-ARN-FOR-SNS は、SNS ScanResultTopicの暗号化に使用されるKMSキーのARNに置き換えられます。
    • key-policy.jsonを編集し、新しい [Statement] オブジェクトを挿入します。
      	{
      		"Sid": "Grant Scanner permission",
      		"Effect": "Allow",
      		"Principal": {
      			"AWS": <ScannerExecutionRoleARN>
      		},
      		"Action": [
      			"kms:Decrypt",
      			"kms:GenerateDataKey"
      		],
      		"Resource": "*"
      	}
      
      どこに...
      ScannerExecutionRoleARN Scanner Stackで、scannerExecutionRoleのARNに置き換えられます。
    • 次のAWS CLIコマンドを入力します。
      aws kms put-key-policy --key-id KMS-MASTER-KEY-ARN-FOR-SNS --policy-name default --policy file://key-policy.json
      KMS-MASTER-KEY-ARN-FOR-SNS は、SNS ScanResultTopicの暗号化に使用されるKMSキーのARNに置き換えられます。

APIを使用してアカウントScanner Stackをデプロイする 親トピック

アカウントScanner Stackを配信するには

手順

  1. [Obtain the ARN of the scanner stack]
    • オプション1 - AWSコンソールから:
      • [CloudFormation][Stacks] > Scanner Stack > [Outputs] に移動します。
      • [AccountScannerStackManagementRoleARN]の出力値に注意してください。
    • オプション2 - AWS CLIを介して:
      • 次のAWS CLIコマンドを入力します。
        aws cloudformation describe-stacks --stack-name SCANNER-STACK-NAME --output json --query 'Stacks[0].Outputs'
        どこに...
        SCANNER-STACK-NAME はScanner Stackの名前に置き換えられます。
        • コマンド出力で、AccountScannerStackManagementRoleARN の出力値を書き留めます。
            	{
            		"OutputKey": "AccountScannerStackManagementRoleARN",
            		"OutputValue": "arn:aws:iam::123456789012:role/FileStorageSecurity-Scanner-Stack-ManagementRole-17O6WHFHH59YY",
            		"Description": "The ARN of the IAM role for File Storage Security backend services to manage the deployed resources."
            	},
            
  2. [Add the scanner stack to File Storage Security]
    • Create Stackを呼び出し、リクエスト本文にScannerスタックAccountScannerStackManagementRoleARNの出力値を含めます。
      Scanner Stackの作成が開始されます。
    • APIレスポンスの stackID をメモします。これは、アカウントScannerスタックのIDです。
    • 前の手順でメモしたアカウント Scanner Stack の stackID を使用して Describe Stack を呼び出し、レスポンス本文の statusok になるまで呼び出しを続けます。
      これで、アカウントScanner Stackが追加されました。

APIを使用してStorage Stackを配信する 親トピック

Storage Stackをデプロイするには:

手順

  1. [Obtain the ARN of the storage stack]
    • オプション1 - AWSコンソールから:
      • [CloudFormation][Stacks] > Storage Stack > [Outputs] に移動します。
      • [StorageStackManagementRoleARN]の出力値に注意してください。
      • (オプション) [BucketListenerRoleARN] の出力値をメモしておきます。
    • オプション2 - AWS CLIを介して:
      • 次のAWS CLIコマンドを入力します。
        aws cloudformation describe-stacks --stack-name STORAGE-STACK-NAME --output json --query 'Stacks[0].Outputs'
        どこに...
        STORAGE-STACK-NAME がStorage Stackの名前に置き換えられました。
      • コマンド出力で、 StorageStackManagementRoleARN 出力値をメモしておきます。
          	{
          		"OutputKey": "StorageStackManagementRoleARN",
          		"OutputValue": "arn:aws:iam::123456789012:role/FileStorageSecurity-All-In-One-Stac-ManagementRole-17O6WHFHH59YY",
          		"Description": "The ARN of the IAM role for File Storage Security backend services to manage the deployed resources."
          	},
          
      • (任意) コマンド出力で、BucketListenerRoleARN 出力値をメモしておきます。
          	{
          		"OutputKey": "BucketListenerRoleARN",
          		"OutputValue": "arn:aws:iam::123456789012:role/FileStorageSecurity-All-In-One-BucketListenerExecutionR-5RKPKU3L3P3C"
          	},
          
  2. [Add the storage stack to File Storage Security]
    • List Stacksを呼び出してScannerスタックのstackIDを取得します。
    • Create Stackを呼び出し、リクエスト本文にscannerスタックstackIDstorageスタックStorageStackManagementRoleARNの出力値を含めます。
      Storage Stackの作成が開始されます。
    • APIレスポンスの stackID をメモしておきます。それはStorage StackのIDです。
    • 前の手順でメモしたStorage StackのstackIDを使用してDescribe Stackを呼び出し、レスポンス本文のstatusokになるまで呼び出しを続けます。
      Storage Stackが追加されました。
  3. [(Optional) Update KMS key policy if enabling scanner queue encryption]
    • [You only need this step if you deploy the storage stack in a different AWS account from the scanner stack. And you also want to enable server-side encryption for SQS queues.]
    • 次のAWS CLIコマンドを入力します。
      aws kms get-key-policy --key-id KMS-MASTER-KEY-ARN-FOR-SQS --policy-name default --output text > key-policy.json
      どこに...
      KMS-MASTER-KEY-ARN-FOR-SQS SQS暗号化を使用して、KMSキーのARNに置き換えられます。
    • key-policy.jsonを編集し、新しい [Statement] オブジェクトを挿入します。
      	{
      		"Sid": "Grant bucketListener permission",
      		"Effect": "Allow",
      		"Principal": {
      			"AWS": <BucketListenerRoleARN>
      		},
      		"Action": [
      			"kms:Decrypt",
      			"kms:GenerateDataKey"
      		],
      		"Resource": "*"
      	}
      
      どこに...
      BucketListenerRoleARN Storage Stack内のbucketListenerのARNに置き換えられます。
    • 次のAWS CLIコマンドを入力します。
      aws kms put-key-policy --key-id KMS-MASTER-KEY-ARN-FOR-SQS --policy-name default --policy file://key-policy.json
      KMS-MASTER-KEY-ARN-FOR-SQS SQS暗号化を使用して、KMSキーのARNに置き換えられます。