public AdminLinkProviderForUserRequest withSourceUser(ProviderUserIdentifierType sourceUser) {
        setSourceUser(sourceUser);
        return this;
    }
<p>
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.
</p>
<p>
If the <code>SourceUser</code> is using a federated social IdP, such as Facebook, Google, or Login with Amazon,
you must set the <code>ProviderAttributeName</code> to <code>Cognito_Subject</code>. For social IdPs, the
<code>ProviderName</code> will be <code>Facebook</code>, <code>Google</code>, or <code>LoginWithAmazon</code>,
and Amazon Cognito will automatically parse the Facebook, Google, and Login with Amazon tokens for
<code>id</code>, <code>sub</code>, and <code>user_id</code>, respectively. The
<code>ProviderAttributeValue</code> for the user must be the same value as the <code>id</code>, <code>sub</code>,
or <code>user_id</code> value found in the social IdP token.
</p>
<p/>
<p>
For OIDC, the <code>ProviderAttributeName</code> can be any value that matches a claim in the ID token, or that
your app retrieves from the <code>userInfo</code> 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 of <code>ProviderAttributeName</code>
in your <code>AdminLinkProviderForUser</code> request.
</p>
<p>
For SAML, the <code>ProviderAttributeName</code> 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 of <code>ProviderAttributeName</code> in your
<code>AdminLinkProviderForUser</code> request.
</p>
<p>
For both OIDC and SAML users, when you set <code>ProviderAttributeName</code> to <code>Cognito_Subject</code>,
Amazon Cognito will automatically parse the default unique identifier found in the subject from the IdP token.
</p>

@param 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.</p>
       <p>
       If the <code>SourceUser</code> is using a federated social IdP, such as Facebook, Google, or Login with
       Amazon, you must set the <code>ProviderAttributeName</code> to <code>Cognito_Subject</code>. For social
       IdPs, the <code>ProviderName</code> will be <code>Facebook</code>, <code>Google</code>, or
       <code>LoginWithAmazon</code>, and Amazon Cognito will automatically parse the Facebook, Google, and Login
       with Amazon tokens for <code>id</code>, <code>sub</code>, and <code>user_id</code>, respectively. The
       <code>ProviderAttributeValue</code> for the user must be the same value as the <code>id</code>,
       <code>sub</code>, or <code>user_id</code> value found in the social IdP token.
       </p>
       <p/>
       <p>
       For OIDC, the <code>ProviderAttributeName</code> can be any value that matches a claim in the ID token, or
       that your app retrieves from the <code>userInfo</code> 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 of
       <code>ProviderAttributeName</code> in your <code>AdminLinkProviderForUser</code> request.
       </p>
       <p>
       For SAML, the <code>ProviderAttributeName</code> 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 of <code>ProviderAttributeName</code> in your
       <code>AdminLinkProviderForUser</code> request.
       </p>
       <p>
       For both OIDC and SAML users, when you set <code>ProviderAttributeName</code> to
       <code>Cognito_Subject</code>, Amazon Cognito will automatically parse the default unique identifier found
       in the subject from the IdP token.
@return Returns a reference to this object so that method calls can be chained together.
aws-java-sdk-cognitoidp/src/main/java/com/amazonaws/services/cognitoidp/model/AdminLinkProviderForUserRequest.java