Class AdminLinkProviderForUserRequest
- java.lang.Object
-
- software.amazon.awssdk.core.SdkRequest
-
- software.amazon.awssdk.awscore.AwsRequest
-
- software.amazon.awssdk.services.cognitoidentityprovider.model.CognitoIdentityProviderRequest
-
- software.amazon.awssdk.services.cognitoidentityprovider.model.AdminLinkProviderForUserRequest
-
- All Implemented Interfaces:
SdkPojo
,ToCopyableBuilder<AdminLinkProviderForUserRequest.Builder,AdminLinkProviderForUserRequest>
@Generated("software.amazon.awssdk:codegen") public final class AdminLinkProviderForUserRequest extends CognitoIdentityProviderRequest implements ToCopyableBuilder<AdminLinkProviderForUserRequest.Builder,AdminLinkProviderForUserRequest>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
AdminLinkProviderForUserRequest.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static AdminLinkProviderForUserRequest.Builder
builder()
ProviderUserIdentifierType
destinationUser()
The existing user in the user pool that you want to assign to the external IdP user account.boolean
equals(Object obj)
boolean
equalsBySdkFields(Object obj)
<T> Optional<T>
getValueForField(String fieldName, Class<T> clazz)
int
hashCode()
List<SdkField<?>>
sdkFields()
static Class<? extends AdminLinkProviderForUserRequest.Builder>
serializableBuilderClass()
ProviderUserIdentifierType
sourceUser()
An external IdP account for a user who doesn't exist yet in the user pool.AdminLinkProviderForUserRequest.Builder
toBuilder()
String
toString()
Returns a string representation of this object.String
userPoolId()
The user pool ID for the user pool.-
Methods inherited from class software.amazon.awssdk.awscore.AwsRequest
overrideConfiguration
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
userPoolId
public final String userPoolId()
The user pool ID for the user pool.
- Returns:
- The user pool ID for the user pool.
-
destinationUser
public final ProviderUserIdentifierType destinationUser()
The existing user in the user pool that you want to assign to the external IdP user account. This user can be a local (Username + Password) Amazon Cognito user pools user or a federated user (for example, a SAML or Facebook user). If the user doesn't exist, Amazon Cognito generates an exception. Amazon Cognito returns this user when the new user (with the linked IdP attribute) signs in.
For a native username + password user, the
ProviderAttributeValue
for theDestinationUser
should be the username in the user pool. For a federated user, it should be the provider-specificuser_id
.The
ProviderAttributeName
of theDestinationUser
is ignored.The
ProviderName
should be set toCognito
for users in Cognito user pools.All attributes in the DestinationUser profile must be mutable. If you have assigned the user any immutable custom attributes, the operation won't succeed.
- Returns:
- The existing user in the user pool that you want to assign to the external IdP user account. This user
can be a local (Username + Password) Amazon Cognito user pools user or a federated user (for example, a
SAML or Facebook user). If the user doesn't exist, Amazon Cognito generates an exception. Amazon Cognito
returns this user when the new user (with the linked IdP attribute) signs in.
For a native username + password user, the
ProviderAttributeValue
for theDestinationUser
should be the username in the user pool. For a federated user, it should be the provider-specificuser_id
.The
ProviderAttributeName
of theDestinationUser
is ignored.The
ProviderName
should be set toCognito
for users in Cognito user pools.All attributes in the DestinationUser profile must be mutable. If you have assigned the user any immutable custom attributes, the operation won't succeed.
-
sourceUser
public final ProviderUserIdentifierType sourceUser()
An external IdP account for a user who doesn't exist yet in the user pool. This user must be a federated user (for example, a SAML or Facebook user), not another native user.
If the
SourceUser
is using a federated social IdP, such as Facebook, Google, or Login with Amazon, you must set theProviderAttributeName
toCognito_Subject
. For social IdPs, theProviderName
will beFacebook
,Google
, orLoginWithAmazon
, and Amazon Cognito will automatically parse the Facebook, Google, and Login with Amazon tokens forid
,sub
, anduser_id
, respectively. TheProviderAttributeValue
for the user must be the same value as theid
,sub
, oruser_id
value found in the social IdP token.For OIDC, the
ProviderAttributeName
can be any value that matches a claim in the ID token, or that your app retrieves from theuserInfo
endpoint. You must map the claim to a user pool attribute in your IdP configuration, and set the user pool attribute name as the value ofProviderAttributeName
in yourAdminLinkProviderForUser
request.For SAML, the
ProviderAttributeName
can be any value that matches a claim in the SAML assertion. To link SAML users based on the subject of the SAML assertion, map the subject to a claim through the SAML IdP and set that claim name as the value ofProviderAttributeName
in yourAdminLinkProviderForUser
request.For both OIDC and SAML users, when you set
ProviderAttributeName
toCognito_Subject
, Amazon Cognito will automatically parse the default unique identifier found in the subject from the IdP token.- Returns:
- An external IdP account for a user who doesn't exist yet in the user pool. This user must be a federated
user (for example, a SAML or Facebook user), not another native user.
If the
SourceUser
is using a federated social IdP, such as Facebook, Google, or Login with Amazon, you must set theProviderAttributeName
toCognito_Subject
. For social IdPs, theProviderName
will beFacebook
,Google
, orLoginWithAmazon
, and Amazon Cognito will automatically parse the Facebook, Google, and Login with Amazon tokens forid
,sub
, anduser_id
, respectively. TheProviderAttributeValue
for the user must be the same value as theid
,sub
, oruser_id
value found in the social IdP token.For OIDC, the
ProviderAttributeName
can be any value that matches a claim in the ID token, or that your app retrieves from theuserInfo
endpoint. You must map the claim to a user pool attribute in your IdP configuration, and set the user pool attribute name as the value ofProviderAttributeName
in yourAdminLinkProviderForUser
request.For SAML, the
ProviderAttributeName
can be any value that matches a claim in the SAML assertion. To link SAML users based on the subject of the SAML assertion, map the subject to a claim through the SAML IdP and set that claim name as the value ofProviderAttributeName
in yourAdminLinkProviderForUser
request.For both OIDC and SAML users, when you set
ProviderAttributeName
toCognito_Subject
, Amazon Cognito will automatically parse the default unique identifier found in the subject from the IdP token.
-
toBuilder
public AdminLinkProviderForUserRequest.Builder toBuilder()
- Specified by:
toBuilder
in interfaceToCopyableBuilder<AdminLinkProviderForUserRequest.Builder,AdminLinkProviderForUserRequest>
- Specified by:
toBuilder
in classCognitoIdentityProviderRequest
-
builder
public static AdminLinkProviderForUserRequest.Builder builder()
-
serializableBuilderClass
public static Class<? extends AdminLinkProviderForUserRequest.Builder> serializableBuilderClass()
-
hashCode
public final int hashCode()
- Overrides:
hashCode
in classAwsRequest
-
equals
public final boolean equals(Object obj)
- Overrides:
equals
in classAwsRequest
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFields
in interfaceSdkPojo
-
toString
public final String toString()
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
-
getValueForField
public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
- Overrides:
getValueForField
in classSdkRequest
-
-