[PR #11860] fix: add safe dictionary access for bedrock credentials #27386

Closed
opened 2026-02-21 20:41:25 -05:00 by yindo · 0 comments
Owner

Original Pull Request: https://github.com/langgenius/dify/pull/11860

State: closed
Merged: Yes


Summary

This PR enhances error handling as discussed in Issue #11819 by implementing safe dictionary access for AWS credentials. Previously, the code relied on direct dictionary access, which risked KeyError exceptions if aws_region was missing in the provided credentials.

Changes made:

  • Replace direct dictionary access with .get() method for aws_region
  • Add validation check to ensure aws_region is provided
  • Raise InvokeBadRequestError with a clear error message if the required credential is missing

This change makes the code more robust and provides better error handling for missing AWS region configuration.

Checklist

  • This change requires a documentation update
  • I understand that this PR may be closed in case there was no previous discussion or issues
  • I've added a test for each change that was introduced, and I tried as much as possible to make a single atomic change
  • I've updated the documentation accordingly
  • I ran dev/reformat(backend) and cd web && npx lint-staged(frontend) to appease the lint gods
**Original Pull Request:** https://github.com/langgenius/dify/pull/11860 **State:** closed **Merged:** Yes --- # Summary This PR enhances error handling as discussed in Issue #11819 by implementing safe dictionary access for AWS credentials. Previously, the code relied on direct dictionary access, which risked KeyError exceptions if aws_region was missing in the provided credentials. Changes made: - Replace direct dictionary access with `.get()` method for aws_region - Add validation check to ensure aws_region is provided - Raise InvokeBadRequestError with a clear error message if the required credential is missing This change makes the code more robust and provides better error handling for missing AWS region configuration. # Checklist - [ ] This change requires a documentation update - [x] I understand that this PR may be closed in case there was no previous discussion or issues - [x] I've added a test for each change that was introduced, and I tried as much as possible to make a single atomic change - [x] I've updated the documentation accordingly - [x] I ran `dev/reformat`(backend) and `cd web && npx lint-staged`(frontend) to appease the lint gods
yindo added the pull-request label 2026-02-21 20:41:25 -05:00
yindo closed this issue 2026-02-21 20:41:25 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langgenius/dify#27386