IBM Cloud Docs
COSターゲットの管理

COSターゲットの管理

IBM Cloud Activity Tracker Event Routing CLI、 IBM Cloud Activity Tracker Event Routing REST API、Terraform スクリプトを使用して、アカウント内の IBM Cloud Object Storage (COS) ターゲットを管理できます。 ターゲットとは、監査イベントを収集できるリソースです。

IBM Cloud Activity Tracker Event Routingターゲットの詳細については、 「ターゲット」 を参照してください。

COSターゲットについて

IBM Cloud Object Storage (COS) ターゲットを使用している場合、複数のリージョンにまたがるアカウントの監査イベントを収集するために、同じ COS バケットを使用できます。 そのシナリオでは、イベントは COS バケットに書き込まれる前にターゲット領域に転送されます。 パフォーマンスを向上させ、ネットワーク待ち時間を削減するために、各リージョンにバケットを定義することを検討できます。

IBM Cloud Object Storage (COS) 内のターゲットを定義する場合は、以下の情報を考慮してください。

  • バケットは任意のロケーションに作成できます。 詳しくは、IBM Cloud Object Storage (COS) バケットの管理を参照してください。

  • 1つのターゲットに設定できるバケットは1つだけです。

  • 規制やコンプライアンス要件がある場合は、バケットを作成できるロケーションを確認してください。 また、パフォーマンスが重要である場合は、監査イベントが生成されるのと同じリージョンに COS バケットを作成することを検討してください。

IAM アクセス権限

ターゲットを管理するには、ユーザーに IAM 権限を付与する必要があります。 詳細については、 「リソースへのアクセスの割り当て」 を参照してください。

ポリシーを定義するときに、権限の範囲を指定できます。 特定の地域またはアカウント全体に対して権限を付与することを選択できます。

ポリシーと承認を作成するための IAM 権限がある場合は、対象サービスのユーザーとして持っているアクセス レベルのみを付与できます。 例えば、対象サービスのビューアアクセスを持っている場合、ビューアロールのみを権限に割り当てることができます。 管理者などの上位の権限を割り当てようとすると、権限が付与されたように見えますが、割り当てられるのは対象サービスに対して持っている最高レベルの権限、つまり閲覧者のみです。

地域スコープを持つユーザーは、許可された地域内のターゲットへのアクセスに制限される。

IAM アクションとそれを含む IAM ロール。
IAM アクション IAM ポリシーのスコープ IAM 役割 説明
atracker.target.read リージョン Administrator
Editor
Viewer
Operator
ターゲットに関する情報の読み取り (表示)
atracker.target.create リージョン Administrator
Editor
ターゲットの作成
atracker.target.update リージョン Administrator
Editor
ターゲットの更新
atracker.target.delete リージョン Administrator
Editor
ターゲットの削除
atracker.target.list アカウント Administrator
Editor
Viewer
Operator
すべてのターゲットのリスト

認証オプション

COS ターゲットへの書き込み時に、以下のオプションを使用して、IBM Cloud Object Storage (COS) バケットに対する認証を行うことができます。

  • service-to-service( S2S )認可を設定する(推奨)。
  • ターゲットの構成時に API キーを指定します。

COS バケットにサービス間許可を構成して、暗号化されたデータを COS バケットに書き込むときに API キー を渡す必要がないようにすることができます。

CLI の前提条件

CLI を使用してターゲットを管理する前に、以下の手順を実行します。

  1. IBM Cloud CLI をインストールします

  2. IBM Cloud Activity Tracker Event Routing CLI をインストールします

  3. IBM Cloud にログインします。 次のコマンドを実行します。 ibmcloud login

COS バケット API 鍵の取得

COS バケット API 鍵の取得については、バケットにアクセスするための API キーの生成を参照してください。

同一アカウント内でUIを使用し、 S2S 認証を設定する

IBM Cloud UI を使用してサービス間許可を構成するには、以下の手順を実行します。

  1. IBM Cloud Activity Tracker Event Routing ターゲットを構成するアカウント所有者として IBM Cloud アカウントにログインします。

    ユーザー ID とパスワードを使用してログインすると、IBM Cloud ダッシュボードが開きます。

  2. 「管理」 > **「アクセス (IAM)」**をクリックします。 アクセスとユーザーの管理 が表示されます。

  3. 「許可」 をクリックします。

  4. 「作成」 をクリックします。

  5. **ソース・サービスでは **Activity Tracker を選択し、「 アクセス範囲をどのように設定しますか? には「 すべてのリソース 」を選択します。

  6. ターゲット・サービスの場合は、Cloud Object Storage を選択します。**どのようにアクセス権限のスコープを設定しますか?**の場合は、選択した属性に基づくリソースを選択します。

  7. サービス・インスタンス および ストリングが等しい COS インスタンスの名前を選択します。

  8. サービス・アクセス の場合は、オブジェクト・ライターを選択します。

  9. 「許可」 をクリックします。 新しいサービス間許可が「許可の管理」ビューにリストされます。

