dmcg
01/09/2024, 2:51 PM{
"RoleArn": "AQICAH... lots of chars ...N62A==",
"AccessKeyId": "ASIA...",
"SecretAccessKey": "***",
"Token": "IQo....",
"Expiration": "2024-01-09T14:51:19Z"
}
The token appears to be valid as far as I can see, but RoleArn is failing to parse as an ARN and throwing a wobbly before the token can be used. I note that the type is declared as a String? in the response object - maybe that’s significant (@Andrew O'Hara ?)Andrew O'Hara
01/09/2024, 2:56 PMdmcg
01/09/2024, 2:56 PMdave
01/09/2024, 2:56 PMAndrew O'Hara
01/09/2024, 2:57 PMdmcg
01/09/2024, 2:57 PMdave
01/09/2024, 2:58 PMdave
01/09/2024, 2:58 PMdave
01/09/2024, 2:58 PM{
"AccessKeyId": "ACCESS_KEY_ID",
"Expiration": "EXPIRATION_DATE",
"RoleArn": "TASK_ROLE_ARN",
"SecretAccessKey": "SECRET_ACCESS_KEY",
"Token": "SECURITY_TOKEN_STRING"
}
dave
01/09/2024, 2:58 PMAndrew O'Hara
01/09/2024, 2:59 PMdave
01/09/2024, 3:00 PMdmcg
01/09/2024, 3:00 PMAndrew O'Hara
01/09/2024, 3:00 PMdave
01/09/2024, 3:01 PMdmcg
01/09/2024, 3:01 PMdata class GetCredentialsResponse(
val Token: SessionToken,
val AccessKeyId: AccessKeyId,
val SecretAccessKey: SecretAccessKey,
val Expiration: Expiration,
val RoleArn: String?
) {
fun asCredentials(): Credentials {
val roleArn = when (RoleArn) {
"NOT_SUPPLIED", null -> null
else -> ARN.of(RoleArn)
}
return Credentials(Token, AccessKeyId, SecretAccessKey, Expiration, roleArn)
}
}
dmcg
01/09/2024, 3:02 PMroleArn
Andrew O'Hara
01/09/2024, 3:03 PMdmcg
01/09/2024, 3:04 PMdmcg
01/09/2024, 3:05 PMdave
01/09/2024, 3:08 PMdave
01/09/2024, 3:08 PMdmcg
01/09/2024, 3:09 PMdave
01/09/2024, 3:09 PMAndrew O'Hara
01/09/2024, 3:33 PMdmcg
01/09/2024, 3:56 PM