// 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.Delete
},
Tags = new List<Oci.IdentitydomainsService.Models.Tags>
{
new Oci.IdentitydomainsService.Models.Tags
{
Key = "EXAMPLE-key-Value",
Value = "EXAMPLE-value-Value"
}
},
DeleteInProgress = true,
IdcsLastUpgradedInRelease = "EXAMPLE-idcsLastUpgradedInRelease-Value",
DomainOcid = "EXAMPLE-domainOcid-Value",
CompartmentOcid = "EXAMPLE-compartmentOcid-Value",
TenancyOcid = "EXAMPLE-tenancyOcid-Value",
EmailEnabled = true,
SmsEnabled = true,
PhoneCallEnabled = false,
TotpEnabled = false,
PushEnabled = false,
BypassCodeEnabled = true,
SecurityQuestionsEnabled = true,
FidoAuthenticatorEnabled = false,
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.Totp
},
EmailSettings = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsEmailSettings
{
EmailLinkEnabled = false,
EmailLinkCustomUrl = "EXAMPLE-emailLinkCustomUrl-Value"
},
ThirdPartyFactor = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsThirdPartyFactor
{
DuoSecurity = false
},
NotificationSettings = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsNotificationSettings
{
PullEnabled = true
},
IdentityStoreSettings = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsIdentityStoreSettings
{
MobileNumberEnabled = true,
MobileNumberUpdateEnabled = false
},
BypassCodeSettings = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsBypassCodeSettings
{
SelfServiceGenerationEnabled = true,
HelpDeskGenerationEnabled = true,
Length = 766,
MaxActive = 184,
HelpDeskCodeExpiryInMins = 366,
HelpDeskMaxUsage = 853
},
ClientAppSettings = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsClientAppSettings
{
MinPinLength = 91,
MaxFailuresBeforeWarning = 774,
MaxFailuresBeforeLockout = 945,
InitialLockoutPeriodInSecs = 881,
LockoutEscalationPattern = "EXAMPLE-lockoutEscalationPattern-Value",
MaxLockoutIntervalInSecs = 442,
RequestSigningAlgo = Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsClientAppSettings.RequestSigningAlgoEnum.Sha512withRsa,
PolicyUpdateFreqInDays = 825,
KeyPairLength = 540,
DeviceProtectionPolicy = "EXAMPLE-deviceProtectionPolicy-Value",
UnlockAppForEachRequestEnabled = false,
UnlockOnAppStartEnabled = false,
UnlockAppIntervalInSecs = 271,
SharedSecretEncoding = Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsClientAppSettings.SharedSecretEncodingEnum.Base32,
UnlockOnAppForegroundEnabled = false
},
EndpointRestrictions = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsEndpointRestrictions
{
MaxEnrolledDevices = 328,
MaxTrustedEndpoints = 338,
MaxEndpointTrustDurationInDays = 122,
TrustedEndpointsEnabled = false,
MaxIncorrectAttempts = 342
},
CompliancePolicy = new List<Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsCompliancePolicy>
{
new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsCompliancePolicy
{
Name = "EXAMPLE-name-Value",
Action = Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsCompliancePolicy.ActionEnum.Block,
Value = "EXAMPLE-value-Value"
}
},
TotpSettings = new Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsTotpSettings
{
HashingAlgorithm = Oci.IdentitydomainsService.Models.AuthenticationFactorSettingsTotpSettings.HashingAlgorithmEnum.Sha512,
PasscodeLength = 970,
KeyRefreshIntervalInDays = 160,
TimeStepInSecs = 883,
TimeStepTolerance = 321,
SmsOtpValidityDurationInMins = 826,
JwtValidityDurationInSecs = 732,
SmsPasscodeLength = 257,
EmailOtpValidityDurationInMins = 916,
EmailPasscodeLength = 418
},
};
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.All
},
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;
}
}
}
}