UI を使用して許可できるのは、IBM Cloud Object Storage インスタンスに対してのみです。 許可を特定の IBM Cloud Object Storage バケットに制限する場合は、API を使用して許可を構成する必要があります。

CLI を使用した S2S 認証の設定

IBM Cloud CLI を使用してサービス間許可を構成するには、以下の手順を実行します。

  1. IBM Cloud Activity Tracker Event Routing 許可を構成するアカウント所有者として [IBM Cloud アカウント (/docs/cli?topic=cli-ibmcloud_cli#ibmcloud_login) にログインします。]

  2. サービス間許可を定義する許可ポリシーを作成します。

    ibmcloud iam authorization-policy-create atracker cloud-object-storage "Object Writer" [--target-service-instance-id <COS_SERVICE_INSTANCE>
    

    ここで、

    COS_SERVICE_INSTANCEは、許可される COS インスタンスのバケット・インスタンス CRN です。

API を使用した S2S 認証の設定

IBM Cloud API を使用してサービス間許可を構成するには、以下の手順を実行します。

  1. IBM Cloud Activity Tracker Event Routing IAM 許可を構成するアカウント所有者として IBM Cloud アカウントにログインします。

  2. サービス間許可を定義するauthorization_policy_resource.jsonファイルを作成します。

    {
        "type": "authorization",
        "subjects": [
            {
                "attributes": [
                  {
                       "name": "accountId",
                       "value": "CUSTOMER_ACCOUNT_ID"
                   },
                   {
                        "name": "serviceName",
                        "value": "atracker"
                    }
                ]
            }
        ],
        "roles": [
            {
                "role_id": "crn:v1:bluemix:public:iam::::serviceRole:ObjectWriter"
            }
        ],
        "resources": [
            {
                "attributes": [
                  {
                       "name": "accountId",
                       "value": "CUSTOMER_ACCOUNT_ID"
                   },
                   {
                        "name": "serviceName",
                        "value": "cloud-object-storage"
                    },
                    {
                        "name": "serviceInstance",
                        "value": "COS_SERVICE_INSTANCE"
                    }
                ]
            }
        ]
    }
    

    ここで、

    CUSTOMER_ACCOUNT_IDは、ターゲットを構成するアカウントのアカウント GUID です。 これは、ibmcloud account listコマンドを使用して見つけることができます。

    COS_SERVICE_INSTANCEは、許可される COS インスタンスのバケット・インスタンス CRN です。

  3. IAM アクセス・トークンを取得します。 詳しくは、IAM アクセス・トークンの取得を参照してください。

  4. 以下のコマンドを実行して、サービス間許可を構成します。

    curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header "Authorization: $ACCESS_TOKEN" -d @authorization_policy_resource.json "https://iam.cloud.ibm.com/v1/policies"
    

CLI を使用した COS ターゲットの作成

このコマンドを使用して、アクティビティー・イベントの宛先を構成するために使用する IBM Cloud Object Storage ターゲットを作成します。

 ibmcloud atracker target create --name TARGET_NAME --type TARGET_TYPE ( [--file COS_ENDPOINT_DEFINITION_JSON_FILE] |  ( [--endpoint COS_ENDPOINT] [--bucket COS_BUCKET] [--target-crn COS_TARGET_CRN] ( [--api-key ( COS_API_KEY | @COS_API_KEY_FILE )] |  [--service-to-service-enabled ( TRUE | FALSE )] ) ) ) [--region REGION] [--output FORMAT]

コマンド・オプション

--region REGION | -r REGION

リージョンの名前 (us-southeu-gb など)。 指定しないと、ログインしたリージョン、またはターゲットのリージョンが使用されます。

--name TARGET_NAME

ターゲットに付ける名前。

リソース名に個人識別情報 (PII) を含めないでください。

--type TARGET_TYPE

COS ターゲットの場合は、TARGET_TYPEcloud_object_storageに設定します。

--file @COS_ENDPOINT_DEFINITION_JSON_FILE

以下の形式のエンドポイント定義が入っているファイル

{
  "endpoint": "aaaaa",
  "target_crn": "yyyyy",
  "bucket": "zzzzzz",
  "api_key": "xxxxxx"
}
--endpoint COS_ENDPOINT

IBM Cloud Object Storage バケットに関連付ける IBM Cloud Object Storage エンドポイント。

--bucket BUCKET

ターゲットに関連付ける IBM Cloud Object Storage バケットの名前。

--target-crn COS_TARGET_CRN

IBM Cloud Object Storage インスタンスの CRN。

--api-key COS_API_KEY | @COS_API_KEY_FILE

API キー値、またはアクセス権を取得するために使用される API キー・ファイルへの参照。 例: ibmcloud login --apikey $KEYFILE

--service-to-service-enabled

バケットに対してサービス間許可 (service-to-service authorization) が有効になっているかどうかを示します。 サービス間許可が有効になっている場合はTRUEを指定し、サービス間許可が有効になっていない場合はFALSEを指定します。 デフォルトでは、service_to_service_enabledFALSEです。

--output FORMAT

現在サポートされている形式は JSON です。 指定すると、出力が JSON 形式で返されます。 JSON を指定しない場合は、出力が表形式で返されます。

help | --help | -h

コマンドで使用できるオプションがリストされます。

**ibmcloud atracker target create --name my-target --type cloud_object_storage --endpoint s3.us-west.cloud-object-storage.appdomain.cloud --bucket cloud-object-storage-my-cos --target-crn crn:v1:staging:public:cloud-object-storage:global:a/xxxxxxxxxx:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx:: --api-key yyyyyyyyyyyyyyyyyyyyyyyyyyyyy**コマンドの使用例を以下に示します。

ターゲットの作成が成功した例を以下に示します。

Target
Name:               		my-target
ID:                 		000000000-00000000-0000-0000-00000000
CRN:                		crn:v1:staging:public:atracker:us-south:a/xxxxxxxxxx:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx
Type:               		cloud_object_storage
COS Endpoint:       		s3.us-west.cloud-object-storage.appdomain.cloud
COS Target CRN:     		crn:v1:staging:public:cloud-object-storage:global:a/xxxxxxxxxx:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx:
COS Bucket:         		cloud-object-my-target
Service to Service Enabled:	true
Write Status:   		success
Created:            		2021-07-21T16:04:15.174Z
Updated:            		2021-07-21T16:04:15.174Z

CLI を使用した COS ターゲットの更新

このコマンドは、IBM Cloud Activity Tracker Event Routing 領域の COS ターゲットを更新するために使用します。 ターゲットが最初に作成された時の値とは異なる値をコマンドで指定すると、その値がコマンドの指定値に更新されます。

ibmcloud atracker target update --target TARGET [--name TARGET_NAME] [ [--file COS_ENDPOINT_DEFINITION_JSON_FILE] |  ( [--endpoint COS_ENDPOINT] [--bucket COS_BUCKET] [--target-crn COS_TARGET_CRN] ( [--api-key ( COS_API_KEY | @COS_API_KEY_FILE )] | [--service-to-service-enabled ( TRUE | FALSE )]))] [--output FORMAT]

コマンド・オプション

--target TARGET

ID または現在のターゲット名。

--region REGION | -r REGION

リージョンの名前 (us-southeu-gb など)。 指定しないと、ログインしたリージョン、またはターゲットのリージョンが使用されます。

--name TARGET_NAME

ターゲットに付ける名前。

リソース名に個人識別情報 (PII) を含めないでください。

--file @COS_ENDPOINT_DEFINITION_JSON_FILE

以下の形式のエンドポイント定義が入っているファイル

{
  "endpoint": "aaaaa",
  "target_crn": "yyyyy",
  "bucket": "zzzzzz",
  "api_key": "xxxxxx"
}

または、サービス間認証が有効になっているシナリオの場合は、以下のようにします。

{
  "endpoint": "aaaaa",
  "target_crn": "yyyyy",
  "bucket": "zzzzzz",
  "service_to_service_enabled": true
}
--endpoint COS_ENDPOINT

IBM Cloud Object Storage バケットに関連付ける IBM Cloud Object Storage エンドポイント。

--bucket COS_BUCKET

ターゲットに関連付ける IBM Cloud Object Storage バケットの名前。

--target-crn COS_TARGET_CRN

IBM Cloud Object Storage インスタンスの CRN。

--api-key COS_API_KEY | @COS_API_KEY_FILE

API キー値、またはアクセス権を取得するために使用される API キー・ファイルへの参照。 例: ibmcloud login --apikey $KEYFILE

--service-to-service-enabled (TRUE | FALSE)

バケットに対してサービス間許可 (service-to-service authorization) が有効になっているかどうかを示します。 サービス間許可が有効になっている場合はTRUEを指定し、サービス間許可が有効になっていない場合はFALSEを指定します。 デフォルトでは、サービス間許可はFALSEです。

--output FORMAT

現在サポートされている形式は JSON です。 指定すると、出力が JSON 形式で返されます。 JSON を指定しない場合は、出力が表形式で返されます。

help | --help | -h

コマンドで使用できるオプションがリストされます。

**ibmcloud atracker target update --target my-target --name new-target-name**コマンドの使用例を以下に示します。

Target
Name:               		new-target-name
ID:                 		xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
CRN:               		crn:v1:staging:public:atracker:us-south:a/xxxxxxxxxx:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx
Type:               		cloud_object_storage
COS Endpoint:       		s3.us-west.cloud-object-storage.appdomain.cloud
COS Target CRN:    		crn:v1:staging:public:cloud-object-storage:global:a/xxxxxxxxxx:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx:
COS Bucket:         		cloud-object-my-target
Service to Service Enabled:	true
Write Status:   		success
Created:            		2021-07-21T16:04:15.174Z
Updated:           		2021-07-21T17:49:56.452Z

CLI を使用したターゲットの削除

このコマンドは、ターゲットを削除するために使用します。

ibmcloud atracker target rm --target TARGET [--force]

コマンド・オプション

--target TARGET
ターゲットの ID または名前。
--force | -f
ユーザーに追加のプロンプトを出さずにターゲットを削除します。
help | --help | -h
コマンドで使用できるオプションがリストされます。

**ibmcloud atracker target rm --target xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx**コマンドの使用例を以下に示します。

Are you sure you want to remove the target with target ID xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx? [y/N]>y
OK
Target with target ID xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx was successfully removed.

**ibmcloud atracker target rm --target xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -force**コマンドの使用例を以下に示します。

以下は、指定のターゲットが見つからずにコマンドが失敗する例です。

Are you sure you want to remove the Target bearing Target ID 33333333-3333-3333-3333-333333333333? [y/N]> y
FAILED
Something went wrong. Error:
 Status Code:  404
 Incident ID:  67a33257-d5a4-46ec-94d9-14eb70e94f3d
 Code:         not_found
 Message:      The target id specified in `target_id` field is not found.

CLI を使用したターゲットの検証

このコマンドを使用して、IBM Cloud Activity Tracker Event Routing リージョンのターゲットが正しく構成されていることを確認します。

ibmcloud atracker target validate --target TARGET [--region REGION] [--output FORMAT]

コマンド・オプション

--target TARGET
ターゲットの ID または名前。
--region REGION | -r REGION
リージョンの名前 (us-southeu-gb など)。 指定しないと、ログインしたリージョン、またはターゲットのリージョンが使用されます。
--output FORMAT
現在サポートされている形式は JSON です。 指定すると、出力が JSON 形式で返されます。 JSON を指定しない場合は、出力が表形式で返されます。
help | --help | -h
コマンドで使用できるオプションがリストされます。

**ibmcloud atracker target validate --target new-target-name**コマンドの使用例を以下に示します。

この例は、正常に検証された COS ターゲットを示しています。

Target
Name:               		new-target-name
ID:                 		xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
CRN:               		crn:v1:staging:public:atracker:us-south:a/xxxxxxxxxx:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx
Type:               		cloud_object_storage
COS Endpoint:       		s3.us-west.cloud-object-storage.appdomain.cloud
COS Target CRN:     		crn:v1:staging:public:cloud-object-storage:global:a/xxxxxxxxxx:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx:
COS Bucket:         		cloud-object-my-target
Service to Service Enabled:	true
Write Status:   		success
Created:            		2021-07-21T16:04:15.174Z
Updated:           		2021-07-21T17:49:56.452Z

CLI を使用したターゲットに関する情報の取得

このコマンドを使用して、IBM Cloud Activity Tracker Event Routing リージョンのターゲットに関する情報を取得します。

ibmcloud atracker target get --target TARGET [--output FORMAT]

コマンド・オプション

--target TARGET
ターゲットの ID または名前。
--output FORMAT
現在サポートされている形式は JSON です。 指定すると、出力が JSON 形式で返されます。 JSON を指定しない場合は、出力が表形式で返されます。
help | --help | -h
コマンドで使用できるオプションがリストされます。

COS ターゲットを示す**ibmcloud atracker target get --target new-target-name**コマンドの使用例を以下に示します。

Target
Name:               		new-target-name
ID:                 		xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
CRN:               		crn:v1:staging:public:atracker:us-south:a/xxxxxxxxxx:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx
Type:               		cloud_object_storage
COS Endpoint:      		s3.us-west.cloud-object-storage.appdomain.cloud
COS Target CRN:     		crn:v1:staging:public:cloud-object-storage:global:a/xxxxxxxxxx:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx:
COS Bucket:         		cloud-object-my-target
Service to Service Enabled:	true
Write Status:   		success
Created:           		2021-07-21T16:04:15.174Z
Updated:            		2021-07-21T17:49:56.452Z

リージョン内のすべてのターゲットのリスト

このコマンドを使用して、IBM Cloud Activity Tracker Event Routing リージョンの構成済みターゲットを表示します。

ibmcloud atracker target ls [--output FORMAT]

コマンド・オプション

--output FORMAT
現在サポートされている形式は JSON です。 指定すると、出力が JSON 形式で返されます。 JSON を指定しない場合は、出力が表形式で返されます。
help | --help | -h
コマンドで使用できるオプションがリストされます。

**ibmcloud atracker target ls**コマンドの使用例を以下に示します。

Name                       ID                                     Region     Type                     Service to Service Enabled	Created
target-01                  xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx   us-south    cloud_object_storage    true				2020-11-18T03:52:08.603Z
target-02                  yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy   us-south    cloud_object_storage    true				2020-11-18T03:52:01.592Z
target-02-backup           zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz   us-east     cloud_object_storage    false				2021-02-26T06:53:13.466Z

API のターゲットとアクション

次の表は、ターゲットを管理するために実行できるアクションのリストです。

IBM Cloud Activity Tracker Event Routing REST API を使用してアクションをターゲットする
アクション REST API メソッド API_URL
ターゲットの作成 POST <ENDPOINT>/api/v2/targets
ターゲットの更新 PUT <ENDPOINT>/api/v2/targets/<TARGET_ID>
ターゲットの削除 DELETE <ENDPOINT>/api/v2/targets/<TARGET_ID>
ターゲットの読み取り GET <ENDPOINT>/api/v2/targets/<TARGET_ID>
すべてのターゲットのリスト GET <ENDPOINT>/api/v2/targets
ターゲットの検証 POST <ENDPOINT>/api/v2/targets/{id}/validate

プライベート・エンドポイントとパブリック・エンドポイントを使用してターゲットを管理することができます。 使用可能な ENDPOINTS のリストについて詳しくは、エンドポイントを参照してください。

  • https://private.REGION.atracker.cloud.ibm.comという形式の API エンドポイントを使用して、プライベート・ネットワークからターゲットを管理できます。

  • https://REGION.atracker.cloud.ibm.comという形式の API エンドポイントを使用して、パブリック・ネットワークからターゲットを管理できます。

  • アカウント設定を更新することで、パブリック・エンドポイントを無効にすることができます。 詳しくは、ターゲットとリージョンの設定の構成を参照してください。

REST API について詳しくは、ターゲットを参照してください。

API の前提条件

ターゲットを管理するための API 呼び出しを行うには、以下のステップを実行します。

  1. IAM アクセス・トークンを取得します。 詳しくは、IAM アクセス・トークンの取得を参照してください。
  2. ターゲットを構成または管理する予定のリージョン内の API エンドポイントを特定します。 詳しくは、エンドポイントを参照してください。

API を使用した COS ターゲットの作成

以下の cURL コマンドを使用して、IBM Cloud Object Storage (COS) ターゲットを作成できます。

curl -X POST  <ENDPOINT>/api/v2/targets   -H "Authorization:  $ACCESS_TOKEN"   -H "content-type: application/json"   -d '{
    "name": "TARGET_NAME",
    "target_type": "cloud_object_storage",
    "cos_endpoint": {
      "endpoint": "PRIVATE_COS_ENDPOINT",
      "target_crn": "COS_CRN",
      "bucket": "BUCKET_NAME",
      "api_key": "API_KEY",
      "service_to_service_enabled": SERVICE_TO_SERVICE
    }
  }'

説明

  • <ENDPOINT>は、ターゲットを構成または管理する予定の地域の API エンドポイントです。 詳しくは、エンドポイントを参照してください。

  • TARGET_NAME は、ターゲットの名前です。 この名前の最大長は 256 文字です。

    リソース名に個人識別情報 (PII) を含めないでください。

  • TARGET_TYPE は、ターゲットのタイプです。 有効なタイプはcloud_object_storageです。

  • cos_endpointには、ターゲットに関する情報が含まれます。 バケットの詳細を取得する方法について詳しくは、バケット構成の詳細の取得を参照してください。

    PRIVATE_COS_ENDPOINTは、このバケットを検索する IBM Cloud Activity Tracker Event Routing エンドポイントを示します。 プライベート・エンドポイントを使用します。

    COS_CRNは、バケットをプロビジョンした COS インスタンスの CRN を示します。

    BUCKET_NAMEバケットの名前を示します。

    API_KEYバケットにオブジェクトをアップロードする許可を持つ API キーが含まれています。 service_to_service_enabledtrueの場合、この値は無視されます。

    SERVICE_TO_SERVICEは、バケットに対してサービス間許可が有効になっているかどうかを示します。 サービス間許可が有効になっている場合はtrueを指定し、サービス間許可が有効になっていない場合はfalseを指定します。 デフォルトでは、サービス間許可はfalseです。

例えば、次の cURL 要求を使用して、ダラスにターゲットを作成できます。

curl -X POST   https://private.us-south.atracker.cloud.ibm.com/api/v2/targets   -H "Authorization:  $ACCESS_TOKEN"   -H "content-type: application/json"   -d '{
    "name": "My COS target",
    "target_type": "cloud_object_storage",
    "cos_endpoint": {
      "endpoint": "s3.private.us-south.cloud-object-storage.appdomain.cloud",
      "target_crn": "crn:v1:bluemix:public:cloud-object-storage:global:a/<account-id>:<instance-id>::",
      "bucket": "my-activity-tracking-bucket",
      "api_key": "xxxxxxxxxxxxxxxxxx",
      "service_to_service_enabled": false
    }
  }'

応答では、ターゲットの GUID を示す id やターゲットの CRN を示す crn など、ターゲットに関する情報が得られます。

API を使用した COS ターゲットの更新

IBM Cloud Object Storage (COS) ターゲットを更新する場合は、要求のデータ・セクションにターゲット情報を含める必要があります。

  • すべてのフィールドを渡す必要があります。
  • 変更する必要があるフィールドを更新します。
  • 作成したターゲットのtarget_typeを変更することはできません。

以下の cURL コマンドを使用して、ターゲットを更新できます。

curl -X PUT  <ENDPOINT>/api/v2/targets/TARGET_ID  -H "Authorization:  $ACCESS_TOKEN"   -H "content-type: application/json"   -d '{
    "name": "TARGET_NAME",
    "target_type": "TARGET_TYPE",
    "cos_endpoint": {
      "endpoint": "PRIVATE_COS_ENDPOINT",
      "target_crn": "COS_CRN",
      "bucket": "BUCKET_NAME",
      "api_key": "API_KEY",
      "service_to_service_enabled": SERVICE_TO_SERVICE
    }
  }'

