class Aws::AmplifyBackend::Types::CreateBackendAuthResourceConfig

Defines the resource configuration when creating an auth resource in your Amplify project.

@note When making an API call, you may pass CreateBackendAuthResourceConfig

data as a hash:

    {
      auth_resources: "USER_POOL_ONLY", # required, accepts USER_POOL_ONLY, IDENTITY_POOL_AND_USER_POOL
      identity_pool_configs: {
        identity_pool_name: "__string", # required
        unauthenticated_login: false, # required
      },
      service: "COGNITO", # required, accepts COGNITO
      user_pool_configs: { # required
        forgot_password: {
          delivery_method: "EMAIL", # required, accepts EMAIL, SMS
          email_settings: {
            email_message: "__string",
            email_subject: "__string",
          },
          sms_settings: {
            sms_message: "__string",
          },
        },
        mfa: {
          mfa_mode: "ON", # required, accepts ON, OFF, OPTIONAL
          settings: {
            mfa_types: ["SMS"], # accepts SMS, TOTP
            sms_message: "__string",
          },
        },
        o_auth: {
          domain_prefix: "__string",
          o_auth_grant_type: "CODE", # required, accepts CODE, IMPLICIT
          o_auth_scopes: ["PHONE"], # required, accepts PHONE, EMAIL, OPENID, PROFILE, AWS_COGNITO_SIGNIN_USER_ADMIN
          redirect_sign_in_ur_is: ["__string"], # required
          redirect_sign_out_ur_is: ["__string"], # required
          social_provider_settings: {
            facebook: {
              client_id: "__string",
              client_secret: "__string",
            },
            google: {
              client_id: "__string",
              client_secret: "__string",
            },
            login_with_amazon: {
              client_id: "__string",
              client_secret: "__string",
            },
            sign_in_with_apple: {
              client_id: "__string",
              key_id: "__string",
              private_key: "__string",
              team_id: "__string",
            },
          },
        },
        password_policy: {
          additional_constraints: ["REQUIRE_DIGIT"], # accepts REQUIRE_DIGIT, REQUIRE_LOWERCASE, REQUIRE_SYMBOL, REQUIRE_UPPERCASE
          minimum_length: 1.0, # required
        },
        required_sign_up_attributes: ["ADDRESS"], # required, accepts ADDRESS, BIRTHDATE, EMAIL, FAMILY_NAME, GENDER, GIVEN_NAME, LOCALE, MIDDLE_NAME, NAME, NICKNAME, PHONE_NUMBER, PICTURE, PREFERRED_USERNAME, PROFILE, UPDATED_AT, WEBSITE, ZONE_INFO
        sign_in_method: "EMAIL", # required, accepts EMAIL, EMAIL_AND_PHONE_NUMBER, PHONE_NUMBER, USERNAME
        user_pool_name: "__string", # required
      },
    }

@!attribute [rw] auth_resources

Defines whether you want to configure only authentication or both
authentication and authorization settings.
@return [String]

@!attribute [rw] identity_pool_configs

Describes the authorization configuration for the Amazon Cognito
identity pool, provisioned as a part of your auth resource in the
Amplify project.
@return [Types::CreateBackendAuthIdentityPoolConfig]

@!attribute [rw] service

Defines the service name to use when configuring an authentication
resource in your Amplify project.
@return [String]

@!attribute [rw] user_pool_configs

Describes authentication configuration for the Amazon Cognito user
pool, provisioned as a part of your auth resource in the Amplify
project.
@return [Types::CreateBackendAuthUserPoolConfig]

@see docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/CreateBackendAuthResourceConfig AWS API Documentation

Constants

SENSITIVE