6 6
7> 配置 Claude Code 以使用 Anthropic 运营的 Claude API,支持 AWS 身份验证、IAM 访问控制和 AWS Marketplace 计费。7> 配置 Claude Code 以使用 Anthropic 运营的 Claude API,支持 AWS 身份验证、IAM 访问控制和 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
191AWS 上的 Claude Platform 是 Anthropic 运营的 Claude API,支持 AWS 身份验证、IAM 访问控制和 AWS Marketplace 计费。请求直接到达 Anthropic 的 API,因此您获得与 [Claude API](https://platform.claude.com/docs) 相同的模型和 API 功能,并遵循相同的发布计划。您使用 AWS 凭证或工作区 API 密钥进行身份验证,并通过 AWS Marketplace 付款。9AWS 上的 Claude Platform 是 Anthropic 运营的 Claude API,支持 AWS 身份验证、IAM 访问控制和 AWS Marketplace 计费。请求直接到达 Anthropic 的 API,因此您获得与 [Claude API](https://platform.claude.com/docs) 相同的模型和 API 功能,并遵循相同的发布计划。您使用 AWS 凭证或工作区 API 密钥进行身份验证,并通过 AWS Marketplace 付款。
192 10
193Claude Code 通过 Anthropic 的功能标志服务启用的客户端功能默认处于关闭状态,[advisor 工具](/docs/zh-CN/advisor)不可用。有关完整列表,请参阅[功能可用性矩阵](/docs/zh-CN/feature-availability#summary-by-provider)。11Claude Code 通过 Anthropic 的功能标志服务启用的客户端功能默认处于关闭状态,[advisor 工具](/docs/zh-CN/advisor)不可用。有关完整列表,请参阅[功能可用性矩阵](/docs/zh-CN/feature-availability#summary-by-provider)。
194 12
195使用本指南将 Claude Code 指向您已通过 AWS 上的 Claude Platform 配置的工作区。有关在此之前的 AWS 订阅和工作区设置,请参阅 [AWS 上的 Claude Platform 文档](https://platform.claude.com/docs/en/build-with-claude/claude-platform-on-aws)。13使用本指南将 Claude Code 指向您已通过 AWS 上的 Claude Platform 配置的工作区。有关在此之前的 AWS 订阅和工作区设置,请参阅 [AWS 上的 Claude Platform 文档](https://platform.claude.com/docs/en/build-with-claude/claude-platform-on-aws)。
196 14
197<Note>15> [!NOTE]
198 通过 AWS Marketplace 订阅会配置一个与您的 AWS 账户关联的新 Anthropic 组织。此组织与您已有的任何 Anthropic 组织分开,凭证不会在它们之间转移。使用来自 AWS 关联组织的工作区 ID 和 API 密钥,而不是来自预先存在的 Claude Console 账户的凭证。16>
199</Note>17> 通过 AWS Marketplace 订阅会配置一个与您的 AWS 账户关联的新 Anthropic 组织。此组织与您已有的任何 Anthropic 组织分开,凭证不会在它们之间转移。使用来自 AWS 关联组织的工作区 ID 和 API 密钥,而不是来自预先存在的 Claude Console 账户的凭证。
200 18
201<h2 id="prerequisites">19## 前置条件
202 前置条件
203</h2>
204 20
205在配置 Claude Code 之前,您需要:21在配置 Claude Code 之前,您需要:
206 22
209* 具有调用 Anthropic 服务权限的 IAM 主体,或限定于工作区的 API 密钥25* 具有调用 Anthropic 服务权限的 IAM 主体,或限定于工作区的 API 密钥
210* 您环境中的 AWS 凭证、`~/.aws/credentials` 中的凭证,或来自附加 IAM 角色的凭证(如果您想要 SigV4 身份验证)。AWS CLI 仅在 SSO 登录流程中是必需的。26* 您环境中的 AWS 凭证、`~/.aws/credentials` 中的凭证,或来自附加 IAM 角色的凭证(如果您想要 SigV4 身份验证)。AWS CLI 仅在 SSO 登录流程中是必需的。
211 27
212<h2 id="setup">28## 设置
213 设置
214</h2>
215 29
216<h3 id="1-configure-aws-credentials">30### 配置 AWS 凭证
217 1. 配置 AWS 凭证
218</h3>
219 31
220Claude Code 支持两种 AWS 上的 Claude Platform 身份验证方法。请根据您的团队管理访问的方式选择合适的方法:32Claude Code 支持两种 AWS 上的 Claude Platform 身份验证方法。请根据您的团队管理访问的方式选择合适的方法:
221 33
222* [使用 SigV4 的 AWS 凭据](#use-aws-credentials-with-sigv4):以 IAM 主体身份进行身份验证,凭据来自标准 AWS 凭据链34* [使用 SigV4 的 AWS 凭据](#use-aws-credentials-with-sigv4):以 IAM 主体身份进行身份验证,凭据来自标准 AWS 凭据链
223* [工作区 API 密钥](#use-a-workspace-api-key):使用您在 AWS Console 中生成的长期有效密钥进行身份验证35* [工作区 API 密钥](#use-a-workspace-api-key):使用您在 AWS Console 中生成的长期有效密钥进行身份验证
224 36
225<h4 id="use-aws-credentials-with-sigv4">37#### 使用 SigV4 的 AWS 凭据
226 使用 SigV4 的 AWS 凭据
227</h4>
228 38
229Claude Code 使用标准 AWS 凭证链使用 SigV4 对请求进行签名:环境变量、`~/.aws/credentials` 中的共享凭证、IAM 角色、AWS SSO 会话以及 AWS SDK 支持的任何其他来源。39Claude Code 使用标准 AWS 凭证链使用 SigV4 对请求进行签名:环境变量、`~/.aws/credentials` 中的共享凭证、IAM 角色、AWS SSO 会话以及 AWS SDK 支持的任何其他来源。
230 40
249 59
250配置了 `awsAuthRefresh` 后,运行 `/login`,选择 **3rd-party platform**,然后在 **Using 3rd-party platforms** 下选择 **Claude Platform on AWS · refresh credentials**。Claude Code 运行配置的命令并重新读取您的 AWS 凭证,无需重启。60配置了 `awsAuthRefresh` 后,运行 `/login`,选择 **3rd-party platform**,然后在 **Using 3rd-party platforms** 下选择 **Claude Platform on AWS · refresh credentials**。Claude Code 运行配置的命令并重新读取您的 AWS 凭证,无需重启。
251 61
252<h4 id="use-a-workspace-api-key">62#### 使用工作区 API 密钥
253 使用工作区 API 密钥
254</h4>
255 63
256工作区 API 密钥是一个长期有效的密钥,当您不想管理联合 AWS 凭证时很有用。在 AWS Console 中的 **Claude Platform on AWS → API keys** 下生成一个,并将其设置为 `ANTHROPIC_AWS_API_KEY`:64工作区 API 密钥是一个长期有效的密钥,当您不想管理联合 AWS 凭证时很有用。在 AWS Console 中的 **Claude Platform on AWS → API keys** 下生成一个,并将其设置为 `ANTHROPIC_AWS_API_KEY`:
257 65
263 71
264像对待任何其他生产凭证一样对待工作区 API 密钥。[用户设置文件](/docs/zh-CN/settings) `env` 块是一种方便的方式,可以将密钥限定于您的机器,而无需全局导出。72像对待任何其他生产凭证一样对待工作区 API 密钥。[用户设置文件](/docs/zh-CN/settings) `env` 块是一种方便的方式,可以将密钥限定于您的机器,而无需全局导出。
265 73
266<Note>74> [!NOTE]
267 `/login` 和 `/logout` 命令不会将您登录到 Claude Platform on AWS 的 claude.ai 订阅。身份验证通过您的 AWS 凭证或工作区 API 密钥运行。75>
268</Note>76> `/login` 和 `/logout` 命令不会将您登录到 Claude Platform on AWS 的 claude.ai 订阅。身份验证通过您的 AWS 凭证或工作区 API 密钥运行。
269 77
270<h3 id="2-configure-claude-code">78### 配置 Claude Code
271 2. 配置 Claude Code
272</h3>
273 79
274设置环境变量,将 Claude Code 路由通过 AWS 上的 Claude Platform,而不是默认的 Anthropic API。80设置环境变量,将 Claude Code 路由通过 AWS 上的 Claude Platform,而不是默认的 Anthropic API。
275 81
285 91
286即使您的环境中存在 AWS 凭证,AWS 上的 Claude Platform 也是可选的。Amazon Bedrock 和 Microsoft Foundry 在提供程序路由中优先,因此如果设置了 `CLAUDE_CODE_USE_BEDROCK` 和 `CLAUDE_CODE_USE_FOUNDRY`,请取消设置它们。92即使您的环境中存在 AWS 凭证,AWS 上的 Claude Platform 也是可选的。Amazon Bedrock 和 Microsoft Foundry 在提供程序路由中优先,因此如果设置了 `CLAUDE_CODE_USE_BEDROCK` 和 `CLAUDE_CODE_USE_FOUNDRY`,请取消设置它们。
287 93
288<h3 id="3-pin-model-versions">94### 固定模型版本
289 3. 固定模型版本
290</h3>
291 95
292AWS 上的 Claude Platform 使用与直接 Claude API 相同的模型 ID。96AWS 上的 Claude Platform 使用与直接 Claude API 相同的模型 ID。
293 97
308 112
309要为您的主对话和 Claude Code 在其外部进行的请求设置不同的 TTL,请[自己选择 TTL](/docs/zh-CN/prompt-caching#choose-the-ttl-yourself)。113要为您的主对话和 Claude Code 在其外部进行的请求设置不同的 TTL,请[自己选择 TTL](/docs/zh-CN/prompt-caching#choose-the-ttl-yourself)。
310 114
311<h3 id="4-launch-and-verify">115### 启动并验证
312 4. 启动并验证
313</h3>
314 116
315启动 Claude Code 并确认路由:117启动 Claude Code 并确认路由:
316 118
320 122
321当提供程序处于活动状态时,启动横幅显示 `Claude Platform on AWS`。运行 `/status` 检查详细信息:`API provider` 行读取 `Claude Platform on AWS`,输出包括您的 `Workspace ID`、`AWS region` 和 `Claude Platform on AWS base URL`(如果您设置了覆盖)。123当提供程序处于活动状态时,启动横幅显示 `Claude Platform on AWS`。运行 `/status` 检查详细信息:`API provider` 行读取 `Claude Platform on AWS`,输出包括您的 `Workspace ID`、`AWS region` 和 `Claude Platform on AWS base URL`(如果您设置了覆盖)。
322 124
323<h2 id="use-the-agent-sdk">125## 使用 Agent SDK
324 使用 Agent SDK
325</h2>
326 126
327[Agent SDK](/docs/zh-CN/agent-sdk/overview) 读取与 CLI 相同的环境变量,因此任何生成 Claude Code 子进程的程序都可以通过在调用前导出 `CLAUDE_CODE_USE_ANTHROPIC_AWS`、`ANTHROPIC_AWS_WORKSPACE_ID` 和 `ANTHROPIC_AWS_API_KEY` 或 AWS 凭证来针对 AWS 上的 Claude Platform。127[Agent SDK](/docs/zh-CN/agent-sdk/overview) 读取与 CLI 相同的环境变量,因此任何生成 Claude Code 子进程的程序都可以通过在调用前导出 `CLAUDE_CODE_USE_ANTHROPIC_AWS`、`ANTHROPIC_AWS_WORKSPACE_ID` 和 `ANTHROPIC_AWS_API_KEY` 或 AWS 凭证来针对 AWS 上的 Claude Platform。
328 128
340 140
341此示例依赖于环境 AWS 凭证链进行 SigV4。要改为使用工作区 API 密钥进行身份验证,请以相同方式设置 `ANTHROPIC_AWS_API_KEY`。有关更广泛的 Agent SDK 表面,请参阅 [Agent SDK overview](/docs/zh-CN/agent-sdk/overview)。141此示例依赖于环境 AWS 凭证链进行 SigV4。要改为使用工作区 API 密钥进行身份验证,请以相同方式设置 `ANTHROPIC_AWS_API_KEY`。有关更广泛的 Agent SDK 表面,请参阅 [Agent SDK overview](/docs/zh-CN/agent-sdk/overview)。
342 142
343<h2 id="route-through-a-corporate-proxy">143## 通过企业代理路由
344 通过企业代理路由
345</h2>
346 144
347要通过代理或 [LLM gateway](/docs/zh-CN/llm-gateway) 路由流量,请将 `ANTHROPIC_AWS_BASE_URL` 设置为代理的地址。Claude Code 将请求发送到该 URL,并使用相同的工作区和身份验证标头,因此任何转发它们不变的网关都可以工作。145要通过代理或 [LLM gateway](/docs/zh-CN/llm-gateway) 路由流量,请将 `ANTHROPIC_AWS_BASE_URL` 设置为代理的地址。Claude Code 将请求发送到该 URL,并使用相同的工作区和身份验证标头,因此任何转发它们不变的网关都可以工作。
348 146
361export ANTHROPIC_AWS_BASE_URL=https://anthropic-proxy.example.com159export ANTHROPIC_AWS_BASE_URL=https://anthropic-proxy.example.com
362```160```
363 161
364<h2 id="troubleshooting">162## 故障排除
365 故障排除
366</h2>
367 163
368运行 `/status` 以查看已解析的提供程序以及任何显式配置的工作区 ID、区域、基础 URL 覆盖和身份验证跳过设置。这是确认 Claude Code 是否针对 AWS 上的 Claude Platform 的最快方法。164运行 `/status` 以查看已解析的提供程序以及任何显式配置的工作区 ID、区域、基础 URL 覆盖和身份验证跳过设置。这是确认 Claude Code 是否针对 AWS 上的 Claude Platform 的最快方法。
369 165
370<h3 id="403-forbidden-or-accessdenied-on-every-request">166### `403 Forbidden` 或 `AccessDenied` 在每个请求上
371 `403 Forbidden` 或 `AccessDenied` 在每个请求上
372</h3>
373 167
374Claude Code 解析的 IAM 主体可能缺少在您的工作区中调用 Anthropic 服务的权限。检查附加到您的 AWS 配置文件或启动 Claude Code 的运行程序的角色,并验证它具有 [IAM action reference](https://platform.claude.com/docs/zh-CN/api/claude-platform-on-aws-iam-actions) 中记录的 `aws-external-anthropic` 操作。168Claude Code 解析的 IAM 主体可能缺少在您的工作区中调用 Anthropic 服务的权限。检查附加到您的 AWS 配置文件或启动 Claude Code 的运行程序的角色,并验证它具有 [IAM action reference](https://platform.claude.com/docs/zh-CN/api/claude-platform-on-aws-iam-actions) 中记录的 `aws-external-anthropic` 操作。
375 169
376如果您设置了 `ANTHROPIC_AWS_API_KEY`,该密钥优先于 SigV4,过期的密钥会产生相同的错误。在 AWS Console 中的 **Claude Platform on AWS → API keys** 下重新生成密钥,或取消设置变量以回退到您的 AWS 凭证。170如果您设置了 `ANTHROPIC_AWS_API_KEY`,该密钥优先于 SigV4,过期的密钥会产生相同的错误。在 AWS Console 中的 **Claude Platform on AWS → API keys** 下重新生成密钥,或取消设置变量以回退到您的 AWS 凭证。
377 171
378<h3 id="requests-fail-with-a-missing-workspace-error">172### 请求失败,出现缺少工作区错误
379 请求失败,出现缺少工作区错误
380</h3>
381 173
382`ANTHROPIC_AWS_WORKSPACE_ID` 可能未设置或为空。每个 Claude Platform on AWS 请求都必须包含工作区 ID。它不是由您的 AWS 凭证隐含的。在您的 Claude Platform on AWS 设置中找到 ID,并在启动 Claude Code 之前导出它。174`ANTHROPIC_AWS_WORKSPACE_ID` 可能未设置或为空。每个 Claude Platform on AWS 请求都必须包含工作区 ID。它不是由您的 AWS 凭证隐含的。在您的 Claude Platform on AWS 设置中找到 ID,并在启动 Claude Code 之前导出它。
383 175
384<h3 id="requests-still-go-to-api-anthropic-com">176### 请求仍然转到 `api.anthropic.com`
385 请求仍然转到 `api.anthropic.com`
386</h3>
387 177
388`CLAUDE_CODE_USE_ANTHROPIC_AWS` 可能未设置或设置为不解析为真值的值。将其设置为 `1` 并运行 `/status` 以确认已解析的提供程序。如果还设置了 `CLAUDE_CODE_USE_BEDROCK` 或 `CLAUDE_CODE_USE_FOUNDRY`,这些会优先于 AWS 上的 Claude Platform。178`CLAUDE_CODE_USE_ANTHROPIC_AWS` 可能未设置或设置为不解析为真值的值。将其设置为 `1` 并运行 `/status` 以确认已解析的提供程序。如果还设置了 `CLAUDE_CODE_USE_BEDROCK` 或 `CLAUDE_CODE_USE_FOUNDRY`,这些会优先于 AWS 上的 Claude Platform。
389 179
390<h2 id="additional-resources">180## 其他资源
391 其他资源
392</h2>
393 181
394配置 Claude Code 之前的 AWS 上的 Claude Platform 订阅、工作区和 IAM 设置在平台文档中介绍:182配置 Claude Code 之前的 AWS 上的 Claude Platform 订阅、工作区和 IAM 设置在平台文档中介绍:
395 183