説明

  • <ENDPOINT>は、ターゲットを構成または管理する予定の地域の API エンドポイントです。 詳しくは、エンドポイントを参照してください。

  • TARGET_IDはターゲットの ID です。

  • TARGET_NAME は、ターゲットの名前です。 この名前の最大長は 256 文字です。

    リソース名に個人識別情報 (PII) を含めないでください。

  • TARGET_TYPE は、ターゲットのタイプです。 COS ターゲットの場合、値をcloud_object_storageに設定します。

  • cos_endpointには、ターゲットに関する情報が含まれます。 バケットの詳細を取得する方法について詳しくは、バケット構成の詳細の取得を参照してください。

    PRIVATE_COS_ENDPOINTは、このバケットを検索する IBM Cloud Activity Tracker Event Routing エンドポイントを示します。 プライベート・エンドポイントを使用します。

    COS_CRNは、バケットをプロビジョンした COS インスタンスの CRN を示します。

    BUCKET_NAMEバケットの名前を示します。

    API_KEYバケットにオブジェクトをアップロードする許可を持つ API キーが含まれています。 service_to_service_enabledtrueの場合、この値は無視されます。

    SERVICE_TO_SERVICEは、バケットに対してサービス間許可が有効になっているかどうかを示します。 サービス間許可が有効になっている場合はtrueを指定し、サービス間許可が有効になっていない場合はfalseを指定します。 デフォルトでは、サービス間許可はfalseです。

