AWS CLI를 사용한 AWS RAM 예시 - AWS Command Line Interface

AWS CLI를 사용한 AWS RAM 예시

다음 코드 예시에서는 AWS RAM에서 AWS Command Line Interface를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여줍니다.

작업은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 관련 시나리오의 컨텍스트에 따라 표시되며, 개별 서비스 함수를 직접적으로 호출하는 방법을 보여줍니다.

각 예시에는 전체 소스 코드에 대한 링크가 포함되어 있으며, 여기에서 컨텍스트에 맞춰 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있습니다.

주제

작업

다음 코드 예시에서는 accept-resource-share-invitation의 사용 방법을 보여줍니다.

AWS CLI

리소스 공유 초대 수락

다음 accept-resource-share-invitation 예시에서는 지정된 리소스 공유 초대를 수락합니다. 초대된 계정의 위탁자는 공유에서 리소스를 즉시 사용할 수 있습니다.

aws ram accept-resource-share-invitation \ --resource-share-invitation-arn arn:aws:ram:us-west-2:111111111111:resource-share-invitation/1e3477be-4a95-46b4-bbe0-c4001EXAMPLE

출력:

{ "resourceShareInvitation": { "resourceShareInvitationArn": "arn:aws:ram:us-west-2:111111111111:resource-share-invitation/1e3477be-4a95-46b4-bbe0-c4001EXAMPLE", "resourceShareName": "MyLicenseShare", "resourceShareArn": "arn:aws:ram:us-west-2:111111111111:resource-share/27d09b4b-5e12-41d1-a4f2-19dedEXAMPLE", "senderAccountId": "111111111111", "receiverAccountId": "222222222222", "invitationTimestamp": "2021-09-22T15:07:35.620000-07:00", "status": "ACCEPTED" } }

다음 코드 예시에서는 associate-resource-share-permission의 사용 방법을 보여줍니다.

AWS CLI

리소스 공유에 RAM 관리형 권한 연결

다음 associate-resource-share-permission 예시에서는 관련 리소스 유형에 대한 기존 관리형 권한을 지정된 관리형 권한으로 바꿉니다. 관련 리소스 유형의 모든 리소스에 대한 액세스에는 새 권한이 적용됩니다.

aws ram associate-resource-share-permission \ --permission-arn arn:aws:ram::aws:permission/AWSRAMPermissionGlueDatabaseReadWrite \ --replace \ --resource-share-arn arn:aws:ram:us-west-2:123456789012:resource-share/27d09b4b-5e12-41d1-a4f2-19dedEXAMPLE

출력:

{ "returnValue": true }

다음 코드 예시에서는 associate-resource-share의 사용 방법을 보여줍니다.

AWS CLI

예시 1: 리소스 공유에 리소스 연결

다음 associate-resource-share 예시에서는 지정된 리소스 공유에 라이선스 구성을 추가합니다.

aws ram associate-resource-share \ --resource-share arn:aws:ram:us-west-2:123456789012:resource-share/27d09b4b-5e12-41d1-a4f2-19dedEXAMPLE \ --resource-arns arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-36be0485f5ae379cc74cf8e92EXAMPLE

출력:

{ "resourceShareAssociations": [ { "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/27d09b4b-5e12-41d1-a4f2-19dedEXAMPLE", "associatedEntity": "arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-36be0485f5ae379cc74cf8e92EXAMPLE", "associationType": "RESOURCE", "status": "ASSOCIATING", "external": false } ] }

예시 2: 리소스 공유에 위탁자 연결

다음 associate-resource-share 예시에서는 지정된 리소스 공유에 대한 액세스 권한을 지정된 조직 단위의 모든 계정에 부여합니다.

aws ram associate-resource-share \ --resource-share-arn arn:aws:ram:us-west-2:123456789012:resource-share/27d09b4b-5e12-41d1-a4f2-19dedEXAMPLE \ --principals arn:aws:organizations::123456789012:ou/o-63bEXAMPLE/ou-46xi-rEXAMPLE

출력:

{ "resourceShareAssociations": [ { "status": "ASSOCIATING", "associationType": "PRINCIPAL", "associatedEntity": "arn:aws:organizations::123456789012:ou/o-63bEXAMPLE/ou-46xi-rEXAMPLE", "external": false, "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/27d09b4b-5e12-41d1-a4f2-19dedEXAMPLE" } ] }

다음 코드 예시에서는 create-resource-share의 사용 방법을 보여줍니다.

AWS CLI

예시 1: 리소스 공유 생성

다음 create-resource-share 예시에서는 지정된 이름으로 빈 리소스 공유를 생성합니다. 공유에 리소스, 위탁자 및 권한을 별도로 추가해야 합니다.

aws ram create-resource-share \ --name MyNewResourceShare

출력:

{ "resourceShare": { "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/4476c27d-8feb-4b21-afe9-7de23EXAMPLE", "name": "MyNewResourceShare", "owningAccountId": "123456789012", "allowExternalPrincipals": true, "status": "ACTIVE", "creationTime": 1634586271.302, "lastUpdatedTime": 1634586271.302 } }

예시 2: AWS 계정을 위탁자로 사용하여 리소스 공유 생성

다음 create-resource-share 예시에서는 리소스 공유를 생성하고 지정된 AWS 계정(222222222222)에 대한 액세스 권한을 부여합니다. 지정된 위탁자가 동일한 AWS 조직에 속하지 않은 경우 초대가 전송되며 액세스 권한이 부여되기 전에 수락되어야 합니다.

aws ram create-resource-share \ --name MyNewResourceShare \ --principals 222222222222

예시 3: AWS 조직으로 제한된 리소스 공유 생성

다음 create-resource-share 예시에서는 계정이 멤버로 속한 AWS 조직의 계정으로 제한된 리소스 공유를 생성하고 지정된 OU를 위탁자로 추가합니다. 해당 OU의 모든 계정은 리소스 공유의 리소스를 사용할 수 있습니다.

aws ram create-resource-share \ --name MyNewResourceShare \ --no-allow-external-principals \ --principals arn:aws:organizations::123456789012:ou/o-63bEXAMPLE/ou-46xi-rEXAMPLE

출력:

{ "resourceShare": { "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/7be8694e-095c-41ca-9ce8-7be4aEXAMPLE", "name": "MyNewResourceShare", "owningAccountId": "123456789012", "allowExternalPrincipals": false, "status": "ACTIVE", "creationTime": 1634587042.49, "lastUpdatedTime": 1634587042.49 } }

다음 코드 예시에서는 delete-resource-share의 사용 방법을 보여줍니다.

AWS CLI

리소스 공유 삭제

다음 delete-resource-share 예시에서는 지정된 리소스 공유를 삭제합니다.

aws ram delete-resource-share \ --resource-share-arn arn:aws:ram:us-west-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE

다음 출력은 성공을 나타냅니다.

{ "returnValue": true }

다음 코드 예시에서는 disassociate-resource-share-permission의 사용 방법을 보여줍니다.

AWS CLI

리소스 공유에서 리소스 유형에 대한 RAM 관리형 권한 제거

다음 disassociate-resource-share-permission 예시에서는 지정된 리소스 공유에서 Glue 데이터베이스에 대한 RAM 관리형 권한을 제거합니다.

aws ram disassociate-resource-share-permission \ --resource-share-arn arn:aws:ram:us-west-2:123456789012:resource-share/27d09b4b-5e12-41d1-a4f2-19dedEXAMPLE \ --permission-arn arn:aws:ram::aws:permission/AWSRAMPermissionGlueDatabaseReadWrite

출력:

{ "returnValue": true }

다음 코드 예시에서는 disassociate-resource-share의 사용 방법을 보여줍니다.

AWS CLI

리소스 공유에서 리소스 제거

다음 disassociate-resource-share 예시에서는 지정된 리소스 공유에서 지정된 리소스, 이 경우 VPC 서브넷을 제거합니다. 리소스 공유에 액세스할 수 있는 위탁자는 더 이상 해당 리소스에 대한 작업을 수행할 수 없습니다.

aws ram disassociate-resource-share \ --resource-arns arn:aws:ec2:us-west-2:123456789012:subnet/subnet-0250c25a1fEXAMPLE \ --resource-share-arn arn:aws:ram:us-west-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE

출력:

{ "resourceShareAssociations": [ "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE", "associatedEntity": "arn:aws:ec2:us-west-2:123456789012:subnet/subnet-0250c25a1fEXAMPLE", "associationType": "RESOURCE", "status": "DISASSOCIATING", "external": false ] }

다음 코드 예시에서는 enable-sharing-with-aws-organization의 사용 방법을 보여줍니다.

AWS CLI

AWS 조직에서 리소스 공유 활성화

다음 enable-sharing-with-aws-organization 예시에서는 조직 및 조직 단위에서 리소스 공유를 활성화합니다.

aws ram enable-sharing-with-aws-organization

다음 출력은 성공을 나타냅니다.

{ "returnValue": true }

다음 코드 예시에서는 get-permission의 사용 방법을 보여줍니다.

AWS CLI

RAM 관리형 권한의 세부 정보 가져오기

다음 get-permission 예시에서는 지정된 RAM 관리형 권한의 기본 버전에 대한 세부 정보를 표시합니다.

aws ram get-permission \ --permission-arn arn:aws:ram::aws:permission/AWSRAMPermissionGlueTableReadWriteForDatabase

출력:

{ "permission": { "arn": "arn:aws:ram::aws:permission/AWSRAMPermissionGlueTableReadWriteForDatabase", "version": "2", "defaultVersion": true, "name": "AWSRAMPermissionGlueTableReadWriteForDatabase", "resourceType": "glue:Database", "permission": "{\"Effect\":\"Allow\",\"Action\":[\"glue:GetTable\", \"glue:UpdateTable\", \"glue:DeleteTable\", \"glue:BatchDeleteTable\", \"glue:BatchDeleteTableVersion\", \"glue:GetTableVersion\", \"glue:GetTableVersions\", \"glue:GetPartition\", \"glue:GetPartitions\", \"glue:BatchGetPartition\", \"glue:BatchCreatePartition\", \"glue:CreatePartition\", \"glue:UpdatePartition\", \"glue:BatchDeletePartition\", \"glue:DeletePartition\", \"glue:GetTables\", \"glue:SearchTables\"]}", "creationTime": 1624912434.431, "lastUpdatedTime": 1624912434.431, "isResourceTypeDefault": false } }
  • API 세부 정보는 AWS CLI 명령 참조GetPermission을 참조하세요.

다음 코드 예시에서는 get-resource-policies의 사용 방법을 보여줍니다.

AWS CLI

리소스 정책 가져오기

다음 get-resource-policies 예시에서는 리소스 공유에 연결된 지정된 리소스에 대한 리소스 기반 권한 정책을 표시합니다.

aws ram get-resource-policies \ --resource-arns arn:aws:ec2:us-west-2:123456789012:subnet/subnet-0250c25a1fEXAMPLE

출력:

{ "policies": [ "{\"Version\":\"2008-10-17\",\"Statement\":[{\"Sid\":\"RamStatement1\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":[]},\"Action\":[\"ec2:RunInstances\",\"ec2:CreateNetworkInterface\",\"ec2:DescribeSubnets\"],\"Resource\":\"arn:aws:ec2:us-west-2:123456789012:subnet/subnet-0250c25a1fEXAMPLE\"}]}" ] }

다음 코드 예시에서는 get-resource-share-associations의 사용 방법을 보여줍니다.

AWS CLI

예시 1: 모든 리소스 유형에 대한 모든 리소스 연결 나열

다음 get-resource-share-associations 예시에서는 모든 리소스 공유의 모든 리소스 유형에 대한 리소스 연결을 나열합니다.

aws ram get-resource-share-associations \ --association-type RESOURCE

출력:

{ "resourceShareAssociations": [ { "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE", "associatedEntity": "arn:aws:ec2:us-west-2:123456789012:subnet/subnet-0250c25a1fEXAMPLE", "resourceShareName": "MySubnetShare", "associationType": "RESOURCE", "status": "ASSOCIATED", "creationTime": 1565303590.973, "lastUpdatedTime": 1565303591.695, "external": false }, { "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/8167bdfe-4480-4a01-8632-315e0EXAMPLE", "associatedEntity": "arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-36be0485f5ae379cc74cf8e92EXAMPLE", "resourceShareName": "MyLicenseShare", "associationType": "RESOURCE", "status": "ASSOCIATED", "creationTime": 1632342958.457, "lastUpdatedTime": 1632342958.907, "external": false } ] }

예시 2: 리소스 공유에 대한 위탁자 연결 나열

다음 get-resource-share-associations 예시에서는 지정된 리소스 공유에 대한 위탁자 연결만 나열합니다.

aws ram get-resource-share-associations \ --resource-share-arns arn:aws:ram:us-west-2:123456789012:resource-share/7be8694e-095c-41ca-9ce8-7be4aEXAMPLE \ --association-type PRINCIPAL

출력:

{ "resourceShareAssociations": [ { "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/7be8694e-095c-41ca-9ce8-7be4aEXAMPLE", "resourceShareName": "MyNewResourceShare", "associatedEntity": "arn:aws:organizations::123456789012:ou/o-63bEXAMPLE/ou-46xi-rEXAMPLE", "associationType": "PRINCIPAL", "status": "ASSOCIATED", "creationTime": 1634587042.49, "lastUpdatedTime": 1634587044.291, "external": false } ] }

다음 코드 예시에서는 get-resource-share-invitations의 사용 방법을 보여줍니다.

AWS CLI

리소스 공유 초대 나열

다음 get-resource-share-invitations 예시에서는 현재 리소스 공유 초대를 나열합니다.

aws ram get-resource-share-invitations

출력:

{ "resourceShareInvitations": [ { "resourceShareInvitationArn": "arn:aws:ram:us-west2-1:111111111111:resource-share-invitation/32b639f0-14b8-7e8f-55ea-e6117EXAMPLE", "resourceShareName": "project-resource-share", "resourceShareArn": "arn:aws:ram:us-west-2:111111111111:resource-share/fcb639f0-1449-4744-35bc-a983fEXAMPLE", "senderAccountId": "111111111111", "receiverAccountId": "222222222222", "invitationTimestamp": 1565312166.258, "status": "PENDING" } ] }

다음 코드 예시에서는 get-resource-shares의 사용 방법을 보여줍니다.

AWS CLI

예시 1: 자신이 소유한 리소스 공유를 나열하고 다른 사용자와 공유

다음 get-resource-shares 예시에서는 자신이 생성하고 다른 사용자와 공유하는 리소스 공유를 나열합니다.

aws ram get-resource-shares \ --resource-owner SELF

출력:

{ "resourceShares": [ { "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/3ab63985-99d9-1cd2-7d24-75e93EXAMPLE", "name": "my-resource-share", "owningAccountId": "123456789012", "allowExternalPrincipals": false, "status": "ACTIVE", "tags": [ { "key": "project", "value": "lima" } ] "creationTime": 1565295733.282, "lastUpdatedTime": 1565295733.282 }, { "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE", "name": "my-resource-share", "owningAccountId": "123456789012", "allowExternalPrincipals": true, "status": "ACTIVE", "creationTime": 1565295733.282, "lastUpdatedTime": 1565295733.282 } ] }

예시 2: 다른 사용자가 소유하고 자신에게 공유된 리소스 공유 나열

다음 get-resource-shares 예시에서는 다른 사용자가 생성하고 자신에게 공유된 리소스 공유를 나열합니다. 이 예시에서는 아무것도 없습니다.

aws ram get-resource-shares \ --resource-owner OTHER-ACCOUNTS

출력:

{ "resourceShares": [] }
  • API 세부 정보는 AWS CLI 명령 참조GetResourceShares를 참조하세요.

다음 코드 예시에서는 list-pending-invitation-resources의 사용 방법을 보여줍니다.

AWS CLI

보류 중인 리소스 공유에서 사용할 수 있는 리소스 나열

다음 list-pending-invitation-resources 예시에서는 지정된 초대에 연결된 리소스 공유에 있는 모든 리소스를 나열합니다.

aws ram list-pending-invitation-resources \ --resource-share-invitation-arn arn:aws:ram:us-west-2:123456789012:resource-share-invitation/1e3477be-4a95-46b4-bbe0-c4001EXAMPLE

출력:

{ "resources": [ { "arn": "arn:aws:ec2:us-west-2:123456789012:subnet/subnet-04a555b0e6EXAMPLE", "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/7be8694e-095c-41ca-9ce8-7be4aEXAMPLE", "creationTime": 1634676051.269, "lastUpdatedTime": 1634676052.07, "status": "AVAILABLE", "type": "ec2:Subnet" }, { "arn": "arn:aws:license-manager:us-west-2:123456789012:license-configuration:lic-36be0485f5ae379cc74cf8e92EXAMPLE", "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE", "creationTime": 1624912434.431, "lastUpdatedTime": 1624912434.431, "status": "AVAILABLE", "type": "license-manager:LicenseConfiguration" } ] }

다음 코드 예시에서는 list-permissions의 사용 방법을 보여줍니다.

AWS CLI

사용 가능한 RAM 관리형 권한 나열

다음 list-permissions 예시에서는 AWS Glue 데이터베이스 리소스 유형에만 사용할 수 있는 모든 RAM 관리형 권한을 나열합니다.

aws ram list-permissions \ --resource-type glue:Database

출력:

{ "permissions": [ { "arn": "arn:aws:ram::aws:permission/AWSRAMDefaultPermissionGlueDatabase", "version": "1", "defaultVersion": true, "name": "AWSRAMDefaultPermissionGlueDatabase", "resourceType": "glue:Database", "creationTime": 1592007820.935, "lastUpdatedTime": 1592007820.935, "isResourceTypeDefault": true }, { "arn": "arn:aws:ram::aws:permission/AWSRAMPermissionGlueAllTablesReadWriteForDatabase", "version": "2", "defaultVersion": true, "name": "AWSRAMPermissionGlueAllTablesReadWriteForDatabase", "resourceType": "glue:Database", "creationTime": 1624912413.323, "lastUpdatedTime": 1624912413.323, "isResourceTypeDefault": false }, { "arn": "arn:aws:ram::aws:permission/AWSRAMPermissionGlueDatabaseReadWrite", "version": "2", "defaultVersion": true, "name": "AWSRAMPermissionGlueDatabaseReadWrite", "resourceType": "glue:Database", "creationTime": 1624912417.4, "lastUpdatedTime": 1624912417.4, "isResourceTypeDefault": false }, { "arn": "arn:aws:ram::aws:permission/AWSRAMPermissionGlueTableReadWriteForDatabase", "version": "2", "defaultVersion": true, "name": "AWSRAMPermissionGlueTableReadWriteForDatabase", "resourceType": "glue:Database", "creationTime": 1624912434.431, "lastUpdatedTime": 1624912434.431, "isResourceTypeDefault": false } ] }

다음 list-permissions 예시에서는 모든 리소스 유형에 사용 가능한 RAM 관리형 권한을 표시합니다.

aws ram list-permissions

출력:

{ "permissions": [ { "arn": "arn:aws:ram::aws:permission/AWSRAMBlankEndEntityCertificateAPICSRPassthroughIssuanceCertificateAuthority", "version": "1", "defaultVersion": true, "name": "AWSRAMBlankEndEntityCertificateAPICSRPassthroughIssuanceCertificateAuthority", "resourceType": "acm-pca:CertificateAuthority", "creationTime": 1623264861.085, "lastUpdatedTime": 1623264861.085, "isResourceTypeDefault": false }, { "arn": "arn:aws:ram::aws:permission/AWSRAMDefaultPermissionAppMesh", "version": "1", "defaultVersion": true, "name": "AWSRAMDefaultPermissionAppMesh", "resourceType": "appmesh:Mesh", "creationTime": 1589307188.584, "lastUpdatedTime": 1589307188.584, "isResourceTypeDefault": true }, ...TRUNCATED FOR BREVITY... { "arn": "arn:aws:ram::aws:permission/AWSRAMSubordinateCACertificatePathLen0IssuanceCertificateAuthority", "version": "1", "defaultVersion": true, "name": "AWSRAMSubordinateCACertificatePathLen0IssuanceCertificateAuthority", "resourceType": "acm-pca:CertificateAuthority", "creationTime": 1623264876.75, "lastUpdatedTime": 1623264876.75, "isResourceTypeDefault": false } ] }
  • API 세부 정보는 AWS CLI 명령 참조ListPermissions를 참조하세요.

다음 코드 예시에서는 list-principals의 사용 방법을 보여줍니다.

AWS CLI

리소스에 액세스할 수 있는 위탁자 나열

다음 list-principals 예시에서는 모든 리소스 공유를 통해 지정된 유형의 리소스에 액세스할 수 있는 위탁자 목록을 표시합니다.

aws ram list-principals \ --resource-type ec2:Subnet

출력:

{ "principals": [ { "id": "arn:aws:organizations::123456789012:ou/o-gx7EXAMPLE/ou-29c5-zEXAMPLE", "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE", "creationTime": 1565298209.737, "lastUpdatedTime": 1565298211.019, "external": false } ] }
  • API 세부 정보는 AWS CLI 명령 참조ListPrincipals를 참조하세요.

다음 코드 예시에서는 list-resource-share-permissions의 사용 방법을 보여줍니다.

AWS CLI

리소스 공유에 현재 연결된 모든 RAM 관리형 권한 나열

다음 list-resource-share-permissions 예시에서는 지정된 리소스 공유에 연결된 모든 RAM 관리형 권한을 나열합니다.

aws ram list-resource-share-permissions \ --resource-share-arn arn:aws:ram:us-west-2:123456789012:resource-share/27d09b4b-5e12-41d1-a4f2-19dedEXAMPLE

출력:

{ "permissions": [ { "arn": "arn:aws:ram::aws:permission/AWSRAMDefaultPermissionLicenseConfiguration", "version": "1", "resourceType": "license-manager:LicenseConfiguration", "status": "ASSOCIATED", "lastUpdatedTime": 1632342984.234 }, { "arn": "arn:aws:ram::aws:permission/AWSRAMPermissionGlueDatabaseReadWrite", "version": "2", "resourceType": "glue:Database", "status": "ASSOCIATED", "lastUpdatedTime": 1632512462.297 } ] }

다음 코드 예시에서는 list-resource-types의 사용 방법을 보여줍니다.

AWS CLI

AWS RAM에서 지원하는 리소스 유형 나열

다음 list-resource-types 예시에서는 현재 AWS RAM에서 지원하는 모든 리소스 유형을 나열합니다.

aws ram list-resource-types

출력:

{ "resourceTypes": [ { "resourceType": "route53resolver:FirewallRuleGroup", "serviceName": "route53resolver" }, { "resourceType": "ec2:LocalGatewayRouteTable", "serviceName": "ec2" }, ...OUTPUT TRUNCATED FOR BREVITY... { "resourceType": "ec2:Subnet", "serviceName": "ec2" }, { "resourceType": "ec2:TransitGatewayMulticastDomain", "serviceName": "ec2" } ] }
  • API 세부 정보는 AWS CLI 명령 참조ListResourceTypes를 참조하세요.

다음 코드 예시에서는 list-resources의 사용 방법을 보여줍니다.

AWS CLI

리소스 공유에 연결된 리소스 나열

다음 list-resources 예시에서는 지정된 리소스 공유에 있는 지정된 리소스 유형의 모든 리소스를 나열합니다.

