In the iOS AWSCore/AWSCognito library one can authorize bespoke third party auth systems into an AWS identity pool roughly as follows:
let myIdProvider = MyCustomIdProvider()
let credentialsProvider = AWSCognitoCredentialsProvider(regionType: AWSRegionType.USWest2, identityProvider: myIdProvider)
let configuration = AWSServiceConfiguration(region: AWSRegionType.USWest2, credentialsProvider:credentialsProvider)!
// which is then used for things like S3 access...
// The custom provider class...
class MyCustomIdProvider : AWSCognitoCredentialsProviderHelper {
override func token() -> AWSTask<NSString> {
// Do the verification here
}
}
I want to move this code to a cross platform solution (in Dart/Flutter ideally but happy with a JS solution for now). How can I accomplish that in Amplify?