Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Configuration / IssuedTokenServiceElement.cs / 1 / IssuedTokenServiceElement.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Configuration { using System; using System.Configuration; using System.IdentityModel.Selectors; using System.IdentityModel.Tokens; using System.Security.Cryptography.X509Certificates; using System.ServiceModel; using System.ServiceModel.Security; using System.Xml; public sealed partial class IssuedTokenServiceElement : ConfigurationElement { public IssuedTokenServiceElement() { } [ConfigurationProperty(ConfigurationStrings.AllowedAudienceUris)] public AllowedAudienceUriElementCollection AllowedAudienceUris { get { return (AllowedAudienceUriElementCollection)base[ConfigurationStrings.AllowedAudienceUris]; } } [ConfigurationProperty(ConfigurationStrings.AudienceUriMode, DefaultValue = IssuedTokenServiceCredential.DefaultAudienceUriMode)] [ServiceModelEnumValidator(typeof(AudienceUriModeValidationHelper))] public AudienceUriMode AudienceUriMode { get { return (AudienceUriMode)base[ConfigurationStrings.AudienceUriMode]; } set { base[ConfigurationStrings.AudienceUriMode] = value; } } [ConfigurationProperty(ConfigurationStrings.CustomCertificateValidatorType, DefaultValue = "")] [StringValidator(MinLength = 0)] public string CustomCertificateValidatorType { get { return (string)base[ConfigurationStrings.CustomCertificateValidatorType]; } set { if (String.IsNullOrEmpty(value)) { value = String.Empty; } base[ConfigurationStrings.CustomCertificateValidatorType] = value; } } [ConfigurationProperty(ConfigurationStrings.CertificateValidationMode, DefaultValue = IssuedTokenServiceCredential.DefaultCertificateValidationMode)] [ServiceModelEnumValidator(typeof(X509CertificateValidationModeHelper))] public X509CertificateValidationMode CertificateValidationMode { get { return (X509CertificateValidationMode)base[ConfigurationStrings.CertificateValidationMode]; } set { base[ConfigurationStrings.CertificateValidationMode] = value; } } [ConfigurationProperty(ConfigurationStrings.RevocationMode, DefaultValue = IssuedTokenServiceCredential.DefaultRevocationMode)] [StandardRuntimeEnumValidator(typeof(X509RevocationMode))] public X509RevocationMode RevocationMode { get { return (X509RevocationMode)base[ConfigurationStrings.RevocationMode]; } set { base[ConfigurationStrings.RevocationMode] = value; } } [ConfigurationProperty(ConfigurationStrings.TrustedStoreLocation, DefaultValue = IssuedTokenServiceCredential.DefaultTrustedStoreLocation)] [StandardRuntimeEnumValidator(typeof(StoreLocation))] public StoreLocation TrustedStoreLocation { get { return (StoreLocation)base[ConfigurationStrings.TrustedStoreLocation]; } set { base[ConfigurationStrings.TrustedStoreLocation] = value; } } [ConfigurationProperty(ConfigurationStrings.SamlSerializerType, DefaultValue = "")] [StringValidator(MinLength = 0)] public string SamlSerializerType { get { return (string)base[ConfigurationStrings.SamlSerializerType]; } set { if (String.IsNullOrEmpty(value)) { value = String.Empty; } base[ConfigurationStrings.SamlSerializerType] = value; } } [ConfigurationProperty(ConfigurationStrings.KnownCertificates)] public X509CertificateTrustedIssuerElementCollection KnownCertificates { get { return (X509CertificateTrustedIssuerElementCollection)base[ConfigurationStrings.KnownCertificates]; } } [ConfigurationProperty(ConfigurationStrings.AllowUntrustedRsaIssuers, DefaultValue = IssuedTokenServiceCredential.DefaultAllowUntrustedRsaIssuers)] public bool AllowUntrustedRsaIssuers { get { return (bool)base[ConfigurationStrings.AllowUntrustedRsaIssuers]; } set { base[ConfigurationStrings.AllowUntrustedRsaIssuers] = value; } } public void Copy(IssuedTokenServiceElement from) { if (this.IsReadOnly()) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ConfigurationErrorsException(SR.GetString(SR.ConfigReadOnly))); } if (null == from) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("from"); } this.SamlSerializerType = from.SamlSerializerType; #pragma warning suppress 56506 // [....]; ElementInformation is never null. PropertyInformationCollection propertyInfo = from.ElementInformation.Properties; if (propertyInfo[ConfigurationStrings.KnownCertificates].ValueOrigin != PropertyValueOrigin.Default) { this.KnownCertificates.Clear(); foreach (X509CertificateTrustedIssuerElement src in from.KnownCertificates) { X509CertificateTrustedIssuerElement copy = new X509CertificateTrustedIssuerElement(); copy.Copy(src); this.KnownCertificates.Add(copy); } } if (propertyInfo[ConfigurationStrings.AllowedAudienceUris].ValueOrigin != PropertyValueOrigin.Default) { this.AllowedAudienceUris.Clear(); foreach (AllowedAudienceUriElement src in from.AllowedAudienceUris) { AllowedAudienceUriElement copy = new AllowedAudienceUriElement(); copy.AllowedAudienceUri = src.AllowedAudienceUri; this.AllowedAudienceUris.Add(copy); } } this.AllowUntrustedRsaIssuers = from.AllowUntrustedRsaIssuers; this.CertificateValidationMode = from.CertificateValidationMode; this.AudienceUriMode = from.AudienceUriMode; this.CustomCertificateValidatorType = from.CustomCertificateValidatorType; this.RevocationMode = from.RevocationMode; this.TrustedStoreLocation = from.TrustedStoreLocation; } internal void ApplyConfiguration(IssuedTokenServiceCredential issuedToken) { if (issuedToken == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("issuedToken"); } issuedToken.CertificateValidationMode = this.CertificateValidationMode; issuedToken.RevocationMode = this.RevocationMode; issuedToken.TrustedStoreLocation = this.TrustedStoreLocation; issuedToken.AudienceUriMode = this.AudienceUriMode; if (!string.IsNullOrEmpty(this.CustomCertificateValidatorType)) { Type type = System.Type.GetType(this.CustomCertificateValidatorType, true); if (!typeof(X509CertificateValidator).IsAssignableFrom(type)) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ConfigurationErrorsException( SR.GetString(SR.ConfigInvalidCertificateValidatorType, this.CustomCertificateValidatorType, typeof(X509CertificateValidator).ToString()))); } issuedToken.CustomCertificateValidator = (X509CertificateValidator)Activator.CreateInstance(type); } if (!string.IsNullOrEmpty(this.SamlSerializerType)) { Type type = System.Type.GetType(this.SamlSerializerType, true); if (!typeof(SamlSerializer).IsAssignableFrom(type)) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ConfigurationErrorsException( SR.GetString(SR.ConfigInvalidSamlSerializerType, this.SamlSerializerType, typeof(SamlSerializer).ToString()))); } issuedToken.SamlSerializer = (SamlSerializer)Activator.CreateInstance(type); } PropertyInformationCollection propertyInfo = this.ElementInformation.Properties; if (propertyInfo[ConfigurationStrings.KnownCertificates].ValueOrigin != PropertyValueOrigin.Default) { foreach (X509CertificateTrustedIssuerElement src in this.KnownCertificates) { issuedToken.KnownCertificates.Add(SecurityUtils.GetCertificateFromStore(src.StoreName, src.StoreLocation, src.X509FindType, src.FindValue, null)); } } if (propertyInfo[ConfigurationStrings.AllowedAudienceUris].ValueOrigin != PropertyValueOrigin.Default) { foreach (AllowedAudienceUriElement src in this.AllowedAudienceUris) { issuedToken.AllowedAudienceUris.Add(src.AllowedAudienceUri); } } issuedToken.AllowUntrustedRsaIssuers = this.AllowUntrustedRsaIssuers; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SerializationSectionGroup.cs
- RuleInfoComparer.cs
- WebAdminConfigurationHelper.cs
- CompModSwitches.cs
- ProxyGenerator.cs
- MaterialCollection.cs
- AnimationTimeline.cs
- CompositeKey.cs
- SafeBitVector32.cs
- PackageRelationshipCollection.cs
- AdCreatedEventArgs.cs
- Panel.cs
- GZipDecoder.cs
- SqlBinder.cs
- UrlPath.cs
- httpstaticobjectscollection.cs
- ExternalCalls.cs
- CollectionViewGroupRoot.cs
- IResourceProvider.cs
- XmlDataLoader.cs
- PrtCap_Public.cs
- AnnouncementInnerClientCD1.cs
- WinFormsComponentEditor.cs
- SecurityProtocolCorrelationState.cs
- XmlNamedNodeMap.cs
- DataObjectEventArgs.cs
- IDispatchConstantAttribute.cs
- Int16AnimationBase.cs
- ProcessInputEventArgs.cs
- DataGridViewColumnHeaderCell.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- XmlTextReaderImplHelpers.cs
- XAMLParseException.cs
- ProjectionQueryOptionExpression.cs
- NonBatchDirectoryCompiler.cs
- XmlNodeReader.cs
- NodeFunctions.cs
- UserControlCodeDomTreeGenerator.cs
- UriWriter.cs
- ResXResourceSet.cs
- DockPattern.cs
- DataPagerFieldCollection.cs
- CompositionTarget.cs
- ParameterExpression.cs
- EncryptedPackageFilter.cs
- Privilege.cs
- ActivityTypeCodeDomSerializer.cs
- PeerPresenceInfo.cs
- Image.cs
- BamlVersionHeader.cs
- SafeFileMappingHandle.cs
- ExternalCalls.cs
- ipaddressinformationcollection.cs
- GridViewEditEventArgs.cs
- ServiceOperation.cs
- HttpConfigurationSystem.cs
- MsmqOutputMessage.cs
- DataGridViewCell.cs
- DataTable.cs
- RemotingAttributes.cs
- PhysicalAddress.cs
- InternalsVisibleToAttribute.cs
- InfoCardSymmetricCrypto.cs
- Literal.cs
- DataSourceCache.cs
- TextDecorationCollection.cs
- SQLGuidStorage.cs
- XmlSchemaComplexType.cs
- ClaimTypeRequirement.cs
- AndMessageFilterTable.cs
- TableDetailsCollection.cs
- TransformProviderWrapper.cs
- Int64AnimationUsingKeyFrames.cs
- NotifyInputEventArgs.cs
- FormViewPageEventArgs.cs
- XmlSchemaAny.cs
- SamlSerializer.cs
- TextSelectionProcessor.cs
- PointHitTestResult.cs
- ConversionHelper.cs
- SerializationInfoEnumerator.cs
- ChannelSinkStacks.cs
- BitStack.cs
- XmlSignatureManifest.cs
- HtmlDocument.cs
- ManualResetEvent.cs
- PerfCounters.cs
- Operand.cs
- Graphics.cs
- ListenerTraceUtility.cs
- SmtpAuthenticationManager.cs
- ServiceInfoCollection.cs
- RenderTargetBitmap.cs
- ASCIIEncoding.cs
- AdornerHitTestResult.cs
- TileModeValidation.cs
- FileSystemWatcher.cs
- ProcessModule.cs
- BaseTemplateCodeDomTreeGenerator.cs
- DataServiceRequest.cs