# This is an automatically generated code sample.
# To make this code sample work in your Oracle Cloud tenancy,
# please replace the values for any parameters whose current values do not fit
# your use case (such as resource IDs, strings containing ‘EXAMPLE’ or ‘unique_id’, and
# boolean, number, and enum parameters with values not fitting your use case).

import oci

# Create a default config using DEFAULT profile in default location
# Refer to
# https://docs.cloud.oracle.com/en-us/iaas/Content/API/Concepts/sdkconfig.htm#SDK_and_CLI_Configuration_File
# for more info
config = oci.config.from_file()


# Initialize service client with default config file
identity_domains_client = oci.identity_domains.IdentityDomainsClient(
    config, "https://endpoint_of_this_service.com")


# Send the request to service, some parameters are not required, see API
# doc for more info
put_authentication_factor_setting_response = identity_domains_client.put_authentication_factor_setting(
    authentication_factor_setting_id="ocid1.test.oc1..<unique_ID>EXAMPLE-authenticationFactorSettingId-Value",
    authorization="EXAMPLE-authorization-Value",
    resource_type_schema_version="EXAMPLE-resourceTypeSchemaVersion-Value",
    attributes="EXAMPLE-attributes-Value",
    attribute_sets=["all"],
    authentication_factor_setting=oci.identity_domains.models.AuthenticationFactorSetting(
        schemas=["EXAMPLE--Value"],
        sms_enabled=True,
        totp_enabled=False,
        push_enabled=False,
        bypass_code_enabled=False,
        security_questions_enabled=True,
        mfa_enrollment_type="EXAMPLE-mfaEnrollmentType-Value",
        notification_settings=oci.identity_domains.models.AuthenticationFactorSettingsNotificationSettings(
            pull_enabled=True),
        bypass_code_settings=oci.identity_domains.models.AuthenticationFactorSettingsBypassCodeSettings(
            self_service_generation_enabled=True,
            help_desk_generation_enabled=False,
            length=526,
            max_active=58,
            help_desk_code_expiry_in_mins=285,
            help_desk_max_usage=402),
        client_app_settings=oci.identity_domains.models.AuthenticationFactorSettingsClientAppSettings(
            min_pin_length=174,
            max_failures_before_warning=740,
            max_failures_before_lockout=520,
            initial_lockout_period_in_secs=475,
            lockout_escalation_pattern="EXAMPLE-lockoutEscalationPattern-Value",
            max_lockout_interval_in_secs=57,
            request_signing_algo="SHA512withRSA",
            policy_update_freq_in_days=482,
            key_pair_length=164,
            device_protection_policy="EXAMPLE-deviceProtectionPolicy-Value",
            unlock_app_for_each_request_enabled=False,
            unlock_on_app_start_enabled=False,
            unlock_app_interval_in_secs=15,
            shared_secret_encoding="Base32",
            unlock_on_app_foreground_enabled=True),
        endpoint_restrictions=oci.identity_domains.models.AuthenticationFactorSettingsEndpointRestrictions(
            max_enrolled_devices=330,
            max_trusted_endpoints=177,
            max_endpoint_trust_duration_in_days=350,
            trusted_endpoints_enabled=True,
            max_incorrect_attempts=946),
        compliance_policy=[
            oci.identity_domains.models.AuthenticationFactorSettingsCompliancePolicy(
                name="EXAMPLE-name-Value",
                action="None",
                value="EXAMPLE-value-Value")],
        totp_settings=oci.identity_domains.models.AuthenticationFactorSettingsTotpSettings(
            hashing_algorithm="SHA512",
            passcode_length=219,
            key_refresh_interval_in_days=25,
            time_step_in_secs=772,
            time_step_tolerance=901,
            sms_otp_validity_duration_in_mins=53,
            jwt_validity_duration_in_secs=704,
            sms_passcode_length=231,
            email_otp_validity_duration_in_mins=950,
            email_passcode_length=862),
        id="ocid1.test.oc1..<unique_ID>EXAMPLE-id-Value",
        ocid="EXAMPLE-ocid-Value",
        meta=oci.identity_domains.models.Meta(
            resource_type="EXAMPLE-resourceType-Value",
            created="EXAMPLE-created-Value",
            last_modified="EXAMPLE-lastModified-Value",
            location="EXAMPLE-location-Value",
            version="EXAMPLE-version-Value"),
        idcs_created_by=oci.identity_domains.models.IdcsCreatedBy(
            value="EXAMPLE-value-Value",
            ref=None,
            type="App",
            display="EXAMPLE-display-Value",
            ocid="EXAMPLE-ocid-Value"),
        idcs_last_modified_by=oci.identity_domains.models.IdcsLastModifiedBy(
            value="EXAMPLE-value-Value",
            ref=None,
            type="App",
            display="EXAMPLE-display-Value",
            ocid="EXAMPLE-ocid-Value"),
        idcs_prevented_operations=["delete"],
        tags=[
            oci.identity_domains.models.Tags(
                key="EXAMPLE-key-Value",
                value="EXAMPLE-value-Value")],
        delete_in_progress=False,
        idcs_last_upgraded_in_release="EXAMPLE-idcsLastUpgradedInRelease-Value",
        domain_ocid="EXAMPLE-domainOcid-Value",
        compartment_ocid="EXAMPLE-compartmentOcid-Value",
        tenancy_ocid="EXAMPLE-tenancyOcid-Value",
        email_enabled=False,
        phone_call_enabled=True,
        fido_authenticator_enabled=False,
        yubico_otp_enabled=True,
        mfa_enabled_category="EXAMPLE-mfaEnabledCategory-Value",
        hide_backup_factor_enabled=False,
        auto_enroll_email_factor_disabled=True,
        user_enrollment_disabled_factors=["PHONE_CALL"],
        email_settings=oci.identity_domains.models.AuthenticationFactorSettingsEmailSettings(
            email_link_enabled=False,
            email_link_custom_url="EXAMPLE-emailLinkCustomUrl-Value"),
        third_party_factor=oci.identity_domains.models.AuthenticationFactorSettingsThirdPartyFactor(
            duo_security=True),
        identity_store_settings=oci.identity_domains.models.AuthenticationFactorSettingsIdentityStoreSettings(
            mobile_number_enabled=False,
            mobile_number_update_enabled=True),
        urn_ietf_params_scim_schemas_oracle_idcs_extension_third_party_authentication_factor_settings=oci.identity_domains.models.ExtensionThirdPartyAuthenticationFactorSettings(
            duo_security_settings=oci.identity_domains.models.AuthenticationFactorSettingsDuoSecuritySettings(
                integration_key="EXAMPLE-integrationKey-Value",
                secret_key="EXAMPLE-secretKey-Value",
                api_hostname="EXAMPLE-apiHostname-Value",
                user_mapping_attribute="primaryEmail",
                attestation_key="EXAMPLE-attestationKey-Value")),
        urn_ietf_params_scim_schemas_oracle_idcs_extension_fido_authentication_factor_settings=oci.identity_domains.models.ExtensionFidoAuthenticationFactorSettings(
            attestation="DIRECT",
            authenticator_selection_attachment="BOTH",
            authenticator_selection_user_verification="PREFERRED",
            authenticator_selection_resident_key="NONE",
            timeout=982,
            authenticator_selection_require_resident_key=False,
            public_key_types=["RS1"],
            exclude_credentials=True,
            domain_validation_level=195)),
    if_match="EXAMPLE-ifMatch-Value",
    opc_retry_token="EXAMPLE-opcRetryToken-Value")

# Get the data from response
print(put_authentication_factor_setting_response.data)

Was this article helpful?