# 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=False,
        totp_enabled=True,
        push_enabled=False,
        bypass_code_enabled=True,
        security_questions_enabled=False,
        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=False,
            help_desk_generation_enabled=False,
            length=758,
            max_active=757,
            help_desk_code_expiry_in_mins=335,
            help_desk_max_usage=836),
        client_app_settings=oci.identity_domains.models.AuthenticationFactorSettingsClientAppSettings(
            min_pin_length=393,
            max_failures_before_warning=578,
            max_failures_before_lockout=25,
            initial_lockout_period_in_secs=673,
            lockout_escalation_pattern="EXAMPLE-lockoutEscalationPattern-Value",
            max_lockout_interval_in_secs=405,
            request_signing_algo="SHA384withRSA",
            policy_update_freq_in_days=833,
            key_pair_length=892,
            device_protection_policy="EXAMPLE-deviceProtectionPolicy-Value",
            unlock_app_for_each_request_enabled=True,
            unlock_on_app_start_enabled=False,
            unlock_app_interval_in_secs=388,
            shared_secret_encoding="Base32",
            unlock_on_app_foreground_enabled=False),
        endpoint_restrictions=oci.identity_domains.models.AuthenticationFactorSettingsEndpointRestrictions(
            max_enrolled_devices=53,
            max_trusted_endpoints=381,
            max_endpoint_trust_duration_in_days=228,
            trusted_endpoints_enabled=False,
            max_incorrect_attempts=136),
        compliance_policy=[
            oci.identity_domains.models.AuthenticationFactorSettingsCompliancePolicy(
                name="EXAMPLE-name-Value",
                action="Allow",
                value="EXAMPLE-value-Value")],
        totp_settings=oci.identity_domains.models.AuthenticationFactorSettingsTotpSettings(
            hashing_algorithm="SHA512",
            passcode_length=121,
            key_refresh_interval_in_days=256,
            time_step_in_secs=800,
            time_step_tolerance=154,
            sms_otp_validity_duration_in_mins=491,
            jwt_validity_duration_in_secs=266,
            sms_passcode_length=848,
            email_otp_validity_duration_in_mins=838,
            email_passcode_length=7),
        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=["update"],
        tags=[
            oci.identity_domains.models.Tags(
                key="EXAMPLE-key-Value",
                value="EXAMPLE-value-Value")],
        delete_in_progress=True,
        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=False,
        fido_authenticator_enabled=True,
        yubico_otp_enabled=True,
        mfa_enabled_category="EXAMPLE-mfaEnabledCategory-Value",
        hide_backup_factor_enabled=True,
        auto_enroll_email_factor_disabled=True,
        user_enrollment_disabled_factors=["YUBICO_OTP"],
        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=False),
        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="REQUIRED",
            authenticator_selection_resident_key="NONE",
            timeout=337,
            authenticator_selection_require_resident_key=True,
            public_key_types=["ES256"],
            exclude_credentials=True,
            domain_validation_level=665)),
    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?