aws ram list-resources \ --resource-type ec2:Subnet \ --resource-owner SELF \ --resource-share-arn arn:aws:ram:us-west-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE

출력:

{ "resources": [ { "arn": "aarn:aws:ec2:us-west-2:123456789012:subnet/subnet-0250c25a1f4e15235", "type": "ec2:Subnet", "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE", "creationTime": 1565301545.023, "lastUpdatedTime": 1565301545.947 } ] }
  • API 세부 정보는 AWS CLI 명령 참조ListResources 섹션을 참조하세요.

다음 코드 예시에서는 promote-resource-share-created-from-policy의 사용 방법을 보여줍니다.

AWS CLI

리소스 정책 기반 리소스 공유를 AWS RAM의 전체 기능으로 승격

다음 promote-resource-share-created-from-policy 예시에서는 리소스 기반 정책을 연결하여 묵시적으로 생성한 리소스 공유를 가져와 AWS RAM 콘솔과 CLI 및 API 작업에서 완전히 작동하도록 변환합니다.

aws ram promote-resource-share-created-from-policy \ --resource-share-arn arn:aws:ram:us-east-1:123456789012:resource-share/91fa8429-2d06-4032-909a-90909EXAMPLE

출력:

{ "returnValue": true }

다음 코드 예시에서는 reject-resource-share-invitation의 사용 방법을 보여줍니다.

AWS CLI

리소스 공유 초대 거부

다음 reject-resource-share-invitation 예시에서는 지정된 리소스 공유 초대를 거부합니다.

aws ram reject-resource-share-invitation \ --resource-share-invitation-arn arn:aws:ram:us-west-2:111111111111:resource-share-invitation/32b639f0-14b8-7e8f-55ea-e6117EXAMPLE

출력:

"resourceShareInvitations": [ { "resourceShareInvitationArn": "arn:aws:ram:us-west2-1:111111111111:resource-share-invitation/32b639f0-14b8-7e8f-55ea-e6117EXAMPLE", "resourceShareName": "project-resource-share", "resourceShareArn": "arn:aws:ram:us-west-2:111111111111:resource-share/fcb639f0-1449-4744-35bc-a983fEXAMPLE", "senderAccountId": "111111111111", "receiverAccountId": "222222222222", "invitationTimestamp": 1565319592.463, "status": "REJECTED" } ]

다음 코드 예시에서는 tag-resource의 사용 방법을 보여줍니다.

AWS CLI

리소스 공유에 태그 추가

다음 tag-resource 예시에서는 태그 키 project와 관련 값 lima를 지정된 리소스 공유에 추가합니다.

aws ram tag-resource \ --tags key=project,value=lima \ --resource-share-arn arn:aws:ram:us-west-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE

이 명령은 출력을 생성하지 않습니다.

  • API 세부 정보는 AWS CLI 명령 참조의 TagResource를 참조하세요.

다음 코드 예시에서는 untag-resource의 사용 방법을 보여줍니다.

AWS CLI

리소스 공유에서 태그 제거

다음 untag-resource 예시에서는 지정된 리소스 공유에서 project 태그 키 및 관련 값을 제거합니다.

aws ram untag-resource \ --tag-keys project \ --resource-share-arn arn:aws:ram:us-west-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE

이 명령은 출력을 생성하지 않습니다.

  • API 세부 정보는 AWS CLI 명령 참조UntagResource를 참조하세요.

다음 코드 예시에서는 update-resource-share의 사용 방법을 보여줍니다.

AWS CLI

리소스 공유 업데이트

다음 update-resource-share 예시에서는 지정된 리소스 공유를 변경하여 AWS 조직에 없는 외부 위탁자를 허용합니다.

aws ram update-resource-share \ --allow-external-principals \ --resource-share-arn arn:aws:ram:us-west-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE

출력:

{ "resourceShare": { "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE", "name": "my-resource-share", "owningAccountId": "123456789012", "allowExternalPrincipals": true, "status": "ACTIVE", "creationTime": 1565295733.282, "lastUpdatedTime": 1565303080.023 } }