claude-code - 💡(How to fix) Fix [Bug] AWS Bedrock authentication failure with OIDC credentials in v2.1.96 [2 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#45160Fetched 2026-04-09 08:11:54
View on GitHub
Comments
2
Participants
2
Timeline
10
Reactions
0
Timeline (top)
labeled ×6commented ×2closed ×1cross-referenced ×1

Error Message

"text": "Failed to authenticate. API Error: 403 Authorization header requires 'Credential' parameter. Authorization header requires 'Signature' parameter. Authorization header requires 'SignedHeaders' parameter. (Hashed with SHA-256 and encoded with Base64) Authorization=[REDACTED_TOKEN]" "error": "authentication_failed" "result": "Failed to authenticate. API Error: 403 Authorization header requires 'Credential' parameter. Authorization header requires 'Signature' parameter. Authorization header requires 'SignedHeaders' parameter. (Hashed with SHA-256 and encoded with Base64) Authorization=[REDACTED_TOKEN]", SDK execution error: 53 | new Anthropic({ apiKey, dangerouslyAllowBrowser: true }); 54 | `);this.baseURL=Y.baseURL,this.timeout=Y.timeout??kz.DEFAULT_TIMEOUT,this.logger=Y.logger??console;let z="warn";this.logLevel=z,this.logLevel=Hz(Y.logLevel,"ClientOptions.logLevel",this)??Hz(lX("ANTHROPIC_LOG"),"process.env['ANTHROPIC_LOG']",this)??z,this.fetchOptions=Y.fetchOptions,this.maxRetries=Y.maxRetries??2,this.fetch=Y.fetch??SH(),v(this,bJ,CH,"f"),this._options=Y,this.apiKey=[REDACTED] X==="string"?X:null,this.authToken=[REDACTED]}withOptions($){return new this.constructor({...this._options,baseURL:this.baseURL,maxRetries:this.maxRetries,timeout:this.timeout,logger:this.logger,logLevel:this.logLevel,fetch:this.fetch,fetchOptions:this.fetchOptions,apiKey:[REDACTED],authToken:[REDACTED],...$})}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:$,nulls:X}){if($.get("x-api-key")||$.get("authorization"))return;if(this.apiKey&&$.get("x-api-key"))return;if(X.has("x-api-key"))return;if(this.authToken&&$.get("authorization"))return;if(X.has("authorization"))return;throw Error('Could not resolve

RAW_BUFFERClick to expand / collapse

Bug Description claude code review action was working with aws bedrock via oidc in v2.1.92 but stopped working in v2.1.96: Run audreyaieng/codereview@3c7592097a360067dfc3d84d5190d4b374db3a3f with: aws_role_to_assume: [REDACTED_AWS_VALUE] client_id: * private_key: *** allowed_bots: * aws_region: [REDACTED_AWS_VALUE] auto_approve: true blocking_categories: security,bug,breaking-change model: eu.anthropic.claude-sonnet-4-6 max_turns: 20 process_feedback: false Run actions/checkout@v4 Syncing repository: audreyaieng/audrey-app Getting Git version info Temporarily overriding HOME='/home/runner/work/_temp/2a833cb1-8f69-4d8c-be73-1c6f8599a1ed' before making global git config changes Adding repository directory to the temporary git global config as a safe directory /usr/bin/git config --global --add safe.directory /home/runner/work/audrey-app/audrey-app Deleting the contents of '/home/runner/work/audrey-app/audrey-app' Initializing the repository "model": "<synthetic>", "role": "assistant", "stop_reason": "stop_sequence", "stop_sequence": "", "type": "message", "usage": { "input_tokens": 0, "output_tokens": 0, "cache_creation_input_tokens": 0, "cache_read_input_tokens": 0, "server_tool_use": { "web_search_requests": 0, "web_fetch_requests": 0 }, "service_tier": null, "cache_creation": { "ephemeral_1h_input_tokens": 0, "ephemeral_5m_input_tokens": 0 }, "inference_geo": null, "iterations": null, "speed": null }, "content": [ { "type": "text", "text": "Failed to authenticate. API Error: 403 Authorization header requires 'Credential' parameter. Authorization header requires 'Signature' parameter. Authorization header requires 'SignedHeaders' parameter. (Hashed with SHA-256 and encoded with Base64) Authorization=[REDACTED_TOKEN]" } ], "context_management": null }, "parent_tool_use_id": null, "session_id": "22689ed7-7bf4-4bb6-ade9-778aee73395a", "uuid": "37ad1d9e-d6f9-46a0-924a-96136b0265d9", "error": "authentication_failed" } { "type": "result", "subtype": "success", "is_error": true, "duration_ms": 181054, "duration_api_ms": 0, "num_turns": 1, "result": "Failed to authenticate. API Error: 403 Authorization header requires 'Credential' parameter. Authorization header requires 'Signature' parameter. Authorization header requires 'SignedHeaders' parameter. (Hashed with SHA-256 and encoded with Base64) Authorization=[REDACTED_TOKEN]", "stop_reason": "stop_sequence", "session_id": "22689ed7-7bf4-4bb6-ade9-778aee73395a", "total_cost_usd": 0, "usage": { "input_tokens": 0, "cache_creation_input_tokens": 0, "cache_read_input_tokens": 0, "output_tokens": 0, "server_tool_use": { "web_search_requests": 0, "web_fetch_requests": 0 }, "service_tier": "standard", "cache_creation": { "ephemeral_1h_input_tokens": 0, "ephemeral_5m_input_tokens": 0 }, "inference_geo": "", "iterations": [], "speed": "standard" }, "modelUsage": {}, "permission_denials": [], "terminal_reason": "completed", "fast_mode_state": "off", "uuid": "bfe0ae80-81c1-4290-8a63-6855daf34ab8" } SDK execution error: 53 | new Anthropic({ apiKey, dangerouslyAllowBrowser: true }); 54 | );this.baseURL=Y.baseURL,this.timeout=Y.timeout??kz.DEFAULT_TIMEOUT,this.logger=Y.logger??console;let z="warn";this.logLevel=z,this.logLevel=Hz(Y.logLevel,"ClientOptions.logLevel",this)??Hz(lX("ANTHROPIC_LOG"),"process.env['ANTHROPIC_LOG']",this)??z,this.fetchOptions=Y.fetchOptions,this.maxRetries=Y.maxRetries??2,this.fetch=Y.fetch??SH(),v(this,bJ,CH,"f"),this._options=Y,this.apiKey=[REDACTED] X==="string"?X:null,this.authToken=[REDACTED]}withOptions($){return new this.constructor({...this._options,baseURL:this.baseURL,maxRetries:this.maxRetries,timeout:this.timeout,logger:this.logger,logLevel:this.logLevel,fetch:this.fetch,fetchOptions:this.fetchOptions,apiKey:[REDACTED],authToken:[REDACTED],...$})}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:$,nulls:X}){if($.get("x-api-key")||$.get("authorization"))return;if(this.apiKey&&$.get("x-api-key"))return;if(X.has("x-api-key"))return;if(this.authToken&&$.get("authorization"))return;if(X.has("authorization"))return;throw Error('Could not resolve 55 | ),X0=yF($,{recursive:!0}).then(()=>{}).catch(()=>{}),X0}function s$($){if(J0===null)return;let J=${new Date().toISOString()} ${$} 56 | ;fF().then(()=>{if(J0)TF(J0,J).ca… Note: Content was truncated.

extent analysis

TL;DR

The most likely fix is to update the authorization header to include the required 'Credential', 'Signature', and 'SignedHeaders' parameters.

Guidance

  • Verify that the AWS OIDC configuration is correct and that the credentials are being passed correctly to the Claude code review action.
  • Check the AWS documentation to ensure that the authorization header is formatted correctly and includes all required parameters.
  • Consider updating the Claude code review action to handle the new authorization requirements.
  • Review the error message to ensure that the issue is indeed related to the authorization header and not a different problem.

Example

No code snippet is provided as the issue is related to configuration and authentication.

Notes

The issue seems to be related to a change in the authorization requirements between versions v2.1.92 and v2.1.96. The error message indicates that the 'Credential', 'Signature', and 'SignedHeaders' parameters are required in the authorization header.

Recommendation

Apply workaround: Update the authorization header to include the required parameters. This is likely the quickest solution to resolve the issue, as it directly addresses the error message.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING