Amazon BedrockãClaude Platform on AWSãGoogle CloudãMicrosoft Foundry åã Claude ã¢ããªã²ãŒããŠã§ã€
SSO ãµã€ã³ã€ã³ãã°ã«ãŒãããšã®ã¢ãã«ã¢ã¯ã»ã¹ãOTLP ãã¬ã¡ããªãåããèªå·±ãã¹ãåã²ãŒããŠã§ã€ãéããŠãAmazon BedrockãClaude Platform on AWSãGoogle CloudããŸã㯠Microsoft Foundry ã§ Claude Code ãå®è¡ããŸãã
Claude ã¢ããªã²ãŒããŠã§ã€ã¯ãããŒã¿ã¬ãžãã³ã·ãŒèŠä»¶ãæºãããªã©ãç¬èªã®ã¯ã©ãŠããããã€ããŒãéããŠæšè«ãã«ãŒãã£ã³ã°ããå¿ èŠãããããŸãã¯åžæããçµç¹åãã«èšèšãããŠããŸãããã®èŠä»¶ããªãå ŽåãSCIM ããããžã§ãã³ã°ã webã»ã¢ãã€ã«äžã® Claude Code ãªã©ã®ä»ã®æ©èœãžã®ã¢ã¯ã»ã¹ãåžæããå Žåã¯ãClaude Enterprise ã®æ¹ãããé©åã§ããå¯èœæ§ããããŸãããã¹ãŠã®ãããã€ã¡ã³ãæ¹æ³ã®å®å šãªæ¯èŒã«ã€ããŠã¯ãæ©èœå¯çšæ§ããŒãžãåç §ããŠãã ããã
Claude ã¢ããªã²ãŒããŠã§ã€ã¯ãéçºè ã® Claude Code ã¯ã©ã€ã¢ã³ããšã¢ãã«ãããã€ããŒã®éã«äœçœ®ããèªå·±ãã¹ãåãµãŒãã¹ã§ããéçºè 㯠API ããŒãã¯ã©ãŠãèªèšŒæ å ±ãä¿æãã代ããã«ãäŒæ¥ã® ID ãããã€ããŒïŒIdPïŒã§ãµã€ã³ã€ã³ããŸããã²ãŒããŠã§ã€ã¯ã¢ããã¹ããªãŒã èªèšŒæ å ±ãä¿æããIdP ã°ã«ãŒãã«ããã¢ãã«ã¢ã¯ã»ã¹ãšç®¡çèšå®ã匷å¶ãã䜿çšç¶æ³ãã¬ã¡ããªãç¬èªã®å¯èŠ³æž¬æ§ã¹ã¿ãã¯ã«ãªã¬ãŒããŸãã
ãã㯠claude ãã€ããªã«å«ãŸããŠãããããã©ãããããã§ Claude Code ãå®è¡ããåãå®è¡ãã¡ã€ã«ã claude gateway --config gateway.yaml ã§ã²ãŒããŠã§ã€ãµãŒããŒãå®è¡ããŸãã
ãã®ããŒãžã§ã¯ä»¥äžãã«ããŒããŠããŸãã
- Claude ã¢ããªã²ãŒããŠã§ã€ã䜿çšããçç±ãç¬èªã«å®è¡ããå Žåã«äœã远å ãããããããã³ä»ã®äœããããé©åãªå Žå
- åææ¡ä»¶ãå«ãã¯ã€ãã¯ã¹ã¿ãŒããã²ãŒããŠã§ã€ããŒããããµã€ã³ã€ã³æžã¿ã®éçºè ãŸã§é²ããŸã
- éçºè ã®æ¥ç¶ã管çèšå®ãéããŠã²ãŒããŠã§ã€ URL ãèšå®ããããšãå«ã¿ãŸã
- å¯çšæ§ãšå¶éäºé ãã²ãŒããŠã§ã€ãéããŠã©ã® Claude Code æ©èœãæ©èœããããããã³ãµãŒããŒãäœããµããŒãããããã«ããŒããŠããŸã
é¢é£ããŒãžã¯ããã«è©³ãã説æããŠããŸããèšå®ãªãã¡ã¬ã³ã¹ã¯ã¯ã€ãã¯ã¹ã¿ãŒããæžã蟌ã YAML ãã¡ã€ã«ã®ãã¹ãŠã®ãªãã·ã§ã³ãã«ããŒãããããã€ã¡ã³ãã¬ã€ã㯠IdP ããšã®ã»ããã¢ãããKubernetes ãš Cloud Run ãããã€ã¡ã³ããããã³éçšãã«ããŒããŠããŸãã
Claude apps gateway ã䜿çšããçç±
ã²ãŒããŠã§ã€ã®æŠèŠã¯ã²ãŒããŠã§ã€ãäœããããããªãå®è¡ããããã«ããŒããŠããŸããClaude apps gateway 㯠Anthropic ç¬èªã®ã²ãŒããŠã§ã€ã§ãclaude ãã€ããªã«çµã¿èŸŒãŸããŠãããå Claude Code ãªãªãŒã¹ãšäžç·ã«ãã¹ããããŠãããããClaude Code ãéä¿¡ããããããŒãšãªã¯ãšã¹ããã£ãŒã«ããããªãã¬ãŒã¿ãŒãåå¥ã®èš±å¯ãªã¹ããç¶æããããšãªã転éããŸãããããã€ããããšã以äžãåŸãããŸãã
- èªèšŒæ å ±ïŒã¢ããã¹ããªãŒã API ããŒãŸãã¯ã¯ã©ãŠãèªèšŒæ å ±ã¯ãã€ã³ãã©ã¹ãã©ã¯ãã£å ã«ã®ã¿ååšããŸããéçºè ã¯äŒæ¥ SSO ã§èªèšŒããçæéæå¹ãªãã¢ã©ãŒããŒã¯ã³ãåãåãããããªãããŒãã£ã³ã°ã¯ IdP ã§çºçããŸãããŠãŒã¶ãŒãããããžã§ãã³ã°è§£é€ãããšãã²ãŒããŠã§ã€ã¢ã¯ã»ã¹ã¯ã»ãã·ã§ã³æå¹æéå ã«æéåãã«ãªããŸããããã©ã«ã㯠1 æéã§ãã
- ã¢ã¯ã»ã¹å¶åŸ¡ïŒIdP ã°ã«ãŒãã¯ã¢ãã«èš±å¯ãªã¹ããšç®¡çèšå®ããªã·ãŒã«ããããããŸããã²ãŒããŠã§ã€ã¯ã¢ãã«ã¢ã¯ã»ã¹ããµãŒããŒåŽã§åŒ·å¶ããèš±å¯ãããŠããªãã¢ãã«ã®ãªã¯ãšã¹ããæåŠããåã°ã«ãŒãã®ç®¡çèšå®ããªã·ãŒãéžæããŸããCLI ã¯ç®¡çèšå®å±€ã§ãããé©çšããŸããç°ãªãããŒã ã¯ç°ãªãã¢ãã«ãããŒã«ãããã³æš©éãååŸããéçºè ã¯ããªã·ãŒãããã¯ããŠãããã®ããªãŒããŒã©ã€ãã§ããŸããã
- èšå®é ä¿¡ïŒã²ãŒããŠã§ã€ã¯ç®¡çèšå®ããµã€ã³ã€ã³æžã¿ã¯ã©ã€ã¢ã³ãèªäœã«é ä¿¡ããclaude.ai 管çã³ã³ãœãŒã«ããã®ãµãŒããŒç®¡çèšå®ã®å ŽæãåããŸãã
- ãã¬ã¡ããªïŒDatadogãSplunkãClickHouse ãªã©ã®åèšå®å ã¯ãããã©ã«ãã§ã¯ããŒã¯ã³æ°ãã¢ãã«ããŠãŒã¶ãŒã¢ã€ãã³ãã£ãã£ãã¬ã€ãã³ã·ãå«ãOpenTelemetry ProtocolïŒOTLPïŒã¡ããªã¯ã¹ãåãåãããã°ãšãã¬ãŒã¹ã¯å®å ããšã®ãªããã€ã³ã§ãã
- ã¢ããã¹ããªãŒã ã«ãŒãã£ã³ã°ïŒã¯ã©ã€ã¢ã³ã㯠Anthropic Messages API ãã²ãŒããŠã§ã€ã«è©±ããããã²ãŒããŠã§ã€ã¯åã¢ããã¹ããªãŒã ïŒAmazon BedrockãClaude Platform on AWSãGoogle Cloud ã® Agent PlatformãMicrosoft FoundryããŸã㯠Anthropic APIïŒã«å¯ŸããŠå€æãããããã®éã§ãã§ã€ã«ãªãŒããŒããŸããéçºè ãæ°ä»ãããåèšå®ãããããããšãªãããªãŒãžã§ã³ããããã€ããŒããŸãã¯ãã§ã€ã«ãªãŒããŒé åºã倿Žã§ããŸãã
ã²ãŒããŠã§ã€ç¬èªã®ããŒã¿ãã¬ãŒã³ã¯ãAnthropic API ãèšå®ãããã¢ããã¹ããªãŒã ã§ãªãéããAnthropic ã€ã³ãã©ã¹ãã©ã¯ãã£ã«äœãéä¿¡ããŸããããã¬ã¡ããªãç£æ»ãã°ã管çèšå®ãããã³éçºè ã® IdP ã¢ã€ãã³ãã£ãã£ãã©ãã«è¡ãããå¶åŸ¡ããã²ãŒããŠã§ã€ã¯ãããã®ãããã Anthropic ã«éä¿¡ããŸãããæ®ãã®ãã©ãã£ã㯠CLI ããã»ã¹ãéä¿¡ã§ããæ¹æ³ãšããããéããæ¹æ³ã«ã€ããŠã¯ãã³ã³ãã©ã€ã¢ã³ã¹ãã¹ãã£ãåç §ããŠãã ããã
ã²ãŒããŠã§ã€ãéããŠã©ã® Claude Code æ©èœãæ©èœããããããã³ãµãŒããŒèªäœãäœããµããŒããããã«ã€ããŠã¯ã以äžã®å¯çšæ§ãšå¶éãåç §ããŠãã ãããã³ã¹ãããã€ãã¹ãè€æ°ã²ãŒããŠã§ã€ã®å®è¡ããµãŒããŒã¬ã¹ãã©ãããã©ãŒã ãªã©ã®æ±ºå®ã«ã€ããŠã¯ããããã€ã¡ã³ãã¬ã€ããåç §ããŠãã ããã
ãã®ä»ã®ã²ãŒããŠã§ã€å®è£
æ¢ã«èŠä»¶ãæºãã LLM ã²ãŒããŠã§ã€ãŸã㯠API ã²ãŒããŠã§ã€ãå®è¡ããŠããå Žåã¯ãããã䜿ãç¶ããŠãã ããããã®ä»ã® LLM ã²ãŒããŠã§ã€ã¯ Claude Code ãããã«å¯ŸããŠèšå®ããããšãã«ããŒããŠããŸãã
ã²ãŒããŠã§ã€ãããã³ã«ãªãã¡ã¬ã³ã¹ã¯ãClaude Code ãä»»æã®ã²ãŒããŠã§ã€ããæåŸ
ããå¥çŽãææžåããŠããŸããåŒã³åºããšã³ããã€ã³ãã転éããããããŒãšããã£ãã£ãŒã«ããããã³ããããåé€ããããšãã«äœãæ©èœããªããªããã§ããå®è¡äžã® Claude apps ã²ãŒããŠã§ã€ã¯ãSSO ãµã€ã³ã€ã³ã管çèšå®é
ä¿¡ãããã³ãã¬ã¡ããªçšã® Claude apps ã²ãŒããŠã§ã€åºæã®ãšã³ããã€ã³ãã远å ããŠããã®å¥çŽã®ã¹ãŒããŒã»ããã GET /protocol ã§æäŸããŸããcurl https://claude-gateway.internal.example.com/protocol ã䜿çšããŠãã¯ã€ãã¯ã¹ã¿ãŒã以äžãçæãããããªãããã€ãããã²ãŒããŠã§ã€ããååŸããŸãããããã³ã«ãžã®ç Žå£çãªå€æŽã¯äºåã«çºè¡šãããŸãããç¡æéã®åŸæ¹äºææ§ã¯ä¿èšŒãããŸããã
ã¯ã€ãã¯ã¹ã¿ãŒã
ãã®ã¯ã€ãã¯ã¹ã¿ãŒãã¯æå°éã®ãã¹ã説æããŠããŸããIdP ã§ OAuth ã¯ã©ã€ã¢ã³ããç»é²ããgateway.yaml ãæžããDocker Compose ã§ Postgres ãšäžç·ã«ã²ãŒããŠã§ã€ãå®è¡ãããšã³ãããŒãšã³ãã§ãµã€ã³ã€ã³ã確èªããŸããAmazon Bedrock ã¢ããã¹ããªãŒã ã䜿çšããŸããClaude Platform on AWSãGoogle Cloud ã® Agent PlatformãMicrosoft Foundryãããã³ Anthropic API ã¯ãèšå®ãªãã¡ã¬ã³ã¹ã«ç€ºãããŠããããã« upstreams ãããã¯ãã¹ã¯ããããããšã§åæ§ã«ãµããŒããããŸããæåŸã«ãéçºè
ã /login ã§ããã²ãŒããŠã§ã€ããããŸãã
ãã©ã€ããŒããããã¯ãŒã¯ã«ãããã€ããŸãã Claude Code ã¯ãã¢ãã¬ã¹ããã©ã€ããŒãã§ããã²ãŒããŠã§ã€ã«ã®ã¿æ¥ç¶ããŸããããã¯ã»ãã¥ãªãã£ã¬ãŒãã§ããä¿¡é Œãããã²ãŒããŠã§ã€ã¯éçºè ãã·ã³ã§ã³ãã³ããå®è¡ããèšå®ãããã·ã¥ã§ããããã§ããã²ãŒããŠã§ã€ãå éšããŒããã©ã³ãµãŒãŸã㯠VPN ã®èåŸã«é 眮ãããã©ã€ããŒã IP ã«ã®ã¿è§£æ±ºãããã¹ãåãä»ããŸãã
Anthropic ãéçšãããããªãã¯ã²ãŒããŠã§ã€ãšã³ããã€ã³ãã¯äŸå€ã§ãã/login 㯠https:// çµç±ã§ããããåãå
¥ããŸããããã㯠Anthropic èªäœãéçšããå°ããªåºå®ã»ããã®ã²ãŒããŠã§ã€ã§ãããããã¯éžæãŸãã¯èšå®ã§ãããããã€ã¡ã³ããªãã·ã§ã³ã§ã¯ãããŸããããªã¹ã㯠Claude Code ã«ã³ã³ãã€ã«ãããŠãããããèšå®ããã¹ãåããªã¹ãã«è¿œå ããããšã¯ã§ããããã¹ãããã²ãŒããŠã§ã€ã¯å
é€ã®å¯Ÿè±¡ã«ã¯ãªããŸããã{/* min-version: 2.1.206 */}v2.1.206 ããåã§ã¯ã/login ã¯ãããã®ãšã³ããã€ã³ããä»ã®ãããªãã¯ã¢ãã¬ã¹ãšåæ§ã«æåŠããŠããŸããã
åææ¡ä»¶
éå§ããåã«ã以äžãçšæããŠãã ããã
| å¿ èŠãªãã® | 詳现 |
|---|---|
| Claude Code v2.1.195 以é | claude gateway ãµãã³ãã³ããšã²ãŒããŠã§ã€ãµã€ã³ã€ã³ãããŒã¯ v2.1.195 ã§æäŸãããŸãã以åã®ãããªãã¯ãã«ãã«ã¯å«ãŸããŠããŸãããã²ãŒããŠã§ã€ãµãŒããŒãå®è¡ãããã·ã³ãšåéçºè
ã®ãã·ã³ã®äž¡æ¹ã v2.1.195 以éã§ããå¿
èŠããããŸããclaude update ãå®è¡ããŠææ°ãªãªãŒã¹ãååŸããŸãã {/* min-version: 2.1.198 */}Claude Platform on AWS ã¢ããã¹ããªãŒã ã¯ã²ãŒããŠã§ã€ãµãŒããŒã§ Claude Code v2.1.198 以éãå¿
èŠã§ãã |
| OpenID ConnectïŒOIDCïŒID ãããã€ã㌠| OktaãMicrosoft Entra IDãGoogle WorkspaceãKeycloakãDexããŸã㯠PingFederate ãªã©ã® OIDC æºæ ã® IdPãã²ãŒããŠã§ã€ã¯æšæº OIDC ãã£ã¹ã«ããªãŒãšèªå¯ã³ãŒããããŒãå®è¡ããŸããSAML ãš LDAP ã¯ãµããŒããããŠããŸããã |
| PostgreSQL 14 以é | ããã€ã¹ãµã€ã³ã€ã³ãããŒïŒãã©ãŠã¶ã³ãŒã«ããã¯ãæžã蟌ã¿ãããŒãªã³ã° CLI ãèªã¿åãïŒãšã¬ãŒãå¶éã«ãŠã³ã¿ãŒããµããŒãããŸããæå°å±€ãå«ãä»»æã®ç®¡ç Postgres ãæ©èœããŸããæ¯åºå¶éãèšå®ãããŠããªãå Žåãã²ãŒããŠã§ã€ã¯æ° KB ã®çæéæå¹ãªèªèšŒç¶æ
ãä¿åããŸããæ¯åºå¶éã䜿çšãããšãããã¯ã¢ããããå¿
èŠãããèä¹
çãªæ¯åºãç£æ»ãããã³ã¢ã€ãã³ãã£ãã£ããŒãã«ãä¿æããŸãã?sslmode=require çµç±ã® TLS ãæšå¥šãããŸãã |
| ã¢ãã«ã¢ããã¹ããªãŒã | Amazon Bedrock èªèšŒæ å ±ãClaude Platform on AWS èªèšŒæ å ±ãGoogle Cloud èªèšŒæ å ±ãMicrosoft Foundry ãªãœãŒã¹ããŸã㯠Anthropic API ããŒãè€æ°ã®ã¢ããã¹ããªãŒã ããµããŒãããããã§ã€ã«ãªãŒããŒããããŸãã |
| HTTPS | ã²ãŒããŠã§ã€ã¯éçºè
ã©ããããããšãµã€ã³ã€ã³ã«äœ¿çšããããã©ãŠã¶ãã https:// çµç±ã§å°éå¯èœã§ããå¿
èŠããããŸããã²ãŒããŠã§ã€ã¯åããªã¹ããŒã§ããã€ã¹æ€èšŒããŒãžãæäŸããŸããlisten.tls çµç±ã§ TLS èšŒææžãæäŸããããTLS çµäºã€ã³ã°ã¬ã¹ã®èåŸã§å®è¡ããlisten.public_url ãèšå®ããŸãããã¬ãŒã³ http:// ãªãªãžã³ã¯ããŒã«ã«éçºçšã®ã«ãŒãããã¯ã§ã®ã¿åãå
¥ããããŸãã |
| ãã©ã€ããŒããããã¯ãŒã¯ã¢ãã¬ã¹ | /login ã§ã¯ãClaude Code ã¯ã²ãŒããŠã§ã€ã®ãã¹ãåãŸã㯠IP ã¢ãã¬ã¹ããã©ã€ããŒãã¢ãã¬ã¹ã®ã¿ã«è§£æ±ºãããããšãèŠæ±ããŸããRFC 1918ãCGNAT 100.64.0.0/10ãIPv6 ULA fc00::/7ããŸãã¯ããŒã«ã«éçºçšã®ã«ãŒãããã¯ããã§ãã¯ã¯è§£æ±ºãããå IP ã§å®è¡ããããããååã解決ããã¢ãã¬ã¹ã®ããããããããªãã¯ã®å Žåã/login 㯠URL ãæåŠããŸããéçºè
ãã·ã³ã HTTPS ãäŒæ¥ãããã·çµç±ã§ã«ãŒãã£ã³ã°ããå Žåããµã€ã³ã€ã³ã¯ãããã·ãã¹ãããã©ã€ããŒãã¢ãã¬ã¹ã«è§£æ±ºãããããšãèŠæ±ããŸããããã§ãªãå Žåã¯ãã²ãŒããŠã§ã€ãã¹ãã NO_PROXY ã«è¿œå ããŠãCLI ãçŽæ¥æ¥ç¶ããããã«ããŸãã{/* min-version: 2.1.206 */}Anthropic ãéçšãããããªãã¯ã²ãŒããŠã§ã€ãšã³ããã€ã³ãã¯ãã©ã€ããŒãã¢ãã¬ã¹ãšãããã·ãã§ãã¯ããé€å€ãããŸãã/login ã¯æ£ç¢ºãªãã¹ãåãããã«ãã https:// çµç±ã§ããããåãå
¥ããããããã©ã€ããŒããããã¯ãŒã¯èŠä»¶ã¯ãã¹ãããã²ãŒããŠã§ã€ã«ã®ã¿é©çšãããŸããv2.1.206 ããåã§ã¯ã/login 㯠Anthropic ãéçšãããšã³ããã€ã³ããä»ã®ãããªãã¯ã¢ãã¬ã¹ãšåæ§ã«æåŠããŠããŸããã |
| Linux ã©ã³ã¿ã€ã | ã²ãŒããŠã§ã€ãµãŒããŒã¯ãã€ãã£ã Linux ãã€ããªã§ã®ã¿å®è¡ãããŸããmacOS ã¯ããŒã«ã«éçºçšã«æ©èœããŸããWindows ã¯ãµãŒããŒãã©ãããã©ãŒã ãšããŠãµããŒããããŠããŸããã |
ã²ãŒããŠã§ã€ãµãŒããŒã¯ãã€ãã£ã claude ãã€ããªãå¿
èŠã§ããClaude Code ã®ã€ã³ã¹ããŒã«ã§èª¬æãããŠããããã«ãã³çãããããªãªãŒã¹ãããŠã³ããŒãããŸãããµãŒããŒã¯ Claude Code ã Node ã®äžã§å®è¡ããããšãã«å©çšã§ããªãã©ã³ã¿ã€ã æ©èœã䜿çšããŸããèµ·åæã« requires the native binary ã衚瀺ãããå Žåã¯ãã¹ã¿ã³ãã¢ãã³ã€ã³ã¹ããŒã«æ¹æ³ã® 1 ã€ã«åãæ¿ããŸãã
ã¹ããã
IdP ã§ OAuth ã¯ã©ã€ã¢ã³ããç»é²ãã
ãªãã€ã¬ã¯ã URI ããããšäžèŽããå¿
èŠãããããããŸãã²ãŒããŠã§ã€ã®ãã¹ãåãæ±ºå®ããŸããæ°ãã OIDC ãŠã§ãã¢ããªã±ãŒã·ã§ã³ãäœæãããªãã€ã¬ã¯ã URI ã https://claude-gateway.<your-domain>/oauth/callback ã«èšå®ããŸãããã¹ãã¯ã¹ããã 3 ã§ listen.public_url ãšããŠèšå®ããå€ãšåãã§ããclient_id ãš client_secret ãã¡ã¢ããŸããIdP ããšã®æé ã¯ID ãããã€ããŒã»ããã¢ããã«ãããŸãã
PostgreSQL ããŒã¿ããŒã¹ãããããžã§ãã³ã°ãã
æå°ç®¡çå±€ãå«ãä»»æã® Postgres 14 以éãæ©èœããŸããã²ãŒããŠã§ã€ã¯èµ·åæã«ç¬èªã®ã¹ããŒããã€ã°ã¬ãŒã·ã§ã³ãå®è¡ãããããããŒã¿ããŒã¹ãŠãŒã¶ãŒã¯ CREATE TABLE æš©éãå¿
èŠã§ããã»ãã¥ãªãã£ããªã·ãŒãã¢ããªã±ãŒã·ã§ã³ããŒã«ããã® DDL ãçŠæ¢ããå Žåã¯ã代ããã«ã¹ããŒããäºåäœæããŸããstoreãåç
§ããŠãã ããã
gateway.yaml ãæžã
ã·ãŒã¯ã¬ãã㯠${ENV_VAR} å±éçµç±ã§èªã¿åãããããããã¡ã€ã«èªäœã¯ããŒãžã§ã³ç®¡çã«ååšã§ããŸãã/login ããããªãã¯ã¢ãã¬ã¹ãæåŠããããããã©ã€ããŒã IP ã«è§£æ±ºãã public_url ãã¹ãåã䜿çšããŸããæå°èšå®ã«ã¯ 5 ã€ã®ã»ã¯ã·ã§ã³ããããä»ã®ãã¹ãŠã®ãã£ãŒã«ãã«ã¯ããã©ã«ãããããŸãã
listen:
host: 0.0.0.0
port: 8080
# TLS çµäºãããã·ã®èåŸã§å¿
é ãIdP
# redirect_uri ãšãã£ã¹ã«ããªãŒããã¥ã¡ã³ãã«äœ¿çšãããŸãã
public_url: https://claude-gateway.internal.example.com
oidc:
issuer: https://login.example.com # /.well-known/openid-configuration ãæäŸããå¿
èŠããããŸã
client_id: 0oa1example2
client_secret: ${OIDC_CLIENT_SECRET}
allowed_email_domains: [example.com] # çµç¹å€ã® id_tokens ãæåŠããŸã
userinfo_fallback: true # id_token ã email/groups ãçç¥ãã IdP ã®å Žåããã以å€ã®å Žåã¯ç¡å®³ã§ã
session:
jwt_secret: ${GATEWAY_JWT_SECRET} # openssl rand -base64 32
ttl_hours: 1 # IdP ããããžã§ãã³ã°è§£é€æã®å€±å¹ã¬ã€ãã³ã·ãããŠã³ãããŸã
store:
postgres_url: ${GATEWAY_POSTGRES_URL} # 管ç Postgres ã®å Žå㯠?sslmode=require ã远å ããŸã
upstreams:
- provider: bedrock
region: us-east-1
auth: {} # 空ïŒAWS ããã©ã«ãèªèšŒæ
å ±ãã§ãŒã³
# ïŒIRSAãEC2/ECS ã¿ã¹ã¯ããŒã«ãç°å¢å€æ°ã~/.awsïŒ
# ã¢ãã«ã¯ã¢ããã¹ããªãŒã ããšã«èªåçã«å€æãããŸããçµã¿èŸŒã¿ã«ã¿ãã°
# 㯠claude-opus-4-8 ã us.anthropic.claude-opus-4-8 ã«ããããã
# Bedrock ããµããŒããããã¹ãŠã® Claude ã¢ãã«ã«å¯ŸããŠåæ§ã«ãããããŸããfalse ã«èšå®ãã
# `models:` ãªã¹ãã远å ããŠãç¹å®ã®ã¢ãã«ã®ã¿ãå
¬éããŸãã
auto_include_builtin_models: true
ãã®èšå®ã¯ãããã©ã«ã Amazon Bedrock ã¢ãã«ã«ã¿ãã°ã䜿çšããåäœãããµã€ã³ã€ã³ã«ãŒãã«ååã§ããå®è¡ãããããmanaged.policies çµç±ã§ã°ã«ãŒãããšã® RBAC ãšç®¡çèšå®ã远å ããtelemetry çµç±ã§ãã¬ã¡ããªãã¡ã³ã¢ãŠãã远å ããmodels çµç±ã§ãã«ãã¢ããã¹ããªãŒã ãã§ã€ã«ãªãŒããŒãããããžã§ãã³ã°æžã¿ã¹ã«ãŒããã ARNããŸãã¯éç±³åœãªãŒãžã§ã³ã远å ããŸãã
Amazon Bedrock ã¢ããã¹ããªãŒã ã¯ãinference-profile/us.anthropic.* ARN ãšåºç€ãšãªã foundation-model/anthropic.* ARN ã®äž¡æ¹ã«å¯Ÿã㊠bedrock:InvokeModel ãš bedrock:InvokeModelWithResponseStream ãæã€ AWS ããªã³ã·ãã«ãå¿
èŠã§ãããBedrock ã³ã³ãœãŒã«ã§å¿
èŠãª Claude ã¢ãã«ã®ã¢ãã«ã¢ã¯ã»ã¹ãæå¹ã«ãªã£ãŠããŸããEKS ã® IRSAãECS ã¿ã¹ã¯ããŒã«ããŸã㯠EC2 ã€ã³ã¹ã¿ã³ã¹ãããã¡ã€ã«ã§ã¯ãªããéçããŒã䜿çšããŠèªèšŒæ
å ±ãæäŸããŸããupstreams ãªãã¡ã¬ã³ã¹ã«ã¯ãå®å
šãª IAM 詳现ãã¯ãã¹ã¯ã©ãŠãèªèšŒæ
å ±ãããªãã¯ã¹ãããã³ä»ã®ãããã€ããŒã® auth ãããã¯ããããŸãã
å®è¡ãã
ã€ã¡ãŒãžèŠä»¶ãæºãã claude ãã€ããªã®åšãã«ã³ã³ããã€ã¡ãŒãžãæ§ç¯ããPostgres ãšäžç·ã«å®è¡ããŸãã
services:
gateway:
image: <your-registry>/claude-gateway:<version>
ports: ["8080:8080"]
volumes: ["./gateway.yaml:/etc/claude/gateway.yaml:ro"]
environment:
OIDC_CLIENT_SECRET: ${OIDC_CLIENT_SECRET}
GATEWAY_JWT_SECRET: ${GATEWAY_JWT_SECRET}
GATEWAY_POSTGRES_URL: postgres://gw:pw@postgres/gateway
# AWS èªèšŒæ
å ±ïŒæ¬çªç°å¢ã§ã¯ãããããçç¥ããã€ã³ã¹ã¿ã³ã¹
# ããŒã«ã䜿çšããŸããããŒã«ã« Compose ãã¹ãã®å Žåãç¬èªã®ãã®ãæž¡ããŸãã
AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID}
AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY}
AWS_SESSION_TOKEN: ${AWS_SESSION_TOKEN}
depends_on:
postgres:
condition: service_healthy
postgres:
image: postgres:16-alpine
environment: { POSTGRES_USER: gw, POSTGRES_PASSWORD: pw, POSTGRES_DB: gateway }
healthcheck:
test: ["CMD-SHELL", "pg_isready -U gw"]
interval: 5s
volumes: ["pgdata:/var/lib/postgresql/data"]
volumes: { pgdata: }
ã²ãŒããŠã§ã€ã¯ãèšå®ãèªã¿åããIdP ã«å¯Ÿã㊠OIDC ãã£ã¹ã«ããªãŒãå®è¡ããPostgres ã¹ããŒããã€ã°ã¬ãŒã·ã§ã³ãé©çšããã¢ããã¹ããªãŒã ã¯ã©ã€ã¢ã³ããæ§ç¯ãããªãã¹ã³ãéå§ããåäžã® Linux ãã€ããªã§ããèµ·åã¯èšå®ã5 ç§ã¿ã€ã ã¢ãŠãä»ã Postgres æ¥ç¶ãOIDC ãã£ã¹ã«ããªãŒãããã³ã¢ããã¹ããªãŒã ã¯ã©ã€ã¢ã³ãæ§ç¯ã«å¯ŸããŠå€±ææã«éããããŸãããããã®ãããããå°éäžå¯èœãŸãã¯èšå®ã誀ã£ãŠããå Žåãã²ãŒããŠã§ã€ã¯äœäžããç¶æ ã§ãã©ãã£ãã¯ãæäŸããã®ã§ã¯ãªãããšã©ãŒã§çµäºããŸãã
æåããèµ·åã¯æšè«ãã¹ãæ€èšŒããŸãããAmazon Bedrock ãš Google Cloud ã® Agent Platform ã€ã³ã¹ã¿ã³ã¹èªèšŒæ å ±ã¯èµ·åæã§ã¯ãªãæåã®ãªã¯ãšã¹ãã§è§£æ±ºãããããã§ãã
èµ·åã·ãŒã±ã³ã¹ã«ã€ã㊠stderr ãç£èŠããŸãããã°è¡ã¯ [gateway] <timestamp> <level> <message> 圢åŒã䜿çšããç£æ»ã€ãã³ã㯠evt ãã£ãŒã«ãä»ãã®åäžè¡ JSON ã§ãããèµ·åãããŒã¯ä»¥äžã§çç¥ããããã€ã°ã¬ãŒã·ã§ã³ãšãªãã¹ã³è¡ã®éã«åºåãããŸããé çªã«ä»¥äžã衚瀺ãããŸãã
{"ts":"2026-06-10T17:03:21.114Z","evt":"config.load","path":"/etc/claude/gateway.yaml","sha256":"âŠ"}
[gateway] 2026-06-10T17:03:21.408Z info migration 1 applied
[gateway] 2026-06-10T17:03:21.512Z info claude gateway listening on http://0.0.0.0:8080
èµ·åã claude gateway listening on è¡ã®åã«çµäºããå Žåãstderr ã®æåŸã®è¡ã¯åé¡ãååä»ããŸãã
- å°éäžå¯èœãª Postgres
- DDL æš©éã®ãªã Postgres ããŒã«
- å°éäžå¯èœãŸãã¯ç¡å¹ãª OIDC ãã£ã¹ã«ããªãŒããã¥ã¡ã³ã
- éåãã£ãŒã«ããã¹ãå«ãèšå®ã¹ããŒãéå
ä¿®æ£ããŠåèµ·åããŸãã
æ¢ã« TLS çµäºã€ã³ã°ã¬ã¹ãããå Žåã¯ãCompose ãã¹ãããããclaude gateway --config gateway.yaml ã§ãã€ããªãçŽæ¥å®è¡ããŸããpublic_url ãã€ã³ã°ã¬ã¹ãªãªãžã³ã«èšå®ããlisten ãã«ãŒãããã¯ãŸãã¯ã¯ã©ã¹ã¿ãŒå
ã¢ãã¬ã¹ã«ãã€ã³ãããŸãã
èªèšŒãµãŒãã§ã¹ã確èªãã
3 ã€ã®ãã§ãã¯ã¯ãã²ãŒããŠã§ã€ãéçºè ã«æž¡ãåã«å®éã®ãŠãŒã¶ãŒãèªèšŒã§ããããšã確èªããŸãã
äŸã¯ã²ãŒããŠã§ã€ã®ãããªã㯠URL ã䜿çšããŸããã€ã³ã°ã¬ã¹ã®ãªãããŒã«ã« Compose ã»ããã¢ããã®å Žåãæåã® 2 ã€ã®ãã§ãã¯ã§ http://localhost:8080 ã«çœ®ãæããŸãã3 çªç®ã®ãã§ãã¯ã¯ verification_uri_complete ãéããŸãããã㯠public_url ããæ§ç¯ããããããããŒã«ã« Compose ã®å Žå㯠gateway.yaml ã§ public_url: http://localhost:8080 ãèšå®ããã²ãŒããŠã§ã€ã public_url ãã IdP redirect_uri ãæ§ç¯ãããããã¹ããã 1 ã® OAuth ã¯ã©ã€ã¢ã³ãã« 2 çªç®ã®ãªãã€ã¬ã¯ã URI ãšã㊠http://localhost:8080/oauth/callback ã远å ããŸããæ€èšŒãªã³ã¯ã¯ããŒã«ã«ãã©ãŠã¶ã§éããŸãã
Windows PowerShell ã§ã¯ãcurl.exe ãå®è¡ããŸããã㢠curl 㯠Invoke-WebRequest ã®ãšã€ãªã¢ã¹ã§ããããããã®ãã©ã°ãæåŠããŸãã
ãŸãããã£ã¹ã«ããªãŒããã¥ã¡ã³ããååŸããŸããããã¯ã²ãŒããŠã§ã€ãèµ·åããèšå®ãæå¹ã§ããããã¹ãŠã®èµ·åãã§ãã¯ãåæ Œããããšã確èªããŸãã
curl -s https://claude-gateway.internal.example.com/.well-known/oauth-authorization-server | jq
{
"issuer": "https://claude-gateway.internal.example.com",
"device_authorization_endpoint": "âŠ/oauth/device_authorization",
"token_endpoint": "âŠ/oauth/token",
"grant_types_supported": ["urn:ietf:params:oauth:grant-type:device_code", "refresh_token"]
}
å¿çã«ã¯ response_types_supported ã scopes_supported ãªã©ã®è¿œå ãã£ãŒã«ããå«ãŸããŸãã
次ã«ãããã€ã¹èªå¯ããªã¯ãšã¹ãããŸããããã¯ããã€ã¹ãµã€ã³ã€ã³ãããŒãæ©èœããPostgres ãå°éå¯èœã§æžã蟌ã¿å¯èœã§ããããšã確èªããŸãã
curl -s -X POST https://claude-gateway.internal.example.com/oauth/device_authorization | jq
{
"device_code": "âŠ",
"user_code": "WDJB-MJHT",
"verification_uri": "https://claude-gateway.internal.example.com/device",
"verification_uri_complete": "https://claude-gateway.internal.example.com/device?user_code=WDJB-MJHT",
"expires_in": 600,
"interval": 5
}
3 çªç®ã«ããã©ãŠã¶ã§ verification_uri_complete ãéããŠã³ãŒãã確èªããããšã§ãã©ãŠã¶ã¬ãã°ããã¹ãããŸããIdP ã®ãµã€ã³ã€ã³ããŒãžã«ãªãã€ã¬ã¯ãããããµã€ã³ã€ã³åŸãã²ãŒããŠã§ã€ã«æ»ã£ãŠãµã€ã³ã€ã³ç¢ºèªã«çå°ããå¿
èŠããããŸãã
æåã«å€±æãããã§ãã¯ã䜿çšããŠåé¡ãç¹å®ããŸãã
- æåã®ãã§ãã¯ã倱æïŒèµ·åãå®äºããŸããã§ãããstderr ã確èªããŠãã ãã
- 2 çªç®ã®ãã§ãã¯ã倱æïŒPostgres ãã²ãŒããŠã§ã€ããå°éäžå¯èœã§ããããããŒã«ãæžã蟌ã¿ã§ããŸãããæ¥ç¶æååãšæš©éã確èªããŠãã ãã
- 3 çªç®ã®ãã§ãã¯ã IdP ã«å°éããªãïŒIdP ã®ãªãã€ã¬ã¯ã URI ã
https://<gateway>/oauth/callbackãšæ£ç¢ºã«äžèŽããããšã確èªããŠãã ãã - 3 çªç®ã®ãã§ãã¯ã IdP ã«å°éããŸããããšã©ãŒã§æ»ããŸãïŒã²ãŒããŠã§ã€ã®ç£æ»ãã°ãèªã¿ãŸããããã¯
email domain not allowedãªã©ã®çç±ãå«ããã¹ãŠã®èªèšŒæåŠãèšé²ããŸã
éçºè ããã°ã€ã³ããã
ãã®æåŸã®ã¹ãããã¯ãµãŒããŒã§ã¯ãªãéçºè
ãã·ã³ã§çºçããŸãããã®ãã·ã³ã®ç®¡çèšå®ãã¡ã€ã«ã§ forceLoginMethod ã "gateway" ã«ãforceLoginGatewayUrl ãã²ãŒããŠã§ã€ã® public_url ã«èšå®ãã/login ãå®è¡ããCloud gateway ç»é¢ã§ Enter ããŒãæŒãããã©ãŠã¶ãµã€ã³ã€ã³ãå®äºããŸããã²ãŒããŠã§ã€ URL ãèšå®ä»¥äžã¯ãã¹ã±ãŒã«æã«äž¡æ¹ã®ããŒãé
åžããããšãã«ããŒããŠããŸãã
éçºè ãæ¥ç¶ãã
éçºè ã¯ç¬èªã®ã©ããããããã 1 ã€ã®ãã©ãŠã¶ãµã€ã³ã€ã³ã§æ¥ç¶ããäŒæ¥ã®ä»äºçšã¢ã«ãŠã³ãã䜿çšããŸããclaude.ai ã¢ã«ãŠã³ããAPI ããŒããŸãã¯ãµãã¹ã¯ãªãã·ã§ã³ã¯å¿ èŠãããŸãããã¢ãã«ãžã®ãªã¯ãšã¹ãã¯çµç¹ã®ã¢ããã¹ããªãŒã èªèšŒæ å ±ã䜿çšããŠã²ãŒããŠã§ã€ãéããŠè¡ãããã§ããæ¥ç¶ã¯ãMDM çµç±ã§ããã·ã¥ããã¯ã©ã€ã¢ã³ãåŽç®¡çèšå®ã«ãã£ãŠé§åããããããéçºè åŽã«æåã»ããã¢ããã¯ãããŸããããã®ã»ã¯ã·ã§ã³ã¯ç®¡çè ãèšå®ãããã®ãã«ããŒããŠããŸãã
CLI ã¯ã²ãŒããŠã§ã€ã® TLS ãªãŒãèšŒææžãæåã®æ¥ç¶æã«ãã£ã³ã¬ãŒããªã³ããããã¹ãåããšã«ãã³çãããŸããæåŸ
ããããã£ã³ã¬ãŒããªã³ã SHA-256 ãã²ãŒããŠã§ã€ URL ãšäžç·ã«å
¬éããŠãéçºè
ãæ¯èŒãããã®ãæã€ããã«ããŸããèšŒææžãã¡ã€ã«ãã openssl x509 -noout -fingerprint -sha256 -in cert.pem ã§ãã£ã³ã¬ãŒããªã³ããååŸããŸãã/login ããã³ããã¯ãã€ãžã§ã¹ãã®æåã® 16 æåãå°æåã® 16 鲿°ã§åºåãæåãªãã§è¡šç€ºããŸãã
èšŒææžãããŒããŒã·ã§ã³ããããšããã¹ãŠã®éçºè ã¯ååºŠä¿¡é Œããã³ãããèŠããããããŒããŒã·ã§ã³ãèšç»ãããã€ãã³ããšããŠæ±ãããã£ã³ã¬ãŒããªã³ããåå ¬éããŸãã
ãµã€ã³ã€ã³åŸãã¢ãã«ããã«ãŒã¯éçºè
ã® availableModels èš±å¯ãªã¹ãã®ã¢ãã«ã衚瀺ãã管çèšå®ã¯èµ·åæã«é©çšããã1 æéããšã«æŽæ°ããããã¬ã¡ããªã¯ã³ã¬ã¯ã¿ãŒã«ã«ãŒãã£ã³ã°ãããŸããã»ãã·ã§ã³ã¯ ttl_hours æå¹æéã®åã«ãµã€ã¬ã³ãã«æŽæ°ãããIdP ããããžã§ãã³ã°è§£é€åŸã®å€±æããæŽæ°ã¯åãã°ã€ã³ãä¿ããŸãã
ã²ãŒããŠã§ã€ URL ãèšå®ãã
MDM çµç±ãŸãã¯ãã£ã¹ã¯äžã§çŽæ¥ãããã€ãã OS ããšã®ç®¡çèšå®ãã¡ã€ã«ã«äž¡æ¹ã®ããŒãèšå®ãã/login 㯠URL ãå
¥åãããç¶æ
ã§ Cloud gateway ç»é¢ã§çŽæ¥éããŸãã
{
"forceLoginMethod": "gateway",
"forceLoginGatewayUrl": "https://claude-gateway.internal.example.com"
}
éçºè 㯠Enter ããŒãæŒããŠæ¥ç¶ããŸããæåã®æ¥ç¶ TLS ãã£ã³ã¬ãŒããªã³ãããã³ããã¯åŒãç¶ã衚瀺ãããŸãã
éçºè
ãæåã§éžæããããã®ãã°ã€ã³ããã«ãŒã«ã²ãŒããŠã§ã€ãªãã·ã§ã³ã¯ãªããforceLoginGatewayUrl ã¯éçºè
ç¬èªã®èšå®ãã¡ã€ã«ã§ã¯ç¡èŠãããŸããURL ãªãã® forceLoginMethod ã®ã¿ã§ã¯ãéçºè
ããIT 管çè
ã«é£çµ¡ããŠãã ãããã¡ãã»ãŒãžã®ãŸãŸã«ããŸããäž¡æ¹ã®ããŒã¯ããã·ã³ã«ããã·ã¥ãããã¡ã€ã«ã«å±ããã²ãŒããŠã§ã€ã® managed.policies[].cli ãããã¯ã«ã¯å±ããŸãããããã¯æ¢ã«æ¥ç¶ãããŠããã¯ã©ã€ã¢ã³ãã«ã®ã¿å°éããŸãã
CI ãã€ãã©ã€ã³ãšãªã¢ãŒããã·ã³
ç¡äººãã€ãã©ã€ã³ã®ãµãŒãã¹ããŒã¯ã³ãããŒã¯ãããŸãããã²ãŒããŠã§ã€ãµã€ã³ã€ã³ã¯åžžã«ãã©ãŠã¶ããã€ã¹ãããŒãå®è¡ããããããµã€ã³ã€ã³ãæ¿èªããéçºè ããªã CI ãžã§ãã¯èªèšŒã§ããŸããããããããããã€ããŒã«å¯ŸããŠçŽæ¥èšå®ããŸãã
éçºè
ããµã€ã³ã€ã³ãããšããã®ãã·ã³ã§ã®ãã¹ãŠã® Claude Code åŒã³åºãã¯ã²ãŒããŠã§ã€ã»ãã·ã§ã³ã䜿çšããŸããé察話ç㪠claude -p å®è¡ãš Agent SDK ã«ãã£ãŠéå§ãããã»ãã·ã§ã³ãå«ã¿ãã²ãŒããŠã§ã€ããªã·ãŒã¯ãã¹ãŠã«é©çšãããŸãã
ããã€ã¹ãããŒã¯ããŒãªã³ã° CLI ãæ¿èªãã©ãŠã¶ããåé¢ããããããã£ã¹ãã¬ã€ã®ãªããªã¢ãŒãéçºããã¯ã¹ã¯åŒãç¶ãæ©èœããŸããéçºè
ã¯ãªã¢ãŒããã·ã³ã§ SSH çµç±ã§ /login ãå®è¡ããã©ãããããã®ãã©ãŠã¶ã§æ€èšŒãªã³ã¯ãéããŸãã
éçºè ã«äœã匷å¶ãããã
ãããã®ä¿èšŒã¯ãã¹ãŠã®ãµã€ã³ã€ã³æžã¿ã²ãŒããŠã§ã€ã»ãã·ã§ã³ã«é©çšãããŸãã
- ã¢ãã«ã¢ã¯ã»ã¹ïŒããªã·ãŒãèš±å¯ããªãã¢ãã«ã®ãªã¯ãšã¹ã㯠400 ãè¿ãã
/modelããã«ãŒã¯ããªã·ãŒã®availableModelsèš±å¯ãªã¹ãã«ãã£ã«ã¿ãªã³ã°ãããŸããããªã·ãŒã§enforceAvailableModels: trueãèšå®ããŠãDefault ãªãã·ã§ã³ã Claude Code ã®çµã¿èŸŒã¿ããã©ã«ãã§ã¯ãªãavailableModelså ã®ã¢ãã«ã«è§£æ±ºãããããã«ããŸãããªãã§ã¯ãDefault ã¯éžæå¯èœãªãŸãŸã§ããããã®ã¢ãã«ãèš±å¯ãããŠããªãå Žåããªã¯ãšã¹ãæã«æåŠãããŸãã - ãã¬ã¡ããªå®å
ïŒãã¬ã¡ããªè»¢éãèšå®ãããŠããå ŽåãOTLP ãšã¯ã¹ããŒããšã³ããã€ã³ãã¯ã²ãŒããŠã§ã€ã«ãã³çããããã²ãŒããŠã§ã€ãããã·ã¥ããèšå®ã¯ããŒã«ã«ã«èšå®ããã
OTEL_*倿°ããªãŒããŒã©ã€ãããŸãã - èªèšŒæ
å ±ïŒã²ãŒããŠã§ã€ããŒã¯ã³ã¯ã»ãã·ã§ã³ã®å¯äžã®èªèšŒæ
å ±ã§ãã
ANTHROPIC_AUTH_TOKENãANTHROPIC_API_KEYãapiKeyHelperãããã³ä»¥åã® claude.ai ãã°ã€ã³ã¯ãµã€ã³ã€ã³äžã¯ç¡èŠããããããéçºè ã¯æåã« claude.ai ãããã°ã¢ãŠãããå¿ èŠã¯ãããŸããã - 管çèšå®ïŒããã¯ãããããŒã¯ããŒã«ã«ã§ãªãŒããŒã©ã€ãã§ããŸãããCLI ã¯ããªã·ãŒãèµ·åæã𿝿éã®ããŒãªã³ã°ã§é©çšããŸãã
- èµ·åïŒãµã€ã³ã€ã³æžã¿ã»ãã·ã§ã³ã¯ãã²ãŒããŠã§ã€ãå°éäžå¯èœãªå ŽåãçŽ 10 ç§åŸã«èµ·åæã«ãšã©ãŒã§çµäºããèšå®ãªãã§èµ·åããã®ã§ã¯ãªãã
- ããããžã§ãã³ã°è§£é€ïŒãŠãŒã¶ãŒã IdP ã§ç¡å¹åãããã»ãã·ã§ã³ã¯ãæ¬¡ã®æŽæ°ã倱æãããšãã«
ttl_hourså ã«æéåãã«ãªããŸãã
çµç¹ãèŠãããšãã§ãããã®
䜿çšç¶æ³ãã¬ã¡ããªã¯éçºè ã®ã¢ã€ãã³ãã£ãã£ãããŒã¯ã³æ°ãã¢ãã«ãããã³ã¬ã€ãã³ã·ãçµç¹ã®ã³ã¬ã¯ã¿ãŒã«äŒããŸããã²ãŒããŠã§ã€ã¯ããã³ãããŸãã¯å®äºã³ã³ãã³ãããã°ãŸãã¯ä¿åããŸããããã°ããã¬ãŒã¹ãªã©ã®ããè±å¯ãªãã¬ã¡ããªãåéããããã©ãããã³ãã³ãããã¡ã€ã«ãã¹ãå«ãå¯èœæ§ãããã®ã¯ãçµç¹ã®å®å ããšã®éžæã§ãã
å¯çšæ§ãšå¶é
衚ã¯ãéçºè ãã²ãŒããŠã§ã€ãéããŠæ¥ç¶ãããšãã«æ©èœãã Claude Code æ©èœãšãã²ãŒããŠã§ã€ãµãŒããŒèªäœããµããŒããããã®ãã«ããŒããŠããŸããäœãããµããŒããããŠããªãå ŽåãNotes åã¯ä»£æ¿æ¡ãæäŸããŸãã
ã²ãŒããŠã§ã€ã¯ãCLI ããã¹ãŠã®ã¢ããã¹ããªãŒã ã«éä¿¡ãã anthropic-beta å€ãé
ä¿¡ããããããªãã¬ãŒã¿ãŒã¯ããŒã¿èš±å¯ãªã¹ããç¶æããŸãããAmazon Bedrock ã®å ŽåãããããŒãç¡èŠããã²ãŒããŠã§ã€ã¯å€ããªã¯ãšã¹ãããã£ã® anthropic_beta ãã£ãŒã«ãã«ç§»åããŸããä»ã®ã¢ããã¹ããªãŒã ã¯éä¿¡ããããŸãŸããããŒãåãåããŸããCLI ã®ã²ãŒããŠã§ã€ã»ãã·ã§ã³ããŒã¿ã»ããã¯ããã¡ãŒã¹ãããŒãã£ã®ã¿ã®ããŒã¿ãšæ¡åŒµãã£ãã·ã¥ TTL ããŒã¿ãçç¥ããŸããããã以äžã®è¡ããµããŒããããŠããªããšè¡šç€ºãããçç±ã§ãã
| æ©èœ | ã¹ããŒã¿ã¹ | æ³šèš |
|---|---|---|
| æšè«è»¢éïŒAmazon BedrockãClaude Platform on AWSãGoogle Cloud ã® Agent PlatformãMicrosoft FoundryãAnthropicïŒ | å©çšå¯èœ | ã¢ããã¹ããªãŒã ããšã®ã¢ãã«å€æãšãã§ã€ã«ãªãŒããŒä»ããAmazon Bedrock ã¢ããã¹ããªãŒã 㯠bedrock-runtime ãšã³ããã€ã³ããš AWS ããã©ã«ãèªèšŒæ
å ±ãã§ãŒã³ã䜿çšããŸããAmazon Bedrock Mantle ãšã³ããã€ã³ãã¯ãµããŒããããã¢ããã¹ããªãŒã ã§ã¯ãããŸãããClaude Platform on AWS ã¢ããã¹ããªãŒã ã«ã¯ãã²ãŒããŠã§ã€ãµãŒããŒäžã® Claude Code v2.1.198 以éãå¿
èŠã§ãã |
| IdP ã°ã«ãŒãã«ããã¢ãã«ã¢ã¯ã»ã¹ãšç®¡çèšå® | å©çšå¯èœ | ã¢ãã«ã¢ã¯ã»ã¹ã¯ãµãŒããŒåŽã§åŒ·å¶ãããŸãã管çèšå®ã¯ IdP ã°ã«ãŒãããšã«é ä¿¡ãããCLI ã«ãã£ãŠç®¡çèšå®å±€ã§é©çšãããŸã |
| ãã¬ã¡ããªãã¡ã³ã¢ãŠãïŒOTLP/HTTPïŒ | å©çšå¯èœ | ãšã¯ã¹ããŒãããšã«ã¢ã€ãã³ãã£ãã£ã¹ã¿ã³ãä»ããprotobuf ãš JSON ãšã³ã³ãŒãã£ã³ã°ã®äž¡æ¹ |
| OIDC ID ãããã€ã㌠| å©çšå¯èœ | ä»»æã® OIDC æºæ ã® IdPãã²ãŒããŠã§ã€ã¯æšæº OIDC ãã£ã¹ã«ããªãŒãšèªå¯ã³ãŒããããŒãå®è¡ããŸããID ãããã€ããŒã»ããã¢ãããåç §ããŠãIdP ããšã®èšå®ã確èªããŠãã ãã |
| ãŠãŒã¶ãŒããšããã³ã°ã«ãŒãããšã®æ¯åºå¶é | å©çšå¯èœ | æ¯åºå¶éãåç §ããŠãã ãã |
| ãµãŒããŒåŽãŠã§ãæ€çŽ¢ | å©çšäžå¯ | CLI ã¯ã²ãŒããŠã§ã€ãã«ãŒãã£ã³ã°ããã¢ããã¹ããªãŒã ãããã€ããŒãèŠãããšãã§ããªãããããŠã§ãæ€çŽ¢ãµããŒããæ€èšŒã§ãããã²ãŒããŠã§ã€ã»ãã·ã§ã³ã§ WebSearch ãç¡å¹åããŸã |
| æšæºããã³ãããã£ãã·ã³ã° | å©çšå¯èœ | cache_control ãã¬ãŒã¯ãã€ã³ãã¯ãã¹ãŠã®ã¢ããã¹ããªãŒã ã«è»¢éãããŸã |
| 1 æéãã£ãã·ã¥ TTL | å©çšäžå¯ | CLI ã¯ã²ãŒããŠã§ã€ã»ãã·ã§ã³ã§æ¡åŒµãã£ãã·ã¥ TTL ããŒã¿ãçç¥ããŸããã²ãŒããŠã§ã€ãã«ãŒãã£ã³ã°ã§ãããã¹ãŠã®ã¢ããã¹ããªãŒã ã 1 æé TTL ããµããŒãããŠããããã§ã¯ãªããããã²ãŒããŠã§ã€ãéããããã³ãããã£ãã·ã³ã°ã¯ 5 å TTL ã䜿çšããŸããäžèšã®ããŒã¿ããããŒããŒããåç §ããŠãã ãã |
| ãªãŒãã¢ãŒã | å©çšå¯èœ | ãµãŒãããŒãã£ãããã€ããŒã«ãŒã«ã«åŸããŸãããµãŒãããŒãã£ãããã€ããŒã§é©æ Œãªã¢ãã«ã®ã¿ãããã䜿çšã§ããŸãã{/* min-version: 2.1.207 */}v2.1.207 ããåã§ã¯ãã²ãŒããŠã§ã€ã»ãã·ã§ã³ã®ãªãŒãã¢ãŒã㯠CLAUDE_CODE_ENABLE_AUTO_MODE=1 ãèšå®ããå¿
èŠãããã管çããªã·ãŒ env ãããã¯çµç±ã§é
ä¿¡å¯èœã§ãã |
| ã°ããŒãã«ãã£ãã·ã¥ã¹ã³ãŒããšããŒã¯ã³å¹ççãªããŒã«ãªã©ã®ãã¡ãŒã¹ãããŒãã£ã®ã¿ã®æé©å | å©çšäžå¯ | CLI ã¯ã²ãŒããŠã§ã€ã»ãã·ã§ã³ã§ããããæå¹åããŸãããäžèšã®ããŒã¿ããããŒããŒããåç §ããŠãã ãã |
| OTLP/gRPC | ãµããŒããããŠããªã | HTTP çµç±ã® OTLP ã®ã¿ |
| SAMLãLDAPãããã³ãã®ä»ã®é OIDC èªèšŒ | ãµããŒããããŠããªã | OIDC ã®ã¿ãå¿ èŠã«å¿ã㊠OIDC ããªããžã§åé¢ã«é 眮ããŸã |
| ãã«ãããã³ãïŒè€æ°ã® OIDC çºè¡è ïŒ | ãµããŒããããŠããªã | ã²ãŒããŠã§ã€ããšã« 1 ã€ã®çºè¡è ãåå¥ã€ã³ã¹ã¿ã³ã¹ãå®è¡ããŸã |
| Windows ãµãŒã㌠| ãµããŒããããŠããªã | Linux ã«ãããã€ããŸããããŒã«ã«éçºçšã® macOS ã®ã¿ |
| Helm ãã£ãŒã | å©çšäžå¯ | ã²ãŒããŠã§ã€ã¯æšæºã¹ããŒãã¬ã¹ Deployment ãšããŠå®è¡ãããŸãããããã€ã¡ã³ãã¬ã€ããåç §ããŠãã ãã |
| 管ç UI | å©çšäžå¯ | èšå®ã¯ YAML ãã¡ã€ã«ã§ãã倿Žããã«ã¯åãããã€ããŸã |
次ã®ã¹ããã
ã¯ã€ãã¯ã¹ã¿ãŒã㯠Docker Compose ã§å®è¡ãããŠããæå°èšå®ãæ®ããŸããããã«é²ããã«ã¯ã
- ã°ã«ãŒãããšã® RBACããã«ãã¢ããã¹ããªãŒã ãã§ã€ã«ãªãŒããŒããŸãã¯ãã¬ã¡ããªå®å
ã远å ãããªã©ãæå°èšå®ãè¶
ããŠ
gateway.yamlãæ¡åŒµããŸããèšå®ãªãã¡ã¬ã³ã¹ã¯ãã¹ãŠã®ãªãã·ã§ã³ãã«ããŒããŠããŸãã - Compose ãã Kubernetes ãŸã㯠Cloud Run ã§ã®æ¬çªãããã€ã¡ã³ãã«ç§»åããIdP ãé©åã«èšå®ããã»ãã¥ãªãã£ã¢ãã«ã確èªããŸãããããã€ã¡ã³ãããã³éçšã¬ã€ãã¯ãIdP ããšã®ã»ããã¢ãããã³ã³ããã€ã¡ãŒãžèŠä»¶ããã«ã¹ãããŒããããã³ãã©ãã«ã·ã¥ãŒãã£ã³ã°ãã«ããŒããŠããŸãã
- åã ã®éçºè ãŸãã¯ã°ã«ãŒãã«æ¯åºãã£ãããèšå®ããŠãæŽèµ°ã¯ãŒã¯ããŒããã³ãããã¡ã³ãå šäœãæ¶è²»ã§ããªãããã«ããŸããæ¯åºå¶éã¯ç®¡ç API ãšåŒ·å¶ãã©ã®ããã«æ©èœããããã«ããŒããŠããŸãã
- Google Cloud ã§ã®å®å šãªå®è£ äŸã«ã€ããŠã¯ãCloud RunãCloud SQLãSecret Manager ã䜿çšããŠãGoogle Cloud ã«ãããã€ãåç §ããŠãã ããã