프로그래밍 방식 액세스를 위한 간소화된 AWS 서비스 정보 - 서비스 승인 참조

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

프로그래밍 방식 액세스를 위한 간소화된 AWS 서비스 정보

AWS 는 정책 관리 워크플로의 자동화를 간소화하기 위해 서비스 참조 정보를 JSON 형식으로 제공합니다. 서비스 참조 정보를 사용하면 기계 판독 가능 파일에서의 사용 가능한 작업, 리소스 및 조건 키 AWS 서비스 에 액세스할 수 있습니다. 보안 관리자는 가드레일을 설정할 수 있으며 개발자는 각에 사용 가능한 작업, 리소스 및 조건 키를 식별하여 애플리케이션에 대한 적절한 액세스를 보장할 수 있습니다 AWS 서비스.는 메타데이터를 정책 관리 워크플로에 통합할 수 있도록 AWS 서비스 에 대한 서비스 참조 정보를 AWS 제공합니다.

IAM 정책에 사용할 작업, 리소스 및 조건 키의 인벤토리는의 서비스 승인 참조 페이지를 참조하세요 AWS 서비스.

서비스 접두사를 공유하는 서비스에 대한 작업, 리소스 및 조건 키는 서비스 승인 참조의 여러 페이지로 분할될 수 있습니다.

서비스 승인 참조에 제시된 콘텐츠는 다르게 표시되거나 다른 메타데이터를 포함할 수 있습니다. 자세한 내용은 추가 필드 정의 단원을 참조하십시오.

참고

서비스 참조 정보를 변경하면 서비스의 메타데이터 목록에 반영되는 데 최대 24시간이 걸릴 수 있습니다.

AWS 서비스 참조 정보 액세스
  1. 서비스 참조 정보로 이동하여 참조 정보를 사용할 수 AWS 서비스 있는 목록에 액세스합니다.

    다음 예제에서는 각 참조 정보에 대한 서비스 및 URL의 일부 목록을 보여줍니다.

    [ { "service": "s3", "url": "https://servicereference.us-east-1.amazonaws.com/v1/s3/s3.json" }, { "service": "dynamodb", "url": "https://servicereference.us-east-1.amazonaws.com/v1/dynamodb/dynamodb.json" }, … ]
  2. 서비스를 선택하고 서비스의 url 필드에서 서비스 정보 페이지로 이동하여 서비스에 대한 작업, 리소스 및 조건 키 목록을 봅니다.

    다음 예제에서는 Amazon S3에 대한 서비스 참조 정보의 일부 목록을 보여줍니다.

    { "Name": "s3", "Actions": [ { "Name": "GetObject", "ActionConditionKeys": [ "s3:AccessGrantsInstanceArn", "s3:AccessPointNetworkOrigin", "s3:DataAccessPointAccount", "s3:DataAccessPointArn", "s3:ExistingObjectTag/key", "s3:ResourceAccount", "s3:TlsVersion", "s3:authType", "s3:if-match", "s3:if-none-match", "s3:signatureAge", "s3:signatureversion", "s3:x-amz-content-sha256" ], "Annotations" : { "Properties" : { "IsList" : false, "IsPermissionManagement" : false, "IsTaggingOnly" : false, "IsWrite" : false } }, "Resources": [ { "Name": "object" } ] }, { "Name": "ListBucket", "ActionConditionKeys": [ "s3:AccessGrantsInstanceArn", "s3:AccessPointNetworkOrigin", "s3:DataAccessPointAccount", "s3:DataAccessPointArn", "s3:ResourceAccount", "s3:TlsVersion", "s3:authType", "s3:delimiter", "s3:max-keys", "s3:prefix", "s3:signatureAge", "s3:signatureversion", "s3:x-amz-content-sha256" ], "Annotations" : { "Properties" : { "IsList" : true, "IsPermissionManagement" : false, "IsTaggingOnly" : false, "IsWrite" : false } }, "Resources": [ { "Name": "bucket" } ] }, ... ], "ConditionKeys": [ { "Name": "s3:TlsVersion", "Types": [ "Numeric" ] }, { "Name": "s3:authType", "Types": [ "String" ] }, ... ], "Resources": [ { "Name": "accesspoint", "ARNFormats": [ "arn:${Partition}:s3:${Region}:${Account}:accesspoint/${AccessPointName}" ] }, { "Name": "bucket", "ARNFormats": [ "arn:${Partition}:s3:::${BucketName}" ] } ... ], "Version": "v1.2" }
  3. 정책 작성 워크플로에 사용할 서비스 URL에서 JSON 파일을 다운로드합니다.

추가 필드 정의

작업 속성은 권한 범위에 따라 서비스 작업을 분류하는 데 도움이 되는 서비스 작업에 대한 추가 메타데이터를 제공합니다. 이러한 속성은 각 작업의 Annotations 필드 아래에 있습니다. 메타데이터는 4개의 부울 값으로 구성됩니다.

  • IsList - 리소스 콘텐츠에 액세스하지 않고 기본 메타데이터를 포함한 리소스를 검색하고 나열할 수 있는 권한을 제공합니다.

    -이 속성은 Amazon S3 ListBucket 작업에 true 대한 것으로, 사용자가 객체 자체에 액세스하지 않고도 버킷 목록을 볼 수 있습니다.

  • IsPermissionManagement - IAM 권한 또는 액세스 자격 증명을 수정할 수 있는 권한을 제공합니다.

    -이 속성은 대부분의 IAM 및 AWS Organizations 작업과 PutBucketPolicy 및와 같은 Amazon S3 작업에 true 적용됩니다DeleteBucketPolicy.

  • IsTaggingOnly - 태그를 수정할 수 있는 권한만 제공합니다.

    -이 속성은 IAM 작업 TagRoletrue에 대한 것이고UntagRole,이 속성은 태그 지정 이상의 광범위한 권한을 CreateRole 제공하므로에 false 대한 것입니다.

  • IsWrite - 태그 수정을 포함할 수 있는 리소스를 수정할 수 있는 권한을 제공합니다.

    -이 속성은 리소스 수정을 허용PutObject하므로 Amazon S3 작업 DeleteBucket, 및 CreateBuckettrue 대한 것입니다.

참고

이러한 속성은 상호 배타적이지 않습니다. 작업에 로 설정된 여러 속성이 있을 수 있습니다true.

Amazon S3의 GetObject 작업에서 볼 수 false있듯이 모든 속성이 일 수도 있습니다. 이는 작업이 객체에 대한 읽기 권한만 부여함을 나타냅니다.

이러한 속성을 사용하여 서비스에 대한 인사이트를 생성할 수 있습니다. 다음 예제에서는 s3 접두사가 있는 권한에서 리소스 변경을 허용하는 권한을 보여줍니다.

> curl https://servicereference.us-east-1.amazonaws.com/v1/s3/s3.json | \ jq '.Actions[] | select(.Annotations.Properties.IsWrite == true) | .Name' "AssociateAccessGrantsIdentityCenter" "BypassGovernanceRetention" "CreateAccessGrant" "CreateAccessGrantsInstance" "CreateAccessGrantsLocation" ...

다음 예제에서는 권한 관리 작업에 대한 액세스를 제한하는 데 사용할 수 있는 lambda 접두사가 있는 작업 조건 키를 보여줍니다.

> curl https://servicereference.us-east-1.amazonaws.com/v1/lambda/lambda.json | \ jq '.Actions[] | select(.Annotations.Properties.IsPermissionManagement == true) | {Name: .Name, ActionConditionKeys: (.ActionConditionKeys // [])}' { "Name": "AddLayerVersionPermission", "ActionConditionKeys": [] } { "Name": "AddPermission", "ActionConditionKeys": [ "lambda:FunctionUrlAuthType", "lambda:Principal" ] } { "Name": "DisableReplication", "ActionConditionKeys": [] } { "Name": "EnableReplication", "ActionConditionKeys": [] } { "Name": "RemoveLayerVersionPermission", "ActionConditionKeys": [] } { "Name": "RemovePermission", "ActionConditionKeys": [ "lambda:FunctionUrlAuthType", "lambda:Principal" ] }