// 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).
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Oci.IdentitydomainsService;
using Oci.Common;
using Oci.Common.Auth;
namespace Oci.Sdk.DotNet.Example.Identitydomains
{
public class PutAuthenticationFactorSettingExample
{
public static async Task Main()
{
// Create a request and dependent object(s).
var authenticationFactorSetting = new Oci.IdentitydomainsService.Models.AuthenticationFactorSetting
{
Id = "ocid1.test.oc1..<unique_ID>EXAMPLE-id-Value",
Ocid = "EXAMPLE-ocid-Value",
Schemas = new List<string>
{
"EXAMPLE--Value"
},
Meta = new Oci.IdentitydomainsService.Models.Meta
{
ResourceType = "EXAMPLE-resourceType-Value",
Created = "EXAMPLE-created-Value",
LastModified = "EXAMPLE-lastModified-Value",
Location = "EXAMPLE-location-Value",
Version = "EXAMPLE-version-Value"
},
IdcsCreatedBy = new Oci.IdentitydomainsService.Models.IdcsCreatedBy
{
Value = "EXAMPLE-value-Value",
Ref = "EXAMPLE-$ref-Value",
Type = Oci.IdentitydomainsService.Models.IdcsCreatedBy.TypeEnum.App,
Display = "EXAMPLE-display-Value",
Ocid = "EXAMPLE-ocid-Value"
},
IdcsLastModifiedBy = new Oci.IdentitydomainsService.Models.IdcsLastModifiedBy
{
Value = "EXAMPLE-value-Value",
Ref = "EXAMPLE-$ref-Value",
Type = Oci.IdentitydomainsService.Models.IdcsLastModifiedBy.TypeEnum.App,
Display = "EXAMPLE-display-Value",
Ocid = "EXAMPLE-ocid-Value"
},
IdcsPreventedOperations = new List<Oci.IdentitydomainsService.Models.IdcsPreventedOperations>
{
Oci.IdentitydomainsService.Models.IdcsPreventedOperations.Update
},
Tags = new List<Oci.IdentitydomainsService.Models.Tags>
{
new Oci.IdentitydomainsService.Models.Tags
{
Key = "EXAMPLE-key-Value",
Value = "EXAMPLE-value-Value"
}
},
DeleteInProgress = false,
IdcsLastUpgradedInRelease = "EXAMPLE-idcsLastUpgradedInRelease-Value",
DomainOcid = "EXAMPLE-domainOcid-Value",
CompartmentOcid = "EXAMPLE-compartmentOcid-Value",
TenancyOcid = "EXAMPLE-tenancyOcid-Value",
EmailEnabled = false,
SmsEnabled = true,
PhoneCallEnabled = true,
TotpEnabled = true,
PushEnabled = true,
BypassCodeEnabled = true,
SecurityQuestionsEnabled = true,
FidoAuthenticatorEnabled = true,
YubicoOtpEnabled = true,
MfaEnrollmentType = "EXAMPLE-mfaEnrollmentType-Value",
MfaEnabledCategory = "EXAMPLE-mfaEnabledCategory-Value",
HideBackupFactorEnabled = false,
AutoEnrollEmailFactorDisabled = true,
UserEnrollmentDisabledFactors = new List<Oci.IdentitydomainsService.Models.AuthenticationFactorSetting.UserEnrollmentDisabledFactorsEnum>
{
Oci.IdentitydomainsService.Models.AuthenticationFactorSetting.UserEnrollmentDisabledFactorsEnum.Sms
},
EmailSettings = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsEmailSettings
{
EmailLinkEnabled = false,
EmailLinkCustomUrl = "EXAMPLE-emailLinkCustomUrl-Value"
},
ThirdPartyFactor = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsThirdPartyFactor
{
DuoSecurity = true
},
NotificationSettings = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsNotificationSettings
{
PullEnabled = true
},
IdentityStoreSettings = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsIdentityStoreSettings
{
MobileNumberEnabled = false,
MobileNumberUpdateEnabled = true
},
BypassCodeSettings = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsBypassCodeSettings
{
SelfServiceGenerationEnabled = false,
HelpDeskGenerationEnabled = false,
Length = 73,
MaxActive = 320,
HelpDeskCodeExpiryInMins = 533,
HelpDeskMaxUsage = 90
},
ClientAppSettings = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsClientAppSettings
{
MinPinLength = 678,
MaxFailuresBeforeWarning = 337,
MaxFailuresBeforeLockout = 467,
InitialLockoutPeriodInSecs = 986,
LockoutEscalationPattern = "EXAMPLE-lockoutEscalationPattern-Value",
MaxLockoutIntervalInSecs = 530,
RequestSigningAlgo = Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsClientAppSettings.RequestSigningAlgoEnum.Sha256withRsa,
PolicyUpdateFreqInDays = 348,
KeyPairLength = 702,
DeviceProtectionPolicy = "EXAMPLE-deviceProtectionPolicy-Value",
UnlockAppForEachRequestEnabled = false,
UnlockOnAppStartEnabled = true,
UnlockAppIntervalInSecs = 467,
SharedSecretEncoding = Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsClientAppSettings.SharedSecretEncodingEnum.Base64,
UnlockOnAppForegroundEnabled = false
},
EndpointRestrictions = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsEndpointRestrictions
{
MaxEnrolledDevices = 428,
MaxTrustedEndpoints = 562,
MaxEndpointTrustDurationInDays = 77,
TrustedEndpointsEnabled = false,
MaxIncorrectAttempts = 543
},
CompliancePolicy = new List<Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsCompliancePolicy>
{
new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsCompliancePolicy
{
Name = "EXAMPLE-name-Value",
Action = Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsCompliancePolicy.ActionEnum.Allow,
Value = "EXAMPLE-value-Value"
}
},
TotpSettings = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsTotpSettings
{
HashingAlgorithm = Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsTotpSettings.HashingAlgorithmEnum.Md5,
PasscodeLength = 383,
KeyRefreshIntervalInDays = 769,
TimeStepInSecs = 413,
TimeStepTolerance = 434,
SmsOtpValidityDurationInMins = 331,
JwtValidityDurationInSecs = 932,
SmsPasscodeLength = 992,
EmailOtpValidityDurationInMins = 893,
EmailPasscodeLength = 688
},
};
var putAuthenticationFactorSettingRequest = new Oci.IdentitydomainsService.Requests.PutAuthenticationFactorSettingRequest
{
AuthenticationFactorSettingId = "ocid1.test.oc1..<unique_ID>EXAMPLE-authenticationFactorSettingId-Value",
Authorization = "EXAMPLE-authorization-Value",
ResourceTypeSchemaVersion = "EXAMPLE-resourceTypeSchemaVersion-Value",
Attributes = "EXAMPLE-attributes-Value",
AttributeSets = new List<Oci.IdentitydomainsService.Models.AttributeSets>
{
Oci.IdentitydomainsService.Models.AttributeSets.Always
},
AuthenticationFactorSetting = authenticationFactorSetting,
IfMatch = "EXAMPLE-ifMatch-Value",
OpcRetryToken = "EXAMPLE-opcRetryToken-Value"
};
// Create a default authentication provider that uses the DEFAULT
// profile in the configuration file.
// Refer to <see href="https://docs.cloud.oracle.com/en-us/iaas/Content/API/Concepts/sdkconfig.htm#SDK_and_CLI_Configuration_File>the public documentation</see> on how to prepare a configuration file.
var provider = new ConfigFileAuthenticationDetailsProvider("DEFAULT");
try
{
// Create a service client and send the request.
using (var client = new IdentityDomainsClient(provider, new ClientConfiguration()))
{
var response = await client.PutAuthenticationFactorSetting(putAuthenticationFactorSettingRequest);
// Retrieve value from the response.
var id = response.AuthenticationFactorSetting.Id;
}
}
catch (Exception e)
{
Console.WriteLine($"PutAuthenticationFactorSetting Failed with {e.Message}");
throw e;
}
}
}
}