Claude Platform sur AWS utilise AWS IAM pour le contrôle d'accès. Chaque route d'API correspond à une action IAM dans l'espace de noms aws-external-anthropic. Cette page répertorie toutes les actions, les routes que chaque action autorise, et les politiques gérées disponibles pour les modèles d'accès courants. Pour la configuration de la plateforme et l'authentification, consultez Claude Platform sur AWS.
| Attribut | Valeur |
|---|---|
| Préfixe de service IAM | aws-external-anthropic |
| Types de ressources | workspace |
Format de l'ARN de workspace :
arn:aws:aws-external-anthropic:{region}:{account-id}:workspace/{workspace-id}La région de l'ARN est toujours renseignée et correspond à la région à laquelle le workspace est lié. Le segment de ressource est l'identifiant de workspace étiqueté (wrkspc_...), la même valeur que vous transmettez dans l'en-tête anthropic-workspace-id.
Le service définit 65 actions. Les actions suivent la convention AWS VerbNoun et appliquent une discipline de verbes afin que les caractères génériques Get* et List* produisent une délimitation nette en lecture seule.
| Action | Routes autorisées |
|---|---|
CreateInference | POST /v1/messages |
CountTokens | POST /v1/messages/count_tokens |
| Action | Routes autorisées |
|---|---|
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} |
GetBatchInference autorise à la fois la lecture des métadonnées de lot et le téléchargement des résultats de lot. Les caractères génériques Get* des politiques AnthropicReadOnlyAccess, AnthropicInferenceAccess et AnthropicLimitedAccess incluent cette action.
| Action | Routes autorisées |
|---|---|
GetModel | GET /v1/models/{id} |
ListModels | GET /v1/models |
| Action | Routes autorisées |
|---|---|
CreateFile | POST /v1/files |
GetFile | GET /v1/files/{id}GET /v1/files/{id}/content |
ListFiles | GET /v1/files |
DeleteFile | DELETE /v1/files/{id} |
GetFile autorise à la fois les métadonnées et le téléchargement du contenu. Un principal disposant d'un accès en lecture seule peut télécharger les octets de fichier, et pas seulement lister les fichiers.
| Action | Routes autorisées |
|---|---|
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} |
GetSkill autorise à la fois les métadonnées de skill et le téléchargement du contenu de skill. Un principal disposant d'un accès en lecture seule peut télécharger les octets de skill, et pas seulement lister les skills.
La création ou la suppression d'une version individuelle de skill correspond à UpdateSkill, et non à CreateSkill ou DeleteSkill. Une politique qui refuse aws-external-anthropic:Delete* autorise toujours la suppression de version, et une politique qui refuse aws-external-anthropic:Create* autorise toujours la création de version. Refusez également UpdateSkill et CreateSkill si vous devez empêcher toute mutation de skill.
| Action | Routes autorisées |
|---|---|
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 |
Les agents prennent uniquement en charge l'archivage, pas la suppression définitive. Une politique qui refuse aws-external-anthropic:Delete* ne bloque pas ArchiveAgent. Refusez ArchiveAgent, UpdateAgent et CreateAgent si vous devez empêcher toute mutation d'agent.
| Action | Routes autorisées |
|---|---|
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} |
GetSession autorise la lecture des métadonnées de session, du flux d'événements complet (historique de conversation) et des ressources de session. Les caractères génériques Get* des politiques AnthropicReadOnlyAccess, AnthropicInferenceAccess et AnthropicLimitedAccess incluent cette action.
La création, la mise à jour ou la suppression d'une sous-ressource individuelle de session (événements ou ressources de session) correspond à UpdateSession, et non à CreateSession ou DeleteSession. Une politique qui refuse aws-external-anthropic:Delete* autorise toujours la suppression de sous-ressource, et une politique qui refuse aws-external-anthropic:Create* autorise toujours la création de sous-ressource. Refusez également UpdateSession, CreateSession et ArchiveSession si vous devez empêcher toute mutation de session.
| Action | Routes autorisées |
|---|---|
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 |
Une politique qui refuse aws-external-anthropic:Delete* ne bloque pas ArchiveEnvironment. ProcessEnvironmentWork n'est pas couvert par les caractères génériques Create*, Update*, Delete* ou Archive*. Refusez également ArchiveEnvironment, UpdateEnvironment, CreateEnvironment et ProcessEnvironmentWork si vous devez empêcher toute mutation d'environnement.
ProcessEnvironmentWork autorise un worker de sandbox auto-hébergé à interroger, accuser réception, envoyer des heartbeats, arrêter et publier des résultats sur les éléments de travail d'environnement. Accordez-la uniquement aux principaux qui exécutent des workers d'environnement auto-hébergés. La politique gérée AnthropicSelfHostedEnvironmentAccess inclut cette action.
| Action | Routes autorisées |
|---|---|
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} |
La création, la mise à jour, l'archivage ou la suppression d'un identifiant de vault individuel correspond à UpdateVault. La lecture d'un identifiant correspond à GetVault. Les secrets d'identifiants de vault ne sont pas exposés : les champs de secret sont en écriture seule et ne sont jamais renvoyés par GetVault (voir S'authentifier avec les vaults). Une politique qui refuse aws-external-anthropic:Delete* autorise toujours la suppression d'identifiant, et une politique qui refuse aws-external-anthropic:Create* autorise toujours la création d'identifiant. Refusez également UpdateVault, CreateVault et ArchiveVault si vous devez empêcher toute mutation de vault.
| Action | Routes autorisées |
|---|---|
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} |
GetMemoryStore autorise la lecture des métadonnées du store, de toutes les mémoires et de l'historique des versions de mémoire. Les caractères génériques Get* des politiques AnthropicReadOnlyAccess, AnthropicInferenceAccess et AnthropicLimitedAccess incluent cette action.
La création, la mise à jour ou la suppression d'une mémoire individuelle et la rédaction d'une version de mémoire correspondent toutes deux à UpdateMemoryStore, et non à CreateMemoryStore ou DeleteMemoryStore. Une politique qui refuse aws-external-anthropic:Delete* autorise toujours la suppression de mémoire individuelle et la rédaction de version de mémoire, et une politique qui refuse aws-external-anthropic:Create* autorise toujours la création de mémoire individuelle. Refusez également UpdateMemoryStore, CreateMemoryStore et ArchiveMemoryStore si vous devez empêcher toute mutation de memory store.
| Action | Routes autorisées |
|---|---|
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 |
Les secrets de signature de webhook sont en écriture seule. GetWebhook renvoie uniquement les métadonnées de webhook ; il ne renvoie pas le secret de signature.
RotateWebhookSecret n'est pas couvert par les caractères génériques aws-external-anthropic:Create*, Update* ou Delete*. Une politique qui refuse ces motifs autorise toujours la rotation de secret. Refusez RotateWebhookSecret, UpdateWebhook, CreateWebhook et DeleteWebhook si vous devez empêcher toute mutation de webhook.
| Action | Routes autorisées |
|---|---|
CreateUserProfile | POST /v1/user_profiles |
GetUserProfile | GET /v1/user_profiles/{id} |
ListUserProfiles | GET /v1/user_profiles |
UpdateUserProfile | POST /v1/user_profiles/{id} |
La correspondance des actions IAM est insensible à la casse. Le caractère générique aws-external-anthropic:*File correspond à CreateFile, GetFile et DeleteFile, mais ne correspond pas à ListFiles (qui se termine par « files », et non « file »). Il correspond également par excès à CreateUserProfile, GetUserProfile et UpdateUserProfile car « Profile » se termine par « file ». Si vous souhaitez accorder ou refuser uniquement les actions de l'API Files, énumérez-les explicitement (CreateFile, GetFile, ListFiles, DeleteFile) plutôt que d'utiliser un motif de suffixe *File.
| Action | Routes autorisées |
|---|---|
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 |
Les workspaces prennent uniquement en charge l'archivage, pas la suppression définitive. Une politique qui refuse aws-external-anthropic:Delete* ne bloque pas ArchiveWorkspace. Refusez ArchiveWorkspace, UpdateWorkspace et CreateWorkspace si vous devez empêcher toute mutation de workspace.
| Action | Routes autorisées |
|---|---|
CallWithBearerToken | (aucune) |
CallWithBearerToken est une permission de la couche d'authentification qui autorise un principal à s'authentifier via une clé API (bearer token) plutôt que via AWS SigV4. Elle ne correspond à aucune route. Accordez-la en complément des actions mappées à des routes que vous souhaitez que le détenteur de la clé API puisse effectuer.
| Action | Routes autorisées |
|---|---|
AssumeConsole | (aucune) |
AssumeConsole autorise un principal à ouvrir la Claude Console pour un workspace Claude Platform sur AWS via le flux de fédération de la console AWS. Elle ne correspond à aucune route. Accordez-la aux principaux qui doivent pouvoir cliquer sur Open Claude Console sur la page du service Claude Platform sur AWS dans la console AWS. Le rôle Claude Console (Admin ou Developer) est attribué séparément par votre représentant de compte Anthropic ; il n'est pas dérivé des permissions IAM du principal. Consultez Utilisation de la Claude Console pour le flux de connexion et les descriptions de rôles.
Le tableau suivant répertorie chaque route de Claude Platform sur AWS et l'action IAM requise pour l'appeler. Chaque action IAM autorise également les requêtes qui utilisent l'en-tête anthropic-beta ; les variantes bêta d'une route ne nécessitent pas d'action IAM distincte. CloudTrail classe chaque action soit comme un événement de données (opérations de plan de données à volume élevé), soit comme un événement de gestion (opérations de plan de contrôle). Les actions de vault et de webhook sont classées comme événements de gestion car elles contiennent des secrets (identifiants de vault et secrets de signature de webhook) et bénéficient de la journalisation d'audit activée par défaut. Les actions de workspace sont également classées comme événements de gestion car ce sont des opérations de plan de contrôle à portée d'organisation. Toutes les autres actions, y compris l'inférence, les lots, les modèles, les fichiers, les skills, les profils utilisateur et les actions restantes de Claude Managed Agents, sont classées comme événements de données.
| Méthode | Route | Action IAM | Type d'événement CloudTrail |
|---|---|---|---|
POST | /v1/messages | CreateInference | Données |
POST | /v1/messages/count_tokens | CountTokens | Données |
POST | /v1/messages/batches | CreateBatchInference | Données |
GET | /v1/messages/batches | ListBatchInferences | Données |
GET | /v1/messages/batches/{id} | GetBatchInference | Données |
GET | /v1/messages/batches/{id}/results | GetBatchInference | Données |
POST | /v1/messages/batches/{id}/cancel | CancelBatchInference | Données |
DELETE | /v1/messages/batches/{id} | DeleteBatchInference | Données |
GET | /v1/models | ListModels | Données |
GET | /v1/models/{id} | GetModel | Données |
POST | /v1/files | CreateFile | Données |
GET | /v1/files | ListFiles | Données |
GET | /v1/files/{id} | GetFile | Données |
GET | /v1/files/{id}/content | GetFile | Données |
DELETE | /v1/files/{id} | DeleteFile | Données |
POST | /v1/skills | CreateSkill | Données |
GET | /v1/skills | ListSkills | Données |
GET | /v1/skills/{id} | GetSkill | Données |
DELETE | /v1/skills/{id} | DeleteSkill | Données |
POST | /v1/skills/{id}/versions | UpdateSkill | Données |
GET | /v1/skills/{id}/versions | GetSkill | Données |
GET | /v1/skills/{id}/versions/{version} | GetSkill | Données |
GET | /v1/skills/{id}/versions/{version}/content | GetSkill | Données |
DELETE | /v1/skills/{id}/versions/{version} | UpdateSkill | Données |
POST | /v1/user_profiles | CreateUserProfile | Données |
GET | /v1/user_profiles | ListUserProfiles | Données |
GET | /v1/user_profiles/{id} | GetUserProfile | Données |
POST | /v1/user_profiles/{id} | UpdateUserProfile | Données |
POST | /v1/organizations/workspaces | CreateWorkspace | Gestion |
GET | /v1/organizations/workspaces | ListWorkspaces | Gestion |
GET | /v1/organizations/workspaces/{id} | GetWorkspace | Gestion |
POST | /v1/organizations/workspaces/{id} | UpdateWorkspace | Gestion |
POST | /v1/organizations/workspaces/{id}/archive | ArchiveWorkspace | Gestion |
POST | /v1/agents | CreateAgent | Données |
GET | /v1/agents | ListAgents | Données |
GET | /v1/agents/{id} | GetAgent | Données |
POST | /v1/agents/{id} | UpdateAgent | Données |
POST | /v1/agents/{id}/archive | ArchiveAgent | Données |
GET | /v1/agents/{id}/versions | GetAgent | Données |
POST | /v1/sessions | CreateSession | Données |
GET | /v1/sessions | ListSessions | Données |
GET | /v1/sessions/{id} | GetSession | Données |
POST | /v1/sessions/{id} | UpdateSession | Données |
POST | /v1/sessions/{id}/archive | ArchiveSession | Données |
DELETE | /v1/sessions/{id} | DeleteSession | Données |
GET | /v1/sessions/{id}/events | GetSession | Données |
POST | /v1/sessions/{id}/events | UpdateSession | Données |
GET | /v1/sessions/{id}/events/stream | GetSession | Données |
GET | /v1/sessions/{id}/resources | GetSession | Données |
GET | /v1/sessions/{id}/resources/{id} | GetSession | Données |
POST | /v1/sessions/{id}/resources | UpdateSession | Données |
POST | /v1/sessions/{id}/resources/{id} | UpdateSession | Données |
DELETE | /v1/sessions/{id}/resources/{id} | UpdateSession | Données |
POST | /v1/environments | CreateEnvironment | Données |
GET | /v1/environments | ListEnvironments | Données |
GET | /v1/environments/{id} | GetEnvironment | Données |
POST | /v1/environments/{id} | UpdateEnvironment | Données |
POST | /v1/environments/{id}/archive | ArchiveEnvironment | Données |
DELETE | /v1/environments/{id} | DeleteEnvironment | Données |
GET | /v1/environments/{id}/work | GetEnvironment | Données |
GET | /v1/environments/{id}/work/poll | ProcessEnvironmentWork | Données |
GET | /v1/environments/{id}/work/{work_id} | GetEnvironment | Données |
GET | /v1/environments/{id}/work/stats | GetEnvironment | Données |
POST | /v1/environments/{id}/work/{work_id} | ProcessEnvironmentWork | Données |
POST | /v1/environments/{id}/work/{work_id}/ack | ProcessEnvironmentWork | Données |
POST | /v1/environments/{id}/work/{work_id}/heartbeat | ProcessEnvironmentWork | Données |
POST | /v1/environments/{id}/work/{work_id}/stop | ProcessEnvironmentWork | Données |
POST | /v1/vaults | CreateVault | Gestion |
GET | /v1/vaults | ListVaults | Gestion |
GET | /v1/vaults/{id} | GetVault | Gestion |
POST | /v1/vaults/{id} | UpdateVault | Gestion |
POST | /v1/vaults/{id}/archive | ArchiveVault | Gestion |
DELETE | /v1/vaults/{id} | DeleteVault | Gestion |
GET | /v1/vaults/{id}/credentials | GetVault | Gestion |
POST | /v1/vaults/{id}/credentials | UpdateVault | Gestion |
GET | /v1/vaults/{id}/credentials/{id} | GetVault | Gestion |
POST | /v1/vaults/{id}/credentials/{id} | UpdateVault | Gestion |
POST | /v1/vaults/{id}/credentials/{id}/archive | UpdateVault | Gestion |
DELETE | /v1/vaults/{id}/credentials/{id} | UpdateVault | Gestion |
POST | /v1/memory_stores | CreateMemoryStore | Données |
GET | /v1/memory_stores | ListMemoryStores | Données |
GET | /v1/memory_stores/{id} | GetMemoryStore | Données |
POST | /v1/memory_stores/{id} | UpdateMemoryStore | Données |
POST | /v1/memory_stores/{id}/archive | ArchiveMemoryStore | Données |
DELETE | /v1/memory_stores/{id} | DeleteMemoryStore | Données |
POST | /v1/memory_stores/{id}/memories | UpdateMemoryStore | Données |
GET | /v1/memory_stores/{id}/memories | GetMemoryStore | Données |
GET | /v1/memory_stores/{id}/memories/{id} | GetMemoryStore | Données |
POST | /v1/memory_stores/{id}/memories/{id} | UpdateMemoryStore | Données |
DELETE | /v1/memory_stores/{id}/memories/{id} | UpdateMemoryStore | Données |
GET | /v1/memory_stores/{id}/memory_versions | GetMemoryStore | Données |
GET | /v1/memory_stores/{id}/memory_versions/{id} | GetMemoryStore | Données |
POST | /v1/memory_stores/{id}/memory_versions/{id}/redact | UpdateMemoryStore | Données |
GET | /v1/webhooks | ListWebhooks | Gestion |
GET | /v1/webhooks/{id} | GetWebhook | Gestion |
POST | /v1/webhooks | CreateWebhook | Gestion |
POST | /v1/webhooks/{id} | UpdateWebhook | Gestion |
DELETE | /v1/webhooks/{id} | DeleteWebhook | Gestion |
POST | /v1/webhooks/{id}/regenerate_signing_secret | RotateWebhookSecret | Gestion |
Les routes qui ne figurent pas dans ce tableau ne sont pas disponibles sur Claude Platform sur AWS. La passerelle refuse par défaut toute route non répertoriée ici.
Les routes de workspace sont les seules routes de l'Admin API disponibles sur Claude Platform sur AWS. La page Workspaces de la Claude Console est en lecture seule ; utilisez l'Admin API ou la console AWS pour créer, mettre à jour ou archiver des workspaces.
AWS fournit cinq politiques gérées pour Claude Platform sur AWS. Toutes les politiques gérées s'appliquent à Resource: "*".
| Politique | Accorde |
|---|---|
AnthropicFullAccess | aws-external-anthropic:* |
AnthropicReadOnlyAccess | Get*, List*, CallWithBearerToken |
AnthropicInferenceAccess | Get*, List*, CreateInference, CreateBatchInference, CancelBatchInference, DeleteBatchInference, CountTokens, CallWithBearerToken |
AnthropicLimitedAccess | Toutes les actions de AnthropicInferenceAccess, plus toutes les actions Claude Managed Agents (agents, sessions, environnements, vaults, memory stores, webhooks et travail d'environnement auto-hébergé) |
AnthropicSelfHostedEnvironmentAccess | GetEnvironment, ProcessEnvironmentWork, GetSession, UpdateSession, GetSkill, CallWithBearerToken |
AnthropicInferenceAccess est la politique gérée la plus restreinte suffisante pour exécuter l'inférence. Elle couvre à la fois l'inférence synchrone et par lots et, via les caractères génériques Get* et List*, accorde un accès en lecture à chaque ressource d'API de l'espace de noms, y compris les ressources Claude Managed Agents (CMA) (agents, sessions, environnements, vaults, memory stores et webhooks). Cela inclut le téléchargement du contenu de fichier via GetFile (voir la note Fichiers), le téléchargement du contenu de skill via GetSkill (voir la note Skills) et le contenu des mémoires via GetMemoryStore. Les secrets d'identifiants de vault et les secrets de signature de webhook ne sont pas exposés : ces champs sont en écriture seule et ne sont jamais renvoyés par GetVault ou GetWebhook (voir S'authentifier avec les vaults). AnthropicInferenceAccess n'accorde pas la création ou la suppression de fichiers, la gestion des skills, la gestion des profils utilisateur, la mutation de workspace, ni aucune action d'écriture Claude Managed Agents (création, mise à jour, archivage, suppression, traitement ou rotation). Pour exclure les lectures CMA, remplacez AnthropicInferenceAccess par une politique personnalisée qui énumère uniquement les actions non-CMA spécifiques dont vous avez besoin.
AnthropicReadOnlyAccess, AnthropicInferenceAccess et AnthropicLimitedAccess comportent toutes les caractères génériques Get* et List*, qui accordent un accès en lecture à tout le contenu du workspace : octets de fichier, contenu de skill, résultats de lot, historique de conversation de session et contenu des mémoires. Les secrets d'identifiants de vault et les secrets de signature de webhook ne sont pas exposés ; ces champs sont en écriture seule et ne sont jamais renvoyés par GetVault ou GetWebhook. Si votre principal ne doit pas lire le contenu existant, utilisez une politique personnalisée qui énumère uniquement les actions dont vous avez besoin.
AnthropicLimitedAccess inclut toutes les actions Claude Managed Agents en plus des actions d'inférence.
AnthropicSelfHostedEnvironmentAccess est la politique gérée la plus restreinte suffisante pour exécuter un worker de sandbox auto-hébergé. Attachez-la au principal sous lequel votre worker d'environnement s'authentifie.
AssumeConsole n'est pas incluse dans AnthropicReadOnlyAccess, AnthropicInferenceAccess, AnthropicLimitedAccess ou AnthropicSelfHostedEnvironmentAccess. Les principaux qui ont besoin d'un accès à la Claude Console nécessitent soit AnthropicFullAccess, soit une politique personnalisée qui accorde aws-external-anthropic:AssumeConsole. Voir Accès à la console.
CreateInference et CreateBatchInference sont des actions distinctes. Refuser l'une ne bloque pas l'autre. Si vous souhaitez empêcher tous les appels de modèle, refusez les deux.
Accorde les permissions minimales pour un principal IAM qui exécute l'inférence sur un seul workspace de production :
{
"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"
}
]
}ListWorkspaces a une portée de compte (voir Automatisation du provisionnement). Si votre compte de service doit énumérer les workspaces, ajoutez une instruction Allow distincte pour ListWorkspaces avec Resource: "*".
Cette politique suppose une authentification AWS SigV4. Si le principal s'authentifie avec une clé API, ajoutez une instruction Allow distincte pour aws-external-anthropic:CallWithBearerToken avec Resource: "*". CallWithBearerToken est une action sans route qui ne se lie pas à un ARN de workspace. Voir Isolation de workspace par client pour le modèle à deux instructions.
Restreint un rôle à un seul workspace :
{
"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": "*"
}
]
}Le caractère générique aws-external-anthropic:* dans la première instruction inclut des actions à portée de compte (CreateWorkspace, ListWorkspaces) que la contrainte d'ARN de workspace filtre silencieusement. Ceci est cohérent avec l'intention d'« isolation » (le rôle ne peut pas créer ni énumérer de workspaces), mais la politique contient des permissions qui n'ont aucun effet. Voir Automatisation du provisionnement pour le modèle à portée de compte.
CallWithBearerToken et AssumeConsole sont des actions sans route qui ne se lient pas à un ARN de workspace. La deuxième instruction les accorde sur Resource: "*" afin que le rôle puisse s'authentifier avec une clé API et ouvrir la Claude Console. Omettez cette instruction si le rôle utilise uniquement SigV4 et n'a pas besoin d'accès à la Claude Console.
Bloque le traitement par lots et le téléversement de fichiers sur un workspace spécifique tout en laissant l'inférence synchrone disponible. Utile lorsqu'un workspace traite des données Zero Data Retention (ZDR) qui ne doivent pas persister côté serveur. Attachez cette politique en complément d'une politique Allow telle que AnthropicInferenceAccess ou l'exemple de workspace unique ; seule, une politique Deny uniquement n'accorde aucune permission :
{
"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"
}
]
}Ce refus bloque uniquement la création. Les autres actions de fichier et de lot ne sont pas refusées à moins que vous ne les listiez également. Pour un verrouillage complet où le workspace ne doit jamais contenir de fichiers ni de lots, refusez également aws-external-anthropic:GetFile, aws-external-anthropic:ListFiles, aws-external-anthropic:DeleteFile, aws-external-anthropic:GetBatchInference, aws-external-anthropic:ListBatchInferences, aws-external-anthropic:CancelBatchInference et aws-external-anthropic:DeleteBatchInference.
La page Workspaces de la Claude Console est en lecture seule ; utilisez les points de terminaison de workspace de l'Admin API ou la console AWS pour créer, mettre à jour ou archiver des workspaces.
Accorde à un rôle CI/CD les actions nécessaires pour créer et gérer des workspaces, sans aucune permission d'inférence :
{
"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 et ListWorkspaces sont des opérations à portée de compte. Spécifier un ARN de workspace sur ces actions n'a aucun effet ; utilisez Resource: "*".
Was this page helpful?