Claude Platform on AWS의 IAM 작업
AWS 정책을 통해 Claude Platform on AWS에 대한 액세스를 제어하기 위한 IAM 작업 참조입니다.
Claude Platform on AWS는 액세스 제어에 AWS IAM을 사용합니다. 모든 API 라우트는 aws-external-anthropic 네임스페이스의 IAM 작업(action)에 매핑됩니다. 이 페이지에는 모든 작업, 각 작업이 권한을 부여하는 라우트, 그리고 일반적인 액세스 패턴에 사용할 수 있는 관리형 정책이 나열되어 있습니다. 플랫폼 설정 및 인증에 대해서는 Claude Platform on AWS를 참조하세요.
서비스 세부 정보
| 속성 | 값 |
|---|---|
| IAM 서비스 접두사 | aws-external-anthropic |
| 리소스 유형 | workspace |
워크스페이스 ARN 형식:
arn:aws:aws-external-anthropic:{region}:{account-id}:workspace/{workspace-id}ARN 리전은 항상 채워지며 워크스페이스가 바인딩된 리전과 일치합니다. 리소스 세그먼트는 태그가 지정된 워크스페이스 ID(wrkspc_...)이며, anthropic-workspace-id 헤더에 전달하는 값과 동일합니다.
작업
이 서비스는 71개의 작업을 정의합니다. 작업은 AWS VerbNoun 규칙을 따르며, Get* 및 List* 와일드카드가 깔끔한 읽기 전용 경계를 만들도록 동사 규율을 사용합니다.
추론
| 작업 | 권한이 부여되는 라우트 |
|---|---|
CreateInference | POST /v1/messages |
CountTokens | POST /v1/messages/count_tokens |
배치 처리
| 작업 | 권한이 부여되는 라우트 |
|---|---|
CreateBatchInference | POST /v1/messages/batches |
GetBatchInference | GET /v1/messages/batches/{id}GET /v1/messages/batches/{id}/results |
ListBatchInferences | GET /v1/messages/batches |
CancelBatchInference | POST /v1/messages/batches/{id}/cancel |
DeleteBatchInference | DELETE /v1/messages/batches/{id} |
모델
| 작업 | 권한이 부여되는 라우트 |
|---|---|
GetModel | GET /v1/models/{id} |
ListModels | GET /v1/models |
파일
| 작업 | 권한이 부여되는 라우트 |
|---|---|
CreateFile | POST /v1/files |
GetFile | GET /v1/files/{id}GET /v1/files/{id}/content |
ListFiles | GET /v1/files |
DeleteFile | DELETE /v1/files/{id} |
스킬
| 작업 | 권한이 부여되는 라우트 |
|---|---|
CreateSkill | POST /v1/skills |
GetSkill | GET /v1/skills/{id}GET /v1/skills/{id}/versionsGET /v1/skills/{id}/versions/{version}GET /v1/skills/{id}/versions/{version}/content |
ListSkills | GET /v1/skills |
UpdateSkill | POST /v1/skills/{id}/versionsDELETE /v1/skills/{id}/versions/{version} |
DeleteSkill | DELETE /v1/skills/{id} |
에이전트
| 작업 | 권한이 부여되는 라우트 |
|---|---|
CreateAgent | POST /v1/agents |
GetAgent | GET /v1/agents/{id}GET /v1/agents/{id}/versions |
ListAgents | GET /v1/agents |
UpdateAgent | POST /v1/agents/{id} |
ArchiveAgent | POST /v1/agents/{id}/archive |
세션
| 작업 | 권한이 부여되는 라우트 |
|---|---|
CreateSession | POST /v1/sessions |
GetSession | GET /v1/sessions/{id}GET /v1/sessions/{id}/eventsGET /v1/sessions/{id}/events/streamGET /v1/sessions/{id}/resourcesGET /v1/sessions/{id}/resources/{id} |
ListSessions | GET /v1/sessions |
UpdateSession | POST /v1/sessions/{id}POST /v1/sessions/{id}/eventsPOST /v1/sessions/{id}/resourcesPOST /v1/sessions/{id}/resources/{id}DELETE /v1/sessions/{id}/resources/{id} |
ArchiveSession | POST /v1/sessions/{id}/archive |
DeleteSession | DELETE /v1/sessions/{id} |
환경
| 작업 | 권한이 부여되는 라우트 |
|---|---|
CreateEnvironment | POST /v1/environments |
GetEnvironment | GET /v1/environments/{id}GET /v1/environments/{id}/workGET /v1/environments/{id}/work/{work_id}GET /v1/environments/{id}/work/stats |
ListEnvironments | GET /v1/environments |
UpdateEnvironment | POST /v1/environments/{id} |
ArchiveEnvironment | POST /v1/environments/{id}/archive |
DeleteEnvironment | DELETE /v1/environments/{id} |
ProcessEnvironmentWork | GET /v1/environments/{id}/work/pollPOST /v1/environments/{id}/work/{work_id}POST /v1/environments/{id}/work/{work_id}/ackPOST /v1/environments/{id}/work/{work_id}/heartbeatPOST /v1/environments/{id}/work/{work_id}/stop |
볼트
| 작업 | 권한이 부여되는 라우트 |
|---|---|
CreateVault | POST /v1/vaults |
GetVault | GET /v1/vaults/{id}GET /v1/vaults/{id}/credentialsGET /v1/vaults/{id}/credentials/{id} |
ListVaults | GET /v1/vaults |
UpdateVault | POST /v1/vaults/{id}POST /v1/vaults/{id}/credentialsPOST /v1/vaults/{id}/credentials/{id}POST /v1/vaults/{id}/credentials/{id}/archiveDELETE /v1/vaults/{id}/credentials/{id} |
ArchiveVault | POST /v1/vaults/{id}/archive |
DeleteVault | DELETE /v1/vaults/{id} |
메모리 스토어
| 작업 | 권한이 부여되는 라우트 |
|---|---|
CreateMemoryStore | POST /v1/memory_stores |
GetMemoryStore | GET /v1/memory_stores/{id}GET /v1/memory_stores/{id}/memoriesGET /v1/memory_stores/{id}/memories/{id}GET /v1/memory_stores/{id}/memory_versionsGET /v1/memory_stores/{id}/memory_versions/{id} |
ListMemoryStores | GET /v1/memory_stores |
UpdateMemoryStore | POST /v1/memory_stores/{id}POST /v1/memory_stores/{id}/memoriesPOST /v1/memory_stores/{id}/memories/{id}DELETE /v1/memory_stores/{id}/memories/{id}POST /v1/memory_stores/{id}/memory_versions/{id}/redact |
ArchiveMemoryStore | POST /v1/memory_stores/{id}/archive |
DeleteMemoryStore | DELETE /v1/memory_stores/{id} |
웹훅
| 작업 | 권한이 부여되는 라우트 |
|---|---|
CreateWebhook | POST /v1/webhooks |
GetWebhook | GET /v1/webhooks/{id} |
ListWebhooks | GET /v1/webhooks |
UpdateWebhook | POST /v1/webhooks/{id} |
DeleteWebhook | DELETE /v1/webhooks/{id} |
RotateWebhookSecret | POST /v1/webhooks/{id}/regenerate_signing_secret |
사용자 프로필
| 작업 | 권한이 부여되는 라우트 |
|---|---|
CreateUserProfile | POST /v1/user_profiles |
GetUserProfile | GET /v1/user_profiles/{id} |
ListUserProfiles | GET /v1/user_profiles |
UpdateUserProfile | POST /v1/user_profiles/{id} |
워크스페이스
| 작업 | 권한이 부여되는 라우트 |
|---|---|
CreateWorkspace | POST /v1/organizations/workspaces |
GetWorkspace | GET /v1/organizations/workspaces/{id} |
ListWorkspaces | GET /v1/organizations/workspaces |
UpdateWorkspace | POST /v1/organizations/workspaces/{id} |
ArchiveWorkspace | POST /v1/organizations/workspaces/{id}/archive |
암호화 키
| 작업 | 권한이 부여되는 라우트 |
|---|---|
RegisterKey | POST /v1/organizations/external_keys |
GetKey | GET /v1/organizations/external_keys/{id} |
ListKeys | GET /v1/organizations/external_keys |
UpdateKey | POST /v1/organizations/external_keys/{id} |
DisableKey | DELETE /v1/organizations/external_keys/{id} |
컴플라이언스
| 작업 | 권한이 부여되는 라우트 |
|---|---|
ListComplianceActivities | GET /v1/compliance/activities |
인증
| 작업 | 권한이 부여되는 라우트 |
|---|---|
CallWithBearerToken | (없음) |
CallWithBearerToken은 주체가 AWS SigV4 대신 API 키(베어러 토큰)를 통해 인증할 수 있도록 권한을 부여하는 인증 계층 권한입니다. 라우트에 매핑되지 않습니다. API 키 보유자가 수행하기를 원하는 라우트 매핑 작업과 함께 부여하세요.
콘솔 액세스
| 작업 | 권한이 부여되는 라우트 |
|---|---|
AssumeConsole | (없음) |
AssumeConsole은 주체가 AWS Console 페더레이션 흐름을 통해 Claude Platform on AWS 워크스페이스의 Claude Console을 열 수 있도록 권한을 부여합니다. 라우트에 매핑되지 않습니다. AWS Console의 Claude Platform on AWS 서비스 페이지에서 Open Claude Console을 클릭할 수 있어야 하는 주체에게 부여하세요. Claude Console 역할(Admin 또는 Developer)은 Anthropic 계정 담당자가 별도로 할당하며, 주체의 IAM 권한에서 파생되지 않습니다. 로그인 흐름 및 역할 설명은 Claude Console 사용하기를 참조하세요.
라우트-작업 매핑
다음 표에는 Claude Platform on AWS의 모든 라우트와 이를 호출하는 데 필요한 IAM 작업이 나열되어 있습니다. 각 IAM 작업은 anthropic-beta 헤더를 사용하는 요청에도 권한을 부여합니다. 라우트의 베타 변형에는 별도의 IAM 작업이 필요하지 않습니다. CloudTrail은 각 작업을 Data 이벤트(대용량 데이터 플레인 작업) 또는 Management 이벤트(컨트롤 플레인 작업)로 분류합니다. 볼트 및 웹훅 작업은 시크릿(볼트 자격 증명 및 웹훅 서명 시크릿)을 보유하고 기본 활성화된 감사 로깅의 이점을 누리므로 Management 이벤트로 분류됩니다. 워크스페이스, 외부 키, 컴플라이언스 작업도 조직 범위의 컨트롤 플레인 작업이므로 Management 이벤트로 분류됩니다. 추론, 배치, 모델, 파일, 스킬, 사용자 프로필 및 나머지 Claude Managed Agents 작업을 포함한 다른 모든 작업은 Data 이벤트로 분류됩니다.
| 메서드 | 라우트 | IAM 작업 | CloudTrail 이벤트 유형 |
|---|---|---|---|
POST | /v1/messages | CreateInference | Data |
POST | /v1/messages/count_tokens | CountTokens | Data |
POST | /v1/messages/batches | CreateBatchInference | Data |
GET | /v1/messages/batches | ListBatchInferences | Data |
GET | /v1/messages/batches/{id} | GetBatchInference | Data |
GET | /v1/messages/batches/{id}/results | GetBatchInference | Data |
POST | /v1/messages/batches/{id}/cancel | CancelBatchInference | Data |
DELETE | /v1/messages/batches/{id} | DeleteBatchInference | Data |
GET | /v1/models | ListModels | Data |
GET | /v1/models/{id} | GetModel | Data |
POST | /v1/files | CreateFile | Data |
GET | /v1/files | ListFiles | Data |
GET | /v1/files/{id} | GetFile | Data |
GET | /v1/files/{id}/content | GetFile | Data |
DELETE | /v1/files/{id} | DeleteFile | Data |
POST | /v1/skills | CreateSkill | Data |
GET | /v1/skills | ListSkills | Data |
GET | /v1/skills/{id} | GetSkill | Data |
DELETE | /v1/skills/{id} | DeleteSkill | Data |
POST | /v1/skills/{id}/versions | UpdateSkill | Data |
GET | /v1/skills/{id}/versions | GetSkill | Data |
GET | /v1/skills/{id}/versions/{version} | GetSkill | Data |
GET | /v1/skills/{id}/versions/{version}/content | GetSkill | Data |
DELETE | /v1/skills/{id}/versions/{version} | UpdateSkill | Data |
POST | /v1/user_profiles | CreateUserProfile | Data |
GET | /v1/user_profiles | ListUserProfiles | Data |
GET | /v1/user_profiles/{id} | GetUserProfile | Data |
POST | /v1/user_profiles/{id} | UpdateUserProfile | Data |
POST | /v1/organizations/workspaces | CreateWorkspace | Management |
GET | /v1/organizations/workspaces | ListWorkspaces | Management |
GET | /v1/organizations/workspaces/{id} | GetWorkspace | Management |
POST | /v1/organizations/workspaces/{id} | UpdateWorkspace | Management |
POST | /v1/organizations/workspaces/{id}/archive | ArchiveWorkspace | Management |
POST | /v1/organizations/external_keys | RegisterKey | Management |
GET | /v1/organizations/external_keys | ListKeys | Management |
GET | /v1/organizations/external_keys/{id} | GetKey | Management |
POST | /v1/organizations/external_keys/{id} | UpdateKey | Management |
DELETE | /v1/organizations/external_keys/{id} | DisableKey | Management |
GET | /v1/compliance/activities | ListComplianceActivities | Management |
POST | /v1/agents | CreateAgent | Data |
GET | /v1/agents | ListAgents | Data |
GET | /v1/agents/{id} | GetAgent | Data |
POST | /v1/agents/{id} | UpdateAgent | Data |
POST | /v1/agents/{id}/archive | ArchiveAgent | Data |
GET | /v1/agents/{id}/versions | GetAgent | Data |
POST | /v1/sessions | CreateSession | Data |
GET | /v1/sessions | ListSessions | Data |
GET | /v1/sessions/{id} | GetSession | Data |
POST | /v1/sessions/{id} | UpdateSession | Data |
POST | /v1/sessions/{id}/archive | ArchiveSession | Data |
DELETE | /v1/sessions/{id} | DeleteSession | Data |
GET | /v1/sessions/{id}/events | GetSession | Data |
POST | /v1/sessions/{id}/events | UpdateSession | Data |
GET | /v1/sessions/{id}/events/stream | GetSession | Data |
GET | /v1/sessions/{id}/resources | GetSession | Data |
GET | /v1/sessions/{id}/resources/{id} | GetSession | Data |
POST | /v1/sessions/{id}/resources | UpdateSession | Data |
POST | /v1/sessions/{id}/resources/{id} | UpdateSession | Data |
DELETE | /v1/sessions/{id}/resources/{id} | UpdateSession | Data |
POST | /v1/environments | CreateEnvironment | Data |
GET | /v1/environments | ListEnvironments | Data |
GET | /v1/environments/{id} | GetEnvironment | Data |
POST | /v1/environments/{id} | UpdateEnvironment | Data |
POST | /v1/environments/{id}/archive | ArchiveEnvironment | Data |
DELETE | /v1/environments/{id} | DeleteEnvironment | Data |
GET | /v1/environments/{id}/work | GetEnvironment | Data |
GET | /v1/environments/{id}/work/poll | ProcessEnvironmentWork | Data |
GET | /v1/environments/{id}/work/{work_id} | GetEnvironment | Data |
GET | /v1/environments/{id}/work/stats | GetEnvironment | Data |
POST | /v1/environments/{id}/work/{work_id} | ProcessEnvironmentWork | Data |
POST | /v1/environments/{id}/work/{work_id}/ack | ProcessEnvironmentWork | Data |
POST | /v1/environments/{id}/work/{work_id}/heartbeat | ProcessEnvironmentWork | Data |
POST | /v1/environments/{id}/work/{work_id}/stop | ProcessEnvironmentWork | Data |
POST | /v1/vaults | CreateVault | Management |
GET | /v1/vaults | ListVaults | Management |
GET | /v1/vaults/{id} | GetVault | Management |
POST | /v1/vaults/{id} | UpdateVault | Management |
POST | /v1/vaults/{id}/archive | ArchiveVault | Management |
DELETE | /v1/vaults/{id} | DeleteVault | Management |
GET | /v1/vaults/{id}/credentials | GetVault | Management |
POST | /v1/vaults/{id}/credentials | UpdateVault | Management |
GET | /v1/vaults/{id}/credentials/{id} | GetVault | Management |
POST | /v1/vaults/{id}/credentials/{id} | UpdateVault | Management |
POST | /v1/vaults/{id}/credentials/{id}/archive | UpdateVault | Management |
DELETE | /v1/vaults/{id}/credentials/{id} | UpdateVault | Management |
POST | /v1/memory_stores | CreateMemoryStore | Data |
GET | /v1/memory_stores | ListMemoryStores | Data |
GET | /v1/memory_stores/{id} | GetMemoryStore | Data |
POST | /v1/memory_stores/{id} | UpdateMemoryStore | Data |
POST | /v1/memory_stores/{id}/archive | ArchiveMemoryStore | Data |
DELETE | /v1/memory_stores/{id} | DeleteMemoryStore | Data |
POST | /v1/memory_stores/{id}/memories | UpdateMemoryStore | Data |
GET | /v1/memory_stores/{id}/memories | GetMemoryStore | Data |
GET | /v1/memory_stores/{id}/memories/{id} | GetMemoryStore | Data |
POST | /v1/memory_stores/{id}/memories/{id} | UpdateMemoryStore | Data |
DELETE | /v1/memory_stores/{id}/memories/{id} | UpdateMemoryStore | Data |
GET | /v1/memory_stores/{id}/memory_versions | GetMemoryStore | Data |
GET | /v1/memory_stores/{id}/memory_versions/{id} | GetMemoryStore | Data |
POST | /v1/memory_stores/{id}/memory_versions/{id}/redact | UpdateMemoryStore | Data |
GET | /v1/webhooks | ListWebhooks | Management |
GET | /v1/webhooks/{id} | GetWebhook | Management |
POST | /v1/webhooks | CreateWebhook | Management |
POST | /v1/webhooks/{id} | UpdateWebhook | Management |
DELETE | /v1/webhooks/{id} | DeleteWebhook | Management |
POST | /v1/webhooks/{id}/regenerate_signing_secret | RotateWebhookSecret | Management |
이 표에 없는 라우트는 Claude Platform on AWS에서 사용할 수 없습니다. 게이트웨이는 여기에 나열되지 않은 모든 라우트를 기본적으로 거부합니다.
관리형 정책
AWS는 Claude Platform on AWS를 위한 다섯 개의 관리형 정책을 제공합니다. 모든 관리형 정책은 Resource: "*"에 적용됩니다.
| 정책 | 부여 내용 |
|---|---|
AnthropicFullAccess | aws-external-anthropic:* |
AnthropicReadOnlyAccess | Get*, List*, CallWithBearerToken |
AnthropicInferenceAccess | Get*, List*, CreateInference, CreateBatchInference, CancelBatchInference, DeleteBatchInference, CountTokens, CallWithBearerToken |
AnthropicLimitedAccess | 모든 AnthropicInferenceAccess 작업과 모든 Claude Managed Agents 작업(에이전트, 세션, 환경, 볼트, 메모리 스토어, 웹훅, 자체 호스팅 환경 작업) |
AnthropicSelfHostedEnvironmentAccess | GetEnvironment, ProcessEnvironmentWork, GetSession, UpdateSession, GetSkill, CallWithBearerToken |
AnthropicInferenceAccess는 추론을 실행하기에 충분한 가장 좁은 범위의 관리형 정책입니다. 동기 및 배치 추론을 모두 포함하며, Get* 및 List* 와일드카드를 통해 Claude Managed Agents(CMA) 리소스(에이전트, 세션, 환경, 볼트, 메모리 스토어, 웹훅)를 포함한 네임스페이스의 모든 API 리소스에 대한 읽기 액세스를 부여합니다. 여기에는 GetFile을 통한 파일 콘텐츠 다운로드(파일 참고 참조), GetSkill을 통한 스킬 콘텐츠 다운로드(스킬 참고 참조), GetMemoryStore를 통한 메모리 콘텐츠가 포함됩니다. 볼트 자격 증명 시크릿과 웹훅 서명 시크릿은 노출되지 않습니다. 해당 필드는 쓰기 전용이며 GetVault 또는 GetWebhook에서 절대 반환되지 않습니다(볼트로 인증하기 참조). AnthropicInferenceAccess는 파일 생성 또는 삭제, 스킬 관리, 사용자 프로필 관리, 워크스페이스 변경, 암호화 키 관리 또는 Claude Managed Agents 쓰기 작업(생성, 업데이트, 아카이브, 삭제, 처리 또는 교체)을 부여하지 않습니다. CMA 읽기를 제외하려면 AnthropicInferenceAccess를 필요한 특정 비-CMA 작업만 나열하는 사용자 지정 정책으로 교체하세요.
AnthropicLimitedAccess는 추론 작업 외에 모든 Claude Managed Agents 작업을 포함합니다.
AnthropicSelfHostedEnvironmentAccess는 자체 호스팅 샌드박스 워커를 실행하기에 충분한 가장 좁은 범위의 관리형 정책입니다. 환경 워커가 인증하는 주체에 연결하세요.
AssumeConsole은 AnthropicReadOnlyAccess, AnthropicInferenceAccess, AnthropicLimitedAccess, AnthropicSelfHostedEnvironmentAccess에 포함되지 않습니다. Claude Console 액세스가 필요한 주체는 AnthropicFullAccess 또는 aws-external-anthropic:AssumeConsole을 부여하는 사용자 지정 정책이 필요합니다. 콘솔 액세스를 참조하세요.
예시 정책
단일 워크스페이스에서의 동기 추론
하나의 프로덕션 워크스페이스에 대해 추론을 실행하는 IAM 주체에 최소 권한을 부여합니다:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"aws-external-anthropic:CreateInference",
"aws-external-anthropic:CountTokens",
"aws-external-anthropic:GetModel",
"aws-external-anthropic:ListModels",
"aws-external-anthropic:GetWorkspace"
],
"Resource": "arn:aws:aws-external-anthropic:us-west-2:123456789012:workspace/wrkspc_01AbCdEf23GhIj"
}
]
}고객별 워크스페이스 격리
역할을 단일 워크스페이스로 제한합니다:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "aws-external-anthropic:*",
"Resource": "arn:aws:aws-external-anthropic:us-west-2:123456789012:workspace/wrkspc_01AbCdEf23GhIj"
},
{
"Effect": "Allow",
"Action": [
"aws-external-anthropic:CallWithBearerToken",
"aws-external-anthropic:AssumeConsole"
],
"Resource": "*"
}
]
}ZDR 민감 워크스페이스에 대한 기능 잠금
특정 워크스페이스에서 배치 처리와 파일 업로드를 차단하면서 동기 추론은 사용 가능하게 유지합니다. 워크스페이스가 서버 측에 지속되어서는 안 되는 Zero Data Retention(ZDR) 데이터를 처리할 때 유용합니다. 이 정책을 AnthropicInferenceAccess 또는 단일 워크스페이스 예시와 같은 Allow 정책과 함께 연결하세요. Deny 전용 정책은 그 자체로는 어떤 권한도 부여하지 않습니다:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": [
"aws-external-anthropic:CreateBatchInference",
"aws-external-anthropic:CreateFile"
],
"Resource": "arn:aws:aws-external-anthropic:us-west-2:123456789012:workspace/wrkspc_01AbCdEf23GhIj"
}
]
}프로비저닝 자동화
추론 권한 없이 워크스페이스를 생성하고 관리하는 데 필요한 작업을 CI/CD 역할에 부여합니다:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"aws-external-anthropic:CreateWorkspace",
"aws-external-anthropic:GetWorkspace",
"aws-external-anthropic:ListWorkspaces",
"aws-external-anthropic:UpdateWorkspace",
"aws-external-anthropic:ArchiveWorkspace"
],
"Resource": "*"
}
]
}CreateWorkspace와 ListWorkspaces는 계정 범위의 작업입니다. 이러한 작업에 워크스페이스 ARN을 지정해도 아무런 효과가 없으므로 Resource: "*"를 사용하세요.
참고 항목
- 설정, 인증 및 플랫폼 개요는 Claude Platform on AWS를 참조하세요
- IAM 정책 구문 및 평가 로직은 AWS IAM 사용 설명서를 참조하세요
- 감사 로깅 구성은 AWS CloudTrail 사용 설명서를 참조하세요
Was this page helpful?