AWS RAM 사용 예제 AWS CLI - AWS Command Line Interface

이 설명서는 의 버전 1 AWS CLI 전용입니다. 의 버전 2와 관련된 설명서는 버전 2 사용 설명서 를 AWS CLI참조하세요.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS RAM 사용 예제 AWS CLI

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

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

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

주제

작업

다음 코드 예시에서는 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 } }
  • 자세한 API 내용은 명령 참조CreateResourceShare의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 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 }
  • 자세한 API 내용은 명령 참조DeleteResourceShare의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 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 내용은 명령 참조GetPermission의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 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\"}]}" ] }
  • 자세한 API 내용은 명령 참조GetResourcePolicies의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 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 내용은 명령 참조GetResourceShares의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 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 내용은 명령 참조ListPermissions의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 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 내용은 명령 참조ListPrincipals의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 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 내용은 명령 참조ListResourceTypes의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 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 내용은 명령 참조ListResources의 섹션을 참조하세요. AWS CLI

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

AWS CLI

에서 리소스 정책 기반 리소스 공유를 전체 기능으로 승격하려면 AWS RAM

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

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 내용은 명령 참조TagResource의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 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 내용은 명령 참조UntagResource의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 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 } }
  • 자세한 API 내용은 명령 참조UpdateResourceShare의 섹션을 참조하세요. AWS CLI