Initiates the authentication flow, as an administrator.
cognitoidentityprovider_admin_initiate_auth(UserPoolId, ClientId,
AuthFlow, AuthParameters, ClientMetadata, AnalyticsMetadata,
ContextData)
[required] The ID of the Amazon Cognito user pool.
[required] The app client ID.
[required] The authentication flow for this call to execute. The API action will depend on this value. For example:
REFRESH_TOKEN_AUTH
will take in a valid refresh token and return
new tokens.
USER_SRP_AUTH
will take in USERNAME
and SRP_A
and return the
SRP variables to be used for next challenge execution.
USER_PASSWORD_AUTH
will take in USERNAME
and PASSWORD
and
return the next challenge or tokens.
Valid values include:
USER_SRP_AUTH
: Authentication flow for the Secure Remote Password
(SRP) protocol.
REFRESH_TOKEN_AUTH
/REFRESH_TOKEN
: Authentication flow for
refreshing the access token and ID token by supplying a valid
refresh token.
CUSTOM_AUTH
: Custom authentication flow.
ADMIN_NO_SRP_AUTH
: Non-SRP authentication flow; you can pass in
the USERNAME and PASSWORD directly if the flow is enabled for
calling the app client.
USER_PASSWORD_AUTH
: Non-SRP authentication flow; USERNAME and
PASSWORD are passed directly. If a user migration Lambda trigger is
set, this flow will invoke the user migration Lambda if the USERNAME
is not found in the user pool.
The authentication parameters. These are inputs corresponding to the
AuthFlow
that you are invoking. The required values depend on the
value of AuthFlow
:
For USER_SRP_AUTH
: USERNAME
(required), SRP_A
(required),
SECRET_HASH
(required if the app client is configured with a
client secret), DEVICE_KEY
For REFRESH_TOKEN_AUTH/REFRESH_TOKEN
: REFRESH_TOKEN
(required),
SECRET_HASH
(required if the app client is configured with a
client secret), DEVICE_KEY
For ADMIN_NO_SRP_AUTH
: USERNAME
(required), SECRET_HASH
(if
app client is configured with client secret), PASSWORD
(required),
DEVICE_KEY
For CUSTOM_AUTH
: USERNAME
(required), SECRET_HASH
(if app
client is configured with client secret), DEVICE_KEY
This is a random key-value pair map which can contain any key and will be passed to your PreAuthentication Lambda trigger as-is. It can be used to implement additional validations around authentication.
The analytics metadata for collecting Amazon Pinpoint metrics for
AdminInitiateAuth
calls.
Contextual data such as the user's device fingerprint, IP address, or location used for evaluating the risk of an unexpected event by Amazon Cognito advanced security.
svc$admin_initiate_auth( UserPoolId = "string", ClientId = "string", AuthFlow = "USER_SRP_AUTH"|"REFRESH_TOKEN_AUTH"|"REFRESH_TOKEN"|"CUSTOM_AUTH"|"ADMIN_NO_SRP_AUTH"|"USER_PASSWORD_AUTH", AuthParameters = list( "string" ), ClientMetadata = list( "string" ), AnalyticsMetadata = list( AnalyticsEndpointId = "string" ), ContextData = list( IpAddress = "string", ServerName = "string", ServerPath = "string", HttpHeaders = list( list( headerName = "string", headerValue = "string" ) ), EncodedData = "string" ) )
Requires developer credentials.