6 6
7> Configura Claude Code per utilizzare l'API Claude gestita da Anthropic con autenticazione AWS, controllo dell'accesso IAM e fatturazione tramite AWS Marketplace.7> Configura Claude Code per utilizzare l'API Claude gestita da Anthropic con autenticazione AWS, controllo dell'accesso IAM e fatturazione tramite AWS Marketplace.
8 8
9export const ContactSalesCard = ({surface}) => {
10 const utm = content => `utm_source=claude_code&utm_medium=docs&utm_content=${surface}_${content}`;
11 const iconArrowRight = (size = 13) => <svg width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2.5" strokeLinecap="round" strokeLinejoin="round" aria-hidden="true">
12 <line x1="5" y1="12" x2="19" y2="12" />
13 <polyline points="12 5 19 12 12 19" />
14 </svg>;
15 const STYLES = `
16.cc-cs {
17 --cs-slate: #141413;
18 --cs-clay: #d97757;
19 --cs-clay-deep: #c6613f;
20 --cs-gray-000: #ffffff;
21 --cs-gray-700: #3d3d3a;
22 --cs-border-default: rgba(31, 30, 29, 0.15);
23 font-family: inherit;
24}
25.dark .cc-cs {
26 --cs-slate: #f0eee6;
27 --cs-gray-000: #262624;
28 --cs-gray-700: #bfbdb4;
29 --cs-border-default: rgba(240, 238, 230, 0.14);
30}
31.cc-cs-card {
32 display: flex; align-items: center; justify-content: space-between;
33 gap: 16px; padding: 14px 16px; margin: 0;
34 background: var(--cs-gray-000); border: 0.5px solid var(--cs-border-default);
35 border-radius: 8px; flex-wrap: wrap;
36}
37.cc-cs-text { font-size: 13px; color: var(--cs-gray-700); line-height: 1.5; flex: 1; min-width: 240px; }
38.cc-cs-text strong { font-weight: 550; color: var(--cs-slate); }
39.cc-cs-actions { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
40.cc-cs-btn-clay {
41 display: inline-flex; align-items: center; gap: 8px;
42 background: var(--cs-clay-deep); color: #fff; border: none;
43 border-radius: 8px; padding: 8px 14px;
44 font-size: 13px; font-weight: 500;
45 transition: background-color 0.15s; white-space: nowrap;
46}
47.cc-cs-btn-clay:hover { background: var(--cs-clay); }
48.cc-cs-btn-ghost {
49 display: inline-flex; align-items: center; gap: 8px;
50 background: transparent; color: var(--cs-gray-700);
51 border: 0.5px solid var(--cs-border-default);
52 border-radius: 8px; padding: 8px 14px;
53 font-size: 13px; font-weight: 500;
54}
55.cc-cs-btn-ghost:hover { background: rgba(0, 0, 0, 0.04); }
56.dark .cc-cs-btn-ghost:hover { background: rgba(255, 255, 255, 0.04); }
57@media (max-width: 720px) {
58 .cc-cs-actions { width: 100%; }
59}
60`;
61 return <div className="cc-cs not-prose">
62 <style>{STYLES}</style>
63 <div className="cc-cs-card">
64 <div className="cc-cs-text">
65 <strong>Deploying Claude Code across your organization?</strong> Talk to sales about enterprise plans, SSO, and centralized billing.
66 </div>
67 <div className="cc-cs-actions">
68 <a href={`https://claude.com/pricing?${utm('view_plans')}#plans-business`} className="cc-cs-btn-ghost">
69 View plans
70 </a>
71 <a href={`https://claude.com/contact-sales?${utm('contact_sales')}`} className="cc-cs-btn-clay">
72 Contact sales {iconArrowRight()}
73 </a>
74 </div>
75 </div>
76 </div>;
77};
78
79export const Experiment = ({flag, treatment, children}) => {
80 const VID_KEY = 'exp_vid';
81 const CONSENT_COUNTRIES = new Set(['AT', 'BE', 'BG', 'HR', 'CY', 'CZ', 'DK', 'EE', 'FI', 'FR', 'DE', 'GR', 'HU', 'IE', 'IT', 'LV', 'LT', 'LU', 'MT', 'NL', 'PL', 'PT', 'RO', 'SK', 'SI', 'ES', 'SE', 'RE', 'GP', 'MQ', 'GF', 'YT', 'BL', 'MF', 'PM', 'WF', 'PF', 'NC', 'AW', 'CW', 'SX', 'FO', 'GL', 'AX', 'GB', 'UK', 'AI', 'BM', 'IO', 'VG', 'KY', 'FK', 'GI', 'MS', 'PN', 'SH', 'TC', 'GG', 'JE', 'IM', 'CA', 'BR', 'IN']);
82 const fnv1a = s => {
83 let h = 0x811c9dc5;
84 for (let i = 0; i < s.length; i++) {
85 h ^= s.charCodeAt(i);
86 h += (h << 1) + (h << 4) + (h << 7) + (h << 8) + (h << 24);
87 }
88 return h >>> 0;
89 };
90 const bucket = (seed, vid) => fnv1a(fnv1a(seed + vid) + '') % 10000 < 5000 ? 'control' : 'treatment';
91 const [decision] = useState(() => {
92 const params = new URLSearchParams(location.search);
93 const preBucketed = document.documentElement.dataset['gb_' + flag.replace(/-/g, '_')];
94 const force = params.get('gb-force');
95 if (force) {
96 for (const p of force.split(',')) {
97 const [k, v] = p.split(':');
98 if (k === flag) return {
99 variant: v || 'treatment',
100 track: false
101 };
102 }
103 }
104 if (navigator.globalPrivacyControl) {
105 return {
106 variant: 'control',
107 track: false
108 };
109 }
110 const prefsMatch = document.cookie.match(/(?:^|; )anthropic-consent-preferences=([^;]+)/);
111 if (prefsMatch) {
112 try {
113 if (JSON.parse(decodeURIComponent(prefsMatch[1])).analytics !== true) {
114 return {
115 variant: 'control',
116 track: false
117 };
118 }
119 } catch {
120 return {
121 variant: 'control',
122 track: false
123 };
124 }
125 } else {
126 const country = params.get('country')?.toUpperCase() || (document.cookie.match(/(?:^|; )cf_geo=([A-Z]{2})/) || [])[1];
127 if (!country || CONSENT_COUNTRIES.has(country)) {
128 return {
129 variant: 'control',
130 track: false
131 };
132 }
133 }
134 let vid;
135 try {
136 const ajsMatch = document.cookie.match(/(?:^|; )ajs_anonymous_id=([^;]+)/);
137 if (ajsMatch) {
138 vid = decodeURIComponent(ajsMatch[1]).replace(/^"|"$/g, '');
139 } else {
140 vid = localStorage.getItem(VID_KEY);
141 if (!vid) {
142 vid = crypto.randomUUID();
143 }
144 document.cookie = `ajs_anonymous_id=${vid}; domain=.claude.com; path=/; Secure; SameSite=Lax; max-age=31536000`;
145 }
146 try {
147 localStorage.setItem(VID_KEY, vid);
148 } catch {}
149 } catch {
150 return {
151 variant: 'control',
152 track: false
153 };
154 }
155 const variant = preBucketed === '1' ? 'treatment' : preBucketed === '0' ? 'control' : bucket(flag, vid);
156 return {
157 variant,
158 track: true,
159 vid
160 };
161 });
162 useEffect(() => {
163 if (!decision.track) return;
164 fetch('https://api.anthropic.com/api/event_logging/v2/batch', {
165 method: 'POST',
166 headers: {
167 'Content-Type': 'application/json',
168 'x-service-name': 'claude_code_docs'
169 },
170 body: JSON.stringify({
171 events: [{
172 event_type: 'GrowthbookExperimentEvent',
173 event_data: {
174 device_id: decision.vid,
175 anonymous_id: decision.vid,
176 timestamp: new Date().toISOString(),
177 experiment_id: flag,
178 variation_id: decision.variant === 'treatment' ? 1 : 0,
179 environment: 'production'
180 }
181 }]
182 }),
183 keepalive: true
184 }).catch(() => {});
185 }, []);
186 return decision.variant === 'treatment' ? treatment : children;
187};
188
189<Experiment flag="docs-contact-sales-cta" treatment={<ContactSalesCard surface="claude_platform_on_aws" />} />
190
191Claude Platform on AWS è l'API Claude gestita da Anthropic con autenticazione AWS, controllo dell'accesso IAM e fatturazione tramite AWS Marketplace. Le richieste raggiungono direttamente l'API di Anthropic, quindi si ottengono gli stessi modelli e funzionalità dell'[API Claude](https://platform.claude.com/docs) con la stessa pianificazione dei rilasci. L'autenticazione avviene con le credenziali AWS o una chiave API dell'area di lavoro, e il pagamento avviene tramite AWS Marketplace.9Claude Platform on AWS è l'API Claude gestita da Anthropic con autenticazione AWS, controllo dell'accesso IAM e fatturazione tramite AWS Marketplace. Le richieste raggiungono direttamente l'API di Anthropic, quindi si ottengono gli stessi modelli e funzionalità dell'[API Claude](https://platform.claude.com/docs) con la stessa pianificazione dei rilasci. L'autenticazione avviene con le credenziali AWS o una chiave API dell'area di lavoro, e il pagamento avviene tramite AWS Marketplace.
192 10
193Utilizzare questa guida per indirizzare Claude Code a un'area di lavoro già fornita tramite Claude Platform on AWS. Per la sottoscrizione AWS e la configurazione dell'area di lavoro che precede questo, consultare la [documentazione di Claude Platform on AWS](https://platform.claude.com/docs/en/build-with-claude/claude-platform-on-aws).11Utilizzare questa guida per indirizzare Claude Code a un'area di lavoro già fornita tramite Claude Platform on AWS. Per la sottoscrizione AWS e la configurazione dell'area di lavoro che precede questo, consultare la [documentazione di Claude Platform on AWS](https://platform.claude.com/docs/en/build-with-claude/claude-platform-on-aws).
196 L'iscrizione tramite AWS Marketplace fornisce una nuova organizzazione Anthropic collegata al proprio account AWS. Questa organizzazione è separata da qualsiasi organizzazione già presente con Anthropic e le credenziali non si trasferiscono tra loro. Utilizzare l'ID dell'area di lavoro e le chiavi API dall'organizzazione collegata ad AWS, non da un account Claude Console preesistente.14 L'iscrizione tramite AWS Marketplace fornisce una nuova organizzazione Anthropic collegata al proprio account AWS. Questa organizzazione è separata da qualsiasi organizzazione già presente con Anthropic e le credenziali non si trasferiscono tra loro. Utilizzare l'ID dell'area di lavoro e le chiavi API dall'organizzazione collegata ad AWS, non da un account Claude Console preesistente.
197</Note>15</Note>
198 16
199## Prerequisiti17<h2 id="prerequisites">
18 Prerequisiti
19</h2>
200 20
201Prima di configurare Claude Code, è necessario disporre di:21Prima di configurare Claude Code, è necessario disporre di:
202 22
205* Un principale IAM con autorizzazione per invocare il servizio Anthropic, oppure una chiave API limitata all'area di lavoro25* Un principale IAM con autorizzazione per invocare il servizio Anthropic, oppure una chiave API limitata all'area di lavoro
206* Credenziali AWS nel proprio ambiente, in `~/.aws/credentials`, o da un ruolo IAM collegato se si desidera l'autenticazione SigV4. L'AWS CLI è richiesta solo per il flusso di accesso SSO.26* Credenziali AWS nel proprio ambiente, in `~/.aws/credentials`, o da un ruolo IAM collegato se si desidera l'autenticazione SigV4. L'AWS CLI è richiesta solo per il flusso di accesso SSO.
207 27
208## Configurazione28<h2 id="setup">
29 Configurazione
30</h2>
209 31
210### 1. Configurare le credenziali AWS32<h3 id="1-configure-aws-credentials">
33 1. Configurare le credenziali AWS
34</h3>
211 35
212Claude Code supporta due metodi di autenticazione per Claude Platform on AWS. Scegliere il metodo che si adatta al modo in cui il team gestisce l'accesso.36Claude Code supporta due metodi di autenticazione per Claude Platform on AWS. Scegliere il metodo che si adatta al modo in cui il team gestisce l'accesso.
213 37
248 I comandi `/login` e `/logout` non modificano l'autenticazione di Claude Platform on AWS. L'autenticazione viene eseguita tramite le credenziali AWS o la chiave API dell'area di lavoro, non tramite una sottoscrizione Claude.ai.72 I comandi `/login` e `/logout` non modificano l'autenticazione di Claude Platform on AWS. L'autenticazione viene eseguita tramite le credenziali AWS o la chiave API dell'area di lavoro, non tramite una sottoscrizione Claude.ai.
249</Note>73</Note>
250 74
251### 2. Configurare Claude Code75<h3 id="2-configure-claude-code">
76 2. Configurare Claude Code
77</h3>
252 78
253Impostare le variabili di ambiente che indirizzano Claude Code attraverso Claude Platform on AWS invece dell'API Anthropic predefinita.79Impostare le variabili di ambiente che indirizzano Claude Code attraverso Claude Platform on AWS invece dell'API Anthropic predefinita.
254 80
262 88
263Claude Platform on AWS è facoltativo anche quando le credenziali AWS sono presenti nel proprio ambiente. Bedrock e Foundry hanno la precedenza nel routing dei provider, quindi annullare l'impostazione di `CLAUDE_CODE_USE_BEDROCK` e `CLAUDE_CODE_USE_FOUNDRY` se sono impostati.89Claude Platform on AWS è facoltativo anche quando le credenziali AWS sono presenti nel proprio ambiente. Bedrock e Foundry hanno la precedenza nel routing dei provider, quindi annullare l'impostazione di `CLAUDE_CODE_USE_BEDROCK` e `CLAUDE_CODE_USE_FOUNDRY` se sono impostati.
264 90
265### 3. Fissare le versioni dei modelli91<h3 id="3-pin-model-versions">
92 3. Fissare le versioni dei modelli
93</h3>
266 94
267Claude Platform on AWS utilizza gli stessi ID modello dell'API Claude diretta. Gli alias predefiniti `opus`, `sonnet` e `haiku` si risolvono alle versioni più recenti disponibili nell'area di lavoro.95Claude Platform on AWS utilizza gli stessi ID modello dell'API Claude diretta. Gli alias predefiniti `opus`, `sonnet` e `haiku` si risolvono alle versioni più recenti disponibili nell'area di lavoro.
268 96
276 104
277Per l'elenco completo degli ID modello e degli alias, consultare [Panoramica dei modelli](https://platform.claude.com/docs/en/about-claude/models/overview). Per altre variabili relative ai modelli, consultare [Configurazione del modello](/it/model-config).105Per l'elenco completo degli ID modello e degli alias, consultare [Panoramica dei modelli](https://platform.claude.com/docs/en/about-claude/models/overview). Per altre variabili relative ai modelli, consultare [Configurazione del modello](/it/model-config).
278 106
279[Prompt caching](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) è abilitato automaticamente. Le scritture della cache di 1 ora vengono fatturate a una tariffa più alta rispetto alle scritture di 5 minuti. Per richiedere un TTL della cache di 1 ora invece del valore predefinito di 5 minuti, impostare `ENABLE_PROMPT_CACHING_1H=1`.107[Prompt caching](/it/prompt-caching) è abilitato automaticamente. Per richiedere un TTL della cache di 1 ora invece del valore predefinito di 5 minuti, impostare `ENABLE_PROMPT_CACHING_1H=1`. L'API fattura le scritture della cache di 1 ora a una tariffa più alta. Consultare [prezzi del prompt caching](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#pricing) per le tariffe.
280 108
281## Utilizzare l'Agent SDK109<h2 id="use-the-agent-sdk">
110 Utilizzare l'Agent SDK
111</h2>
282 112
283L'[Agent SDK](/it/agent-sdk/overview) legge le stesse variabili di ambiente della CLI, quindi qualsiasi programma che genera il sottoprocesso Claude Code può indirizzare Claude Platform on AWS esportando `CLAUDE_CODE_USE_ANTHROPIC_AWS`, `ANTHROPIC_AWS_WORKSPACE_ID` e `ANTHROPIC_AWS_API_KEY` o credenziali AWS prima della chiamata.113L'[Agent SDK](/it/agent-sdk/overview) legge le stesse variabili di ambiente della CLI, quindi qualsiasi programma che genera il sottoprocesso Claude Code può indirizzare Claude Platform on AWS esportando `CLAUDE_CODE_USE_ANTHROPIC_AWS`, `ANTHROPIC_AWS_WORKSPACE_ID` e `ANTHROPIC_AWS_API_KEY` o credenziali AWS prima della chiamata.
284 114
296 126
297Questo esempio si basa sulla catena di credenziali AWS ambientale per SigV4. Per autenticarsi con una chiave API dell'area di lavoro, impostare `ANTHROPIC_AWS_API_KEY` allo stesso modo. Per la superficie più ampia dell'Agent SDK, consultare [Panoramica dell'Agent SDK](/it/agent-sdk/overview).127Questo esempio si basa sulla catena di credenziali AWS ambientale per SigV4. Per autenticarsi con una chiave API dell'area di lavoro, impostare `ANTHROPIC_AWS_API_KEY` allo stesso modo. Per la superficie più ampia dell'Agent SDK, consultare [Panoramica dell'Agent SDK](/it/agent-sdk/overview).
298 128
299## Instradare attraverso un proxy aziendale129<h2 id="route-through-a-corporate-proxy">
130 Instradare attraverso un proxy aziendale
131</h2>
300 132
301Per instradare il traffico attraverso un proxy o un [gateway LLM](/it/llm-gateway), impostare `ANTHROPIC_AWS_BASE_URL` all'indirizzo del proxy. Claude Code invia richieste a quell'URL con le stesse intestazioni di area di lavoro e autenticazione, quindi qualsiasi gateway che le inoltri invariate funziona.133Per instradare il traffico attraverso un proxy o un [gateway LLM](/it/llm-gateway), impostare `ANTHROPIC_AWS_BASE_URL` all'indirizzo del proxy. Claude Code invia richieste a quell'URL con le stesse intestazioni di area di lavoro e autenticazione, quindi qualsiasi gateway che le inoltri invariate funziona.
302 134
315export ANTHROPIC_AWS_BASE_URL=https://anthropic-proxy.example.com147export ANTHROPIC_AWS_BASE_URL=https://anthropic-proxy.example.com
316```148```
317 149
318## Troubleshooting150<h2 id="troubleshooting">
151 Troubleshooting
152</h2>
319 153
320Eseguire `/status` per visualizzare il provider risolto e qualsiasi ID dell'area di lavoro configurato esplicitamente, override della regione, override dell'URL di base e impostazione di skip dell'autenticazione. Questo è il modo più veloce per confermare che Claude Code sta indirizzando Claude Platform on AWS.154Eseguire `/status` per visualizzare il provider risolto e qualsiasi ID dell'area di lavoro configurato esplicitamente, override della regione, override dell'URL di base e impostazione di skip dell'autenticazione. Questo è il modo più veloce per confermare che Claude Code sta indirizzando Claude Platform on AWS.
321 155
322### `403 Forbidden` o `AccessDenied` su ogni richiesta156<h3 id="403-forbidden-or-accessdenied-on-every-request">
157 `403 Forbidden` o `AccessDenied` su ogni richiesta
158</h3>
323 159
324Il principale IAM che Claude Code ha risolto probabilmente manca dell'autorizzazione per invocare il servizio Anthropic nell'area di lavoro. Controllare il ruolo collegato al profilo AWS o al runner che ha avviato Claude Code e verificare che disponga delle azioni `aws-external-anthropic` documentate nel [riferimento delle azioni IAM](https://platform.claude.com/docs/en/api/claude-platform-on-aws-iam-actions).160Il principale IAM che Claude Code ha risolto probabilmente manca dell'autorizzazione per invocare il servizio Anthropic nell'area di lavoro. Controllare il ruolo collegato al profilo AWS o al runner che ha avviato Claude Code e verificare che disponga delle azioni `aws-external-anthropic` documentate nel [riferimento delle azioni IAM](https://platform.claude.com/docs/en/api/claude-platform-on-aws-iam-actions).
325 161
326Se è stato impostato `ANTHROPIC_AWS_API_KEY`, la chiave ha la precedenza su SigV4 e una chiave obsoleta produce lo stesso errore. Rigenerare la chiave nella console AWS in **Claude Platform on AWS → API keys** o annullare l'impostazione della variabile per tornare alle credenziali AWS.162Se è stato impostato `ANTHROPIC_AWS_API_KEY`, la chiave ha la precedenza su SigV4 e una chiave obsoleta produce lo stesso errore. Rigenerare la chiave nella console AWS in **Claude Platform on AWS → API keys** o annullare l'impostazione della variabile per tornare alle credenziali AWS.
327 163
328### Le richieste non riescono con un errore di area di lavoro mancante164<h3 id="requests-fail-with-a-missing-workspace-error">
165 Le richieste non riescono con un errore di area di lavoro mancante
166</h3>
329 167
330`ANTHROPIC_AWS_WORKSPACE_ID` è probabilmente non impostato o vuoto. Ogni richiesta di Claude Platform on AWS deve includere l'ID dell'area di lavoro. Non è implicito dalle credenziali AWS. Trovare l'ID in **Workspaces** nella pagina del servizio della console AWS ed esportarlo prima di avviare Claude Code.168`ANTHROPIC_AWS_WORKSPACE_ID` è probabilmente non impostato o vuoto. Ogni richiesta di Claude Platform on AWS deve includere l'ID dell'area di lavoro. Non è implicito dalle credenziali AWS. Trovare l'ID in **Workspaces** nella pagina del servizio della console AWS ed esportarlo prima di avviare Claude Code.
331 169
332### Le richieste vanno ancora a `api.anthropic.com`170<h3 id="requests-still-go-to-api-anthropic-com">
171 Le richieste vanno ancora a `api.anthropic.com`
172</h3>
333 173
334`CLAUDE_CODE_USE_ANTHROPIC_AWS` è probabilmente non impostato o impostato su un valore che non viene analizzato come veritiero. Impostarlo su `1` ed eseguire `/status` per confermare il provider risolto. Se è impostato anche `CLAUDE_CODE_USE_BEDROCK` o `CLAUDE_CODE_USE_FOUNDRY`, questi hanno la precedenza su Claude Platform on AWS.174`CLAUDE_CODE_USE_ANTHROPIC_AWS` è probabilmente non impostato o impostato su un valore che non viene analizzato come veritiero. Impostarlo su `1` ed eseguire `/status` per confermare il provider risolto. Se è impostato anche `CLAUDE_CODE_USE_BEDROCK` o `CLAUDE_CODE_USE_FOUNDRY`, questi hanno la precedenza su Claude Platform on AWS.
335 175
336## Risorse aggiuntive176<h2 id="additional-resources">
177 Risorse aggiuntive
178</h2>
337 179
338La sottoscrizione a Claude Platform on AWS, la configurazione dell'area di lavoro e IAM che precede la configurazione di Claude Code è coperta nella documentazione della piattaforma:180La sottoscrizione a Claude Platform on AWS, la configurazione dell'area di lavoro e IAM che precede la configurazione di Claude Code è coperta nella documentazione della piattaforma:
339 181