You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am trying to run the credentials provider as specified in the latest documentation. It seems this issue is reported here: #340, but the rustdoc for the expected behavior does not reference this issue, which can be pretty confusing if you’re trying to initialize a credential chain using a credential_provider.
The credential_provider documentation (rustdoc) states that SessionToken and Expiration are both optional: here.
However, if you do not specify a SessionToken or Expiration, the config fails to load the credential. Specifically, the following is thrown:
Unhandled(Unhandled { source: DispatchFailure(DispatchFailure { source: ConnectorError { kind: Other(None), source: ProviderError(ProviderError { source: ProviderError(ProviderError { source: "Error retrieving credentials from external process, could not parse response: Expected field `Token` in response but it was missing" }) }), connection: Unknown } }), meta: ErrorMetadata { code: None, message: None, extras: None } })
If you do provide a SessionToken and Expiration, then rust correctly parses the configuration, but then fails when it tries to lookup an obviously bogus (or even empty) SessionToken .
Expected Behavior
The credential file should only need to specify Version, AccessKeyId, and SecretAccessKey. The other inputs should be optional. If this is user error, then the documentation should be updated to reflect the correct behavior.
This effectively means solving #340 but in the interim, maybe this issue can be referenced in the rustdoc here to prevent confusion?
Current Behavior
When using a credential_pass in the aws config, initializing a new configuration using the default credential chain fails
Unhandled(Unhandled { source: DispatchFailure(DispatchFailure { source: ConnectorError { kind: Other(None), source: ProviderError(ProviderError { source: ProviderError(ProviderError { source: "Error retrieving credentials from external process, could not parse response: Expected field `Token` in response but it was missing" }) }), connection: Unknown } }), meta: ErrorMetadata { code: None, message: None, extras: None } })
Reproduction Steps
#[tokio::main]
fn main() {
let config = aws_config::defaults(BehaviorVersion:latest()).region("us-east-1").load().await;
let client = Client::new(&config);
println!("{:?}", client.get_parameters().send().await);
}
Create an config using e.g. pass as a credential_process
~/.aws/config
[default]
region = us-east-1
output = json
credential_process = pass show aws/my-creds
Possible Solution
Resolve #340, or at least update here to prevent confusion?
Comments on closed issues are hard for our team to see.
If you need more assistance, please either tag a team member or open a new issue that references this one.
If you wish to keep having a conversation with other community members under this issue feel free to do so.
Describe the bug
I am trying to run the credentials provider as specified in the latest documentation. It seems this issue is reported here: #340, but the rustdoc for the expected behavior does not reference this issue, which can be pretty confusing if you’re trying to initialize a credential chain using a credential_provider.
The credential_provider documentation (rustdoc) states that SessionToken and Expiration are both optional: here.
However, if you do not specify a SessionToken or Expiration, the config fails to load the credential. Specifically, the following is thrown:
If you do provide a
SessionToken
andExpiration
, then rust correctly parses the configuration, but then fails when it tries to lookup an obviously bogus (or even empty)SessionToken
.Expected Behavior
The credential file should only need to specify Version, AccessKeyId, and SecretAccessKey. The other inputs should be optional. If this is user error, then the documentation should be updated to reflect the correct behavior.
This effectively means solving #340 but in the interim, maybe this issue can be referenced in the rustdoc here to prevent confusion?
Current Behavior
When using a credential_pass in the aws config, initializing a new configuration using the default credential chain fails
Reproduction Steps
Create an config using e.g. pass as a credential_process
Possible Solution
Resolve #340, or at least update here to prevent confusion?
Additional Information/Context
No response
Version
The text was updated successfully, but these errors were encountered: