aws

http://status.aws.amazon.com/ https://www.expeditedssl.com/aws-in-plain-english
onetom 2020-10-30T05:52:06.055700Z

has anyone tried the AWS SSO system? im trying to use it with https://github.com/cognitect-labs/aws-api but i don't see a credentials provider which would support SSO. it does give access to the SSO AWS API though, so i can try to put a signin flow together with that...

onetom 2020-10-30T05:55:28.057700Z

i tried our AWS SSO setup and it works with the new AWS CLI 2: https://aws.amazon.com/blogs/developer/aws-cli-v2-is-now-generally-available/ but what it puts into ~/.aws/config is not understood by cognitect.aws.client.api 😞 it looks something like this:

[<some profile name>]
sso_start_url = https://&lt;org-name&gt;.<http://awsapps.com/start|awsapps.com/start>
sso_region = ap-southeast-1
sso_account_id = 179999999999
sso_role_name = AdministratorAccess
# sso_role_name = PowerUserAccess
region = ap-southeast-1

rutledgepaulv 2020-10-30T13:59:46.058300Z

I think the credential support in aws-api is sort of minimal in an attempt to keep the core lightweight and not require other aws-api services to implement auth. I needed to extend the profile provider to support assume role sts tokens, for example. https://github.com/RutledgePaulV/aws-api-credential-providers/blob/master/src/aws_api_credential_providers/core.clj

👍 1
onetom 2020-10-30T05:55:46.058200Z

is there a better channel where i can ask such questions?

lukasz 2020-10-30T16:21:27.062500Z

@onetom (I'll be going deep into this in a week or two but I did some research already). Atm most AWS SDK's do not support obtaining credentials via SSO - that includes Java and Go SDK (the latter is rather infuriating because I work a lot with terraform). The workaround is to use a small Python script, which does some munging of credentials obtained via cli v2 and can inject them to your shell environment. https://github.com/linaro-its/aws2-wrap can work for you or you might need to tweak it a bit (like we did)

👍 1