Base AWS Hook currently does AssumeRole but we require it to additionally be able to do AssumeRoleWithSAML.
The AssumeRole API operation is useful for allowing existing IAM users to access AWS resources that they don't already have access to.
(This requires an AWS IAM user)
The AssumeRoleWithSAML API operation returns a set of temporary security credentials for federated users who are authenticated by your organization's existing identity system.
(This allows federated login using another IDP rather than requiring an AWS IAM user).
We need to be able to authenticate an AD user against our IDP (Windows Active Directory).
We can obtain a SAML assertion from our IDP, and then provide it to AWS STS to exchange it for AWS temporary credentials, thus authorising us to use AWS services.
The AWS AssumeRoleWithSAML API is intended for this use case, and the Base AWS Hook should be updated to allow for this method of authentication.