// 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 PutIdentityProviderExample
{
public static async Task Main()
{
// Create a request and dependent object(s).
var identityProvider = new Oci.IdentitydomainsService.Models.IdentityProvider
{
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.User,
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",
ExternalId = "ocid1.test.oc1..<unique_ID>EXAMPLE-externalId-Value",
PartnerName = "EXAMPLE-partnerName-Value",
Description = "EXAMPLE-description-Value",
Metadata = "EXAMPLE-metadata-Value",
PartnerProviderId = "ocid1.test.oc1..<unique_ID>EXAMPLE-partnerProviderId-Value",
TenantProviderId = "ocid1.test.oc1..<unique_ID>EXAMPLE-tenantProviderId-Value",
SuccinctId = "ocid1.test.oc1..<unique_ID>EXAMPLE-succinctId-Value",
IdpSsoUrl = "EXAMPLE-idpSsoUrl-Value",
LogoutRequestUrl = "EXAMPLE-logoutRequestUrl-Value",
LogoutResponseUrl = "EXAMPLE-logoutResponseUrl-Value",
SigningCertificate = "EXAMPLE-signingCertificate-Value",
EncryptionCertificate = "EXAMPLE-encryptionCertificate-Value",
NameIdFormat = "EXAMPLE-nameIdFormat-Value",
IncludeSigningCertInSignature = true,
AuthnRequestBinding = Oci.IdentitydomainsService.Models.IdentityProvider.AuthnRequestBindingEnum.Post,
LogoutBinding = Oci.IdentitydomainsService.Models.IdentityProvider.LogoutBindingEnum.Redirect,
LogoutEnabled = true,
SignatureHashAlgorithm = Oci.IdentitydomainsService.Models.IdentityProvider.SignatureHashAlgorithmEnum.Sha1,
Enabled = false,
IconUrl = "EXAMPLE-iconUrl-Value",
ShownOnLoginPage = true,
JitUserProvEnabled = false,
JitUserProvGroupAssertionAttributeEnabled = true,
JitUserProvGroupStaticListEnabled = true,
JitUserProvCreateUserEnabled = false,
JitUserProvAttributeUpdateEnabled = false,
JitUserProvGroupAssignmentMethod = Oci.IdentitydomainsService.Models.IdentityProvider.JitUserProvGroupAssignmentMethodEnum.Merge,
JitUserProvGroupMappingMode = Oci.IdentitydomainsService.Models.IdentityProvider.JitUserProvGroupMappingModeEnum.Implicit,
JitUserProvGroupSAMLAttributeName = "EXAMPLE-jitUserProvGroupSAMLAttributeName-Value",
ServiceInstanceIdentifier = "EXAMPLE-serviceInstanceIdentifier-Value",
UserMappingMethod = Oci.IdentitydomainsService.Models.IdentityProvider.UserMappingMethodEnum.CorrelationPolicyRule,
UserMappingStoreAttribute = "EXAMPLE-userMappingStoreAttribute-Value",
AssertionAttribute = "EXAMPLE-assertionAttribute-Value",
Type = Oci.IdentitydomainsService.Models.IdentityProvider.TypeEnum.Social,
RequireForceAuthn = true,
RequiresEncryptedAssertion = false,
SamlHoKRequired = true,
RequestedAuthenticationContext = new List<string>
{
"EXAMPLE--Value"
},
JitUserProvIgnoreErrorOnAbsentGroups = true,
LastNotificationSentTime = "EXAMPLE-lastNotificationSentTime-Value",
JitUserProvGroupMappings = new List<Oci.IdentitydomainsService.Models.IdentityProviderJitUserProvGroupMappings>
{
new Oci.IdentitydomainsService.Models.IdentityProviderJitUserProvGroupMappings
{
Value = "EXAMPLE-value-Value",
Ref = "EXAMPLE-$ref-Value",
IdpGroup = "EXAMPLE-idpGroup-Value"
}
},
JitUserProvAttributes = new Oci.IdentitydomainsService.Models.IdentityProviderJitUserProvAttributes
{
Value = "EXAMPLE-value-Value",
Ref = "EXAMPLE-$ref-Value"
},
JitUserProvAssignedGroups = new List<Oci.IdentitydomainsService.Models.IdentityProviderJitUserProvAssignedGroups>
{
new Oci.IdentitydomainsService.Models.IdentityProviderJitUserProvAssignedGroups
{
Value = "EXAMPLE-value-Value",
Ref = "EXAMPLE-$ref-Value",
Display = "EXAMPLE-display-Value"
}
},
CorrelationPolicy = new Oci.IdentitydomainsService.Models.IdentityProviderCorrelationPolicy
{
Type = Oci.IdentitydomainsService.Models.IdentityProviderCorrelationPolicy.TypeEnum.Policy,
Value = "EXAMPLE-value-Value",
Ref = "EXAMPLE-$ref-Value",
Display = "EXAMPLE-display-Value"
},
};
var putIdentityProviderRequest = new Oci.IdentitydomainsService.Requests.PutIdentityProviderRequest
{
IdentityProviderId = "ocid1.test.oc1..<unique_ID>EXAMPLE-identityProviderId-Value",
Authorization = "EXAMPLE-authorization-Value",
ResourceTypeSchemaVersion = "EXAMPLE-resourceTypeSchemaVersion-Value",
Attributes = "EXAMPLE-attributes-Value",
AttributeSets = new List<Oci.IdentitydomainsService.Models.AttributeSets>
{
Oci.IdentitydomainsService.Models.AttributeSets.Default
},
IdentityProvider = identityProvider,
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.PutIdentityProvider(putIdentityProviderRequest);
// Retrieve value from the response.
var id = response.IdentityProvider.Id;
}
}
catch (Exception e)
{
Console.WriteLine($"PutIdentityProvider Failed with {e.Message}");
throw e;
}
}
}
}