例えば、次の cURL 要求を使用して、ダラスにターゲットを作成できます。

curl -X PUT   https://private.us-south.atracker.cloud.ibm.com/api/v2/targets   -H "Authorization:  $ACCESS_TOKEN"   -H "content-type: application/json"   -d '{
    "name": "My COS target",
    "target_type": "cloud_object_storage",
    "cos_endpoint": {
      "endpoint": "s3.private.us-south.cloud-object-storage.appdomain.cloud",
      "target_crn": "crn:v1:bluemix:public:cloud-object-storage:global:a/<account-id>:<instance-id>::",
      "bucket": "my-activity-tracking-bucket",
      "service_to_service_enabled": true
    }
  }'

API を使用したターゲットの削除

以下の cURL コマンドを使用して、ターゲットを削除できます。

curl -X DELETE <ENDPOINT>/api/v2/targets/<TARGET_ID> -H "Authorization:  $ACCESS_TOKEN" -H "content-type: application/json"

説明

  • <ENDPOINT>は、ターゲットを構成または管理する予定の地域の API エンドポイントです。 詳しくは、エンドポイントを参照してください。
  • <TARGET_ID>はターゲットの ID です。

例えば、以下の cURL 要求を使用して、00000000-0000-0000-0000-000000000000という ID を持つ米国南部のターゲットを削除できます。

curl -X DELETE https://private.us-south.atracker.cloud.ibm.com/api/v2/targets/00000000-0000-0000-0000-000000000000 -H "Authorization: $ACCESS_TOKEN" -H "content-type: application/json"

削除が成功した場合、応答で空の結果が返されます。

{}

API を使用したターゲットの検証

以下の cURL コマンドを使用して、ターゲットに書き込む資格情報をチェックすることにより、ターゲットを検証できます。

curl -X POST <ENDPOINT>/api/v2/targets/<TARGET_ID>/validate -H "Authorization: $ACCESS_TOKEN" -H "content-type: application/json"

説明

  • <ENDPOINT>は、ターゲットを構成または管理する予定の地域の API エンドポイントです。 詳しくは、エンドポイントを参照してください。
  • <TARGET_ID>はターゲットの ID です。

例えば、以下の cURL 要求を使用して、ID 00000000-0000-0000-0000-000000000000を持つ米国南部のターゲットを検証できます。

curl -X POST https://private.us-south.atracker.cloud.ibm.com/api/v2/targets/<TARGETID>/validate -H "Authorization: $ACCESS_TOKEN" -H "content-type: application/json"

応答では、次の例のように、cos_write_status セクションに情報が生成されます。

"write_status": {
    "status": "success"
  },

API を使用したターゲットの表示

次の cURL コマンドを使用して、1 つのターゲットの構成の詳細を表示することができます。

curl -X GET <ENDPOINT>/api/v2/targets/<TARGET_ID> -H "Authorization: $ACCESS_TOKEN" -H "content-type: application/json"

説明

  • <ENDPOINT>は、ターゲットを構成または管理する予定の地域の API エンドポイントです。 詳しくは、エンドポイントを参照してください。
  • <TARGET_ID>はターゲットの ID です。

例えば、以下の cURL 要求を実行して、ID 00000000-0000-0000-0000-000000000000のターゲットに関する情報を取得できます。

curl -X GET https://private.us-south.atracker.cloud.ibm.com/api/v2/targets/00000000-0000-0000-0000-000000000000 -H "Authorization: $ACCESS_TOKEN" -H "content-type: application/json"

結果はターゲットがCOS ("target_type": "cloud_object_storage")であるかどうかを示します。

API を使用したすべてのターゲットのリスト表示

次の cURL コマンドを使用して、すべてのターゲットを表示できます。

curl -X GET <ENDPOINT>/api/v2/targets -H "Authorization: $ACCESS_TOKEN" -H "content-type: application/json"

説明

  • <ENDPOINT>は、ターゲットを構成または管理する予定の地域の API エンドポイントです。 詳しくは、エンドポイントを参照してください。

例えば、以下の cURL 要求を実行して、ダラスで定義されているターゲットに関する情報を取得できます。

curl -X GET https://private.us-south.atracker.cloud.ibm.com/api/v2/targets -H "Authorization:  $ACCESS_TOKEN" -H "content-type: application/json"

結果は、ターゲットがCOS ("target_type": "cloud_object_storage") ターゲットであるかどうかを示します。

HTTP 応答コード

IBM Cloud Activity Tracker Event Routing REST API を使用すると、メソッドが正常に完了したかどうかを示す標準 HTTP 応答コードを取得できます。

  • 200 応答は、どのような場合でも成功を示しています。
  • 4xx 応答は、失敗を示しています。
  • 5xx 応答は通常、内部システム・エラーを示しています。

いくつかの HTTP 応答コードについては、以下の表を参照してください。

HTTP 応答コード一覧
状況コード ステータス 説明
200 OK 要求は正常に終了しました。
201 OK 要求は正常に終了しました。 リソースが作成されます。
400 誤った要求 要求は失敗しました。 必要なパラメーターが欠落している可能性があります。
401 無許可 API 要求で使用されている IAM トークンは無効であるか、有効期限が切れています。
403 禁止 権限が不十分なため、操作は禁止されました。
404 見つかりません 要求されたリソースは存在しないか、既に削除されています。
429 要求が多すぎる API に到達する要求の数が多すぎるうえに各要求の間隔が短すぎます。
500 内部サーバー・エラー IBM Cloud Activity Tracker Event Routing の処理で何らかの問題が発生しました。

UI を使用してIBM Cloud Object Storageターゲットを作成する

アカウント内のリソースのみがリストされ、選択可能になります。 別のアカウントのリソースを指定するには、 [宛先の選択] で [CRN の指定] を選択します。

  1. IBM Cloudアカウントにログインします
  2. 「メニュー」 アイコン 「メニュー」アイコン > **「可観測性」**をクリックします。
  3. **「Activity Tracker」**を選択します。
  4. ルーティングを選択します。
  5. ターゲットを選択する。
  6. **[作成] ** をクリックして作成パネルを開きます。
  7. タイプを選択:Object Storage をクリックします。
  8. サービス認証が必要です: IBM Cloud Activity Tracker Event RoutingがIBM Cloud Object Storageと通信できるようにするには、サービス認証が必要です。 「今すぐ承認」 をクリックしてポリシーを自動的に作成するか、 「IAM でアクセスを許可」 をクリックします。
  9. 宛先を選択:インスタンスで検索するか、 CRN を指定してください
    • インスタンスで検索: テーブルからIBM Cloud Object Storageインスタンスを選択するか、 [作成] をクリックして新しいIBM Cloud Object Storageインスタンスを作成します。 インスタンスを選択したら、 IBM Cloud Object Storageバケットを選択します。
    • CRN を指定: IBM Cloud Object Storageバケットのクラウド リソース名 (CRN) を入力します。 これにより、別のアカウントから CRN を入力できるようになります。
  • バケット エンドポイント: デフォルトのバケット エンドポイントを使用するか、変更します。
  • ターゲット名: ターゲットに意味のある名前を入力します。
  • 対象リージョン: イベント データを処理するリージョンを選択します。
  • 「デフォルトのターゲットとして設定」 を切り替えると、新しいターゲットがIBM Cloud Activity Tracker Event Routing設定のデフォルトのターゲットとして自動的に設定されます。 詳細については、デフォルトのターゲットのドキュメント を参照してください。
  • [ターゲットの作成] をクリックします。

UI を使用してIBM Cloud Object Storageターゲットを更新する

アカウント内のリソースのみがリストされ、選択可能になります。 別のアカウントのリソースを指定するには、 [宛先の選択] で [CRN の指定] を選択します。

  1. IBM Cloudアカウントにログインします
  2. 「メニュー」 アイコン 「メニュー」アイコン > **「可観測性」**をクリックします。
  3. **「Activity Tracker」**を選択します。
  4. ルーティングを選択します。
  5. ターゲットを選択する。
  6. 更新するターゲットを決定し、アクション アイコン をクリックします。
  7. IBM Cloud Activity Tracker Event Routing設定でターゲットをデフォルト ターゲットとして削除するには、 [デフォルトとして設定解除] をクリックします。 詳細については、デフォルトのターゲットのドキュメント を参照してください。
  8. 編集をクリックして更新パネルを開きます。
  9. 詳細: ターゲットの名前または地域を更新するには、 **[編集] ** をクリックします。 また、デフォルトのターゲットを切り替えて、 IBM Cloud Activity Tracker Event Routing設定でターゲットをデフォルトのターゲットとして追加または削除することもできます。
  10. ターゲットを更新するには、 [保存] をクリックします。
  11. 宛先:編集をクリックして、ターゲットに関連付けられているIBM Cloud Object Storageインスタンスまたはバケットを変更します。
  12. ターゲットを更新するには、 [保存] をクリックします。

UIを使用したターゲットの削除

IBM Cloud Activity Tracker Event Routingターゲットがルートで使用されている場合、またはデフォルトのターゲット設定として使用されている場合、そのターゲットを削除することはできません。

  1. IBM Cloudアカウントにログインします
  2. 「メニュー」 アイコン 「メニュー」アイコン > **「可観測性」**をクリックします。
  3. **「Activity Tracker」**を選択します。
  4. ルーティングを選択します。
  5. ターゲットを選択する。
  6. 削除するターゲットを決定し、アクション アイコン をクリックします。
  7. [削除] をクリックし、確認パネルで [削除] をクリックします。

UIを使用してリージョン内のすべてのターゲットをリストする

  1. IBM Cloudアカウントにログインします
  2. 「メニュー」 アイコン 「メニュー」アイコン > **「可観測性」**をクリックします。
  3. **「Activity Tracker」**を選択します。
  4. ルーティングを選択します。
  5. ターゲットを選択する。

表の詳細:

  • ターゲット・タイプ
  • 宛先名
  • 宛先リージョン
  • ルート: いずれかのルートで使用される場合
  • ターゲットのステータス
    • アクティブ: ターゲットは期待通りに動作しています
    • エラー: ターゲットが誤って構成されているため、イベントは宛先にルーティングされません。 ターゲットの詳細または宛先を更新してターゲット構成を修正するか、不要になった場合はターゲットを削除します。