COS 대상 관리
IBM Cloud Activity Tracker Event Routing (COS) 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개만 구성할 수 있습니다.
-
규정 및 준수 요구사항이 있는 경우 버킷을 작성할 수 있는 위치를 확인하십시오. 그런 다음 성능이 중요한 경우 감사 이벤트가 생성되는 동일한 지역에 COS 버킷을 작성하는 것을 고려하십시오.
IAM 액세스
사용자에게 대상을 관리할 수 있는 IAM 권한을 부여해야 합니다. 자세한 정보는 리소스에 대한 액세스 지정 을 참조하십시오.
정책을 정의할 때 권한의 범위를 표시할 수 있습니다. 특정 지역 또는 전체 계정에 대한 권한을 부여하도록 선택할 수 있습니다.
정책 및 권한 부여를 만들 수 있는 IAM 권한이 있는 경우 대상 서비스의 사용자로서 보유한 액세스 수준만 부여할 수 있습니다. 예를 들어, 대상 서비스에 대한 ‘조회자’ 권한이 있는 경우, 권한 부여 시 ‘조회자’ 역할만 할당할 수 있습니다. 관리자 등의 상위 권한을 할당하려고 하면 권한이 부여된 것처럼 보일 수 있지만 대상 서비스에 대한 가장 높은 수준의 권한, 즉 보기 권한만 할당됩니다.
지역별 접근 권한을 가진 사용자는 승인된 지역 내 대상에만 접근할 수 있습니다.
| IAM 조치 | IAM 정책 범위 | IAM 역할 | 설명 |
|---|---|---|---|
atracker.target.read |
지역 | AdministratorEditorViewerOperator |
대상에 대한 정보 읽기(보기) |
atracker.target.create |
지역 | AdministratorEditor |
대상 작성 |
atracker.target.update |
지역 | AdministratorEditor |
대상 업데이트 |
atracker.target.delete |
지역 | AdministratorEditor |
대상 삭제 |
atracker.target.list |
계정 | AdministratorEditorViewerOperator |
모든 대상 나열 |
인증 옵션
COS 대상에 기록 시에, 다음의 옵션을 사용하여 IBM Cloud Object Storage(COS) 버킷을 인증할 수 있습니다.
- serviconfigre-to-service( S2S ) 인증을 구성하여(권장).
- 대상의 구성 시에 API 키를 제공하여.
COS 버킷에 대해 서비스 대 서비스 권한을 구성할 수 있으므로, 암호화된 데이터를 COS 버킷에 기록할 때 API 키를 전달할 필요가 없습니다.
CLI 전제조건
CLI를 사용하여 대상을 관리하기 전에 다음 단계를 완료하십시오.
-
IBM Cloud CLI를 설치하십시오.
-
IBM Cloud에 로그인하십시오. ibmcloud login 명령을 실행하십시오.
COS 버킷 API 키를 가져와서.
COS 버켓 API 키 가져오기에 대한 정보는 버킷 액세스를 위한 API 키 생성을 참조하십시오.
동일한 계정 내에서 UI를 사용하여 S2S 인증 구성하기
IBM Cloud UI를 사용하여 서비스 대 서비스 권한을 구성하려면 다음을 수행하십시오.
-
IBM Cloud Activity Tracker Event Routing 대상을 구성할 계정 소유자로 IBM Cloud 계정에 로그인하십시오.
사용자 ID와 비밀번호로 로그인하면 IBM Cloud 대시보드가 열립니다.
-
‘관리’를 클릭하세요 > 액세스(IAM). ‘액세스 및 사용자 관리 ’ 화면이 표시됩니다.
-
권한을 클릭하십시오.
-
작성을 클릭하십시오.
-
소스 서비스 에서 다음을 선택하세요 Activity Tracker 그리고 '접근 범위를 어떻게 설정하시겠습니까? '에서 '모든 리소스'를 선택하십시오.
-
대상 서비스의 경우 Cloud Object Storage를 선택하고, 액세스 범위의 지정 방법의 경우 선택된 속성에 기반한 자원을 선택하십시오.
-
서비스 인스턴스를 선택하십시오. 문자열은 COS 인스턴스의 이름과 동일합니다.
-
서비스 액세스의 경우 오브젝트 작성자를 선택하십시오.
-
권한 부여를 클릭하십시오. 새 서비스 대 서비스 권한이 인증 관리 보기에 나열됩니다.
UI를 사용하여 IBM Cloud Object Storage 인스턴스에 대해서만 권한을 부여할 수 있습니다. 특정 IBM Cloud Object Storage 버킷으로 권한을 제한하려면 API를 사용하여 권한을 구성해야 합니다.
CLI를 사용하여 S2S 인증 구성하기
IBM Cloud CLI를 사용하여 서비스 대 서비스 권한을 구성하려면 다음을 수행하십시오.
-
IBM Cloud Activity Tracker Event Routing 권한을 구성할 계정 소유자로 IBM Cloud 계정에 로그인하십시오.
-
서비스 대 서비스 권한을 정의하는 권한 정책을 작성하십시오.
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를 사용하여 서비스 대 서비스 권한을 구성하려면 다음을 수행하십시오.
-
IBM Cloud Activity Tracker Event Routing IAM 권한을 구성할 계정 소유자로 IBM Cloud 계정에 로그인하십시오.
-
서비스 대 서비스 권한을 정의하는
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입니다. -
IAM 액세스 토큰을 가져오십시오. 자세한 정보는 IAM 액세스 토큰 검색을 참조하십시오.
-
다음의 명령을 실행하여 서비스 대 서비스 권한을 구성하십시오.
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-south또는eu-gb). 지정되지 않은 경우 로그인하거나 대상으로 지정된 지역이 사용됩니다. --name TARGET_NAME-
대상에 지정되는 이름입니다.
자원 이름에 개인 식별 정보(PII)를 포함하지 마십시오.
--type TARGET_TYPE-
COS 대상에 대해
TARGET_TYPE을(를)cloud_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-
서비스 대 서비스 권한이 버킷에 대해 사용 가능한지 여부를 표시합니다. 서비스 대 서비스 권한이 사용 가능하면
TRUE, 서비스 대 서비스 권한이 사용 불가능하면FALSE을(를) 지정하십시오. 기본적으로service_to_service_enabled은(는)FALSE입니다. --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-south또는eu-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)-
서비스 대 서비스 권한이 버킷에 대해 사용 가능한지 여부를 표시합니다. 서비스 대 서비스 권한이 사용 가능하면
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-south또는eu-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 대상 및 조치
다음 표에는 대상을 관리하기 위해 실행할 수 있는 조치가 나열되어 있습니다.
| 조치 | 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 목록에 대한 자세한 정보는 엔드포인트를 참조하십시오.
-
다음 형식의 API 엔드포인트를 사용하여 사설 네트워크에서 대상을 관리할 수 있습니다.
https://private.REGION.atracker.cloud.ibm.com -
다음 형식의 API 엔드포인트를 사용하여 공용 네트워크에서 대상을 관리할 수 있습니다.
https://REGION.atracker.cloud.ibm.com -
계정 설정을 업데이트하여 공용 엔드포인트를 사용 안함으로 설정할 수 있습니다. 자세한 정보는 대상 및 지역 설정 구성을 참조하십시오.
REST API에 대한 자세한 정보는 대상을 참조하십시오.
API 전제조건
대상을 관리하는 API 호출을 수행하려면 다음 단계를 완료하십시오.
- IAM 액세스 토큰을 가져오십시오. 자세한 정보는 IAM 액세스 토큰 검색을 참조하십시오.
- 대상을 구성하거나 관리할 지역에서 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_enabled이(가) true인 경우 이 값은 무시됩니다.
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_enabled이(가) true인 경우 이 값은 무시됩니다.
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 요청을 사용하여 ID가 00000000-0000-0000-0000-000000000000인 미국 남부의 대상을 삭제할 수 있습니다.
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 응답 코드는 다음 표를 참조하십시오.
| 상태 코드 | 상태 | 설명 |
|---|---|---|
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 지정 을 선택하십시오.
- IBM Cloud 계정에 로그인하십시오.
- 메뉴 아이콘을 클릭하세요.
> 가시성.
- '활동 추적'을 선택하세요.
- ‘생성’을 클릭하여 생성 패널을 엽니다.
- 유형 선택: Object Storage 를 클릭하십시오.
- 서비스 권한 필요: IBM Cloud Activity Tracker Event Routing 이 IBM Cloud Object Storage과 통신할 수 있도록 허용하려면 서비스 권한이 필요합니다. 지금 권한 부여 를 클릭하여 정책을 자동으로 작성하거나 IAM에서 액세스 부여를 클릭하십시오.
- 목적지 선택: 인스턴스별 검색 또는 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 지정 을 선택하십시오.
- IBM Cloud 계정에 로그인하십시오.
- 메뉴 아이콘을 클릭하세요.
> 가시성.
- '활동 추적'을 선택하세요.
- 업데이트할 대상을 지정하고
을 클릭합니다.
- 기본값으로 설정 해제 를 클릭하여 IBM Cloud Activity Tracker Event Routing 설정에서 기본 대상으로 대상을 제거하십시오. 자세한 내용은 기본 대상 문서 를 참조하십시오.
- 편집 을 클릭하여 업데이트 패널을 여십시오.
- 세부사항: 편집 을 클릭하여 대상의 이름 또는 지역을 업데이트하십시오. 기본 대상 을 토글하여 IBM Cloud Activity Tracker Event Routing 설정에서 기본 대상으로 대상을 추가하거나 제거할 수도 있습니다.
- 저장 을 클릭하여 대상을 업데이트하십시오.
- 대상: 편집 을 클릭하여 대상과 연관된 IBM Cloud Object Storage 인스턴스 또는 버킷을 변경하십시오.
- 저장 을 클릭하여 대상을 업데이트하십시오.
UI를 사용하여 대상 삭제하기
IBM Cloud Activity Tracker Event Routing 대상이 경로에 사용되거나 기본 대상 설정으로 지정된 경우, 해당 대상을 삭제할 수 없습니다.
- IBM Cloud 계정에 로그인하십시오.
- 메뉴 아이콘을 클릭하세요.
> 가시성.
- '활동 추적'을 선택하세요.
- 삭제할 대상을 판별하고
를 클릭하십시오.
- 삭제 를 클릭한 후 확인 패널에서 삭제 를 클릭하십시오.
UI를 사용하여 특정 영역 내의 모든 대상을 나열하기
- IBM Cloud 계정에 로그인하십시오.
- 메뉴 아이콘을 클릭하세요.
> 가시성.
- '활동 추적'을 선택하세요.
이 표에는 대상에 대한 세부 정보가 나열되어 있습니다:
- 대상 유형
- 대상 이름
- 대상 지역
- 라우트: 임의의 라우트에서 사용되는 경우
- 목표 상태:
- 활성: 대상이 예상대로 작동 중입니다.
- 오류: 대상의 비용이 잘못 구성되어 이벤트가 대상으로 라우팅되지 않습니다. 대상 세부사항 또는 대상을 업데이트하여 대상 구성을 수정하거나 더 이상 필요하지 않은 경우 대상을 삭제하십시오.