Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Configuration / X509ClientCertificateAuthenticationElement.cs / 1 / X509ClientCertificateAuthenticationElement.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Configuration { using System; using System.ServiceModel; using System.Configuration; using System.ServiceModel.Channels; using System.ServiceModel.Security; using System.Xml; using System.Security.Cryptography.X509Certificates; using System.IdentityModel.Selectors; public sealed partial class X509ClientCertificateAuthenticationElement : ConfigurationElement { public X509ClientCertificateAuthenticationElement() { } [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 = X509ClientCertificateAuthentication.DefaultCertificateValidationMode)] [ServiceModelEnumValidator(typeof(X509CertificateValidationModeHelper))] public X509CertificateValidationMode CertificateValidationMode { get { return (X509CertificateValidationMode)base[ConfigurationStrings.CertificateValidationMode]; } set { base[ConfigurationStrings.CertificateValidationMode] = value; } } [ConfigurationProperty(ConfigurationStrings.RevocationMode, DefaultValue = X509ClientCertificateAuthentication.DefaultRevocationMode)] [StandardRuntimeEnumValidator(typeof(X509RevocationMode))] public X509RevocationMode RevocationMode { get { return (X509RevocationMode)base[ConfigurationStrings.RevocationMode]; } set { base[ConfigurationStrings.RevocationMode] = value; } } [ConfigurationProperty(ConfigurationStrings.TrustedStoreLocation, DefaultValue = X509ClientCertificateAuthentication.DefaultTrustedStoreLocation)] [StandardRuntimeEnumValidator(typeof(StoreLocation))] public StoreLocation TrustedStoreLocation { get { return (StoreLocation)base[ConfigurationStrings.TrustedStoreLocation]; } set { base[ConfigurationStrings.TrustedStoreLocation] = value; } } [ConfigurationProperty(ConfigurationStrings.IncludeWindowsGroups, DefaultValue = SspiSecurityTokenProvider.DefaultExtractWindowsGroupClaims)] public bool IncludeWindowsGroups { get { return (bool)base[ConfigurationStrings.IncludeWindowsGroups]; } set { base[ConfigurationStrings.IncludeWindowsGroups] = value; } } [ConfigurationProperty(ConfigurationStrings.MapClientCertificateToWindowsAccount, DefaultValue = X509ClientCertificateAuthentication.DefaultMapCertificateToWindowsAccount)] public bool MapClientCertificateToWindowsAccount { get { return (bool)base[ConfigurationStrings.MapClientCertificateToWindowsAccount]; } set { base[ConfigurationStrings.MapClientCertificateToWindowsAccount] = value; } } public void Copy(X509ClientCertificateAuthenticationElement from) { if (this.IsReadOnly()) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ConfigurationErrorsException(SR.GetString(SR.ConfigReadOnly))); } if (null == from) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("from"); } this.CertificateValidationMode = from.CertificateValidationMode; this.RevocationMode = from.RevocationMode; this.TrustedStoreLocation = from.TrustedStoreLocation; this.IncludeWindowsGroups = from.IncludeWindowsGroups; this.MapClientCertificateToWindowsAccount = from.MapClientCertificateToWindowsAccount; this.CustomCertificateValidatorType = from.CustomCertificateValidatorType; } internal void ApplyConfiguration(X509ClientCertificateAuthentication cert) { if (cert == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("cert"); } cert.CertificateValidationMode = this.CertificateValidationMode; cert.RevocationMode = this.RevocationMode; cert.TrustedStoreLocation = this.TrustedStoreLocation; cert.IncludeWindowsGroups = this.IncludeWindowsGroups; cert.MapClientCertificateToWindowsAccount = this.MapClientCertificateToWindowsAccount; if (!string.IsNullOrEmpty(this.CustomCertificateValidatorType)) { Type validatorType = System.Type.GetType(this.CustomCertificateValidatorType, true); if (!typeof(X509CertificateValidator).IsAssignableFrom(validatorType)) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ConfigurationErrorsException( SR.GetString(SR.ConfigInvalidCertificateValidatorType, this.CustomCertificateValidatorType, typeof(X509CertificateValidator).ToString()))); } cert.CustomCertificateValidator = (X509CertificateValidator)Activator.CreateInstance(validatorType); } } } } // 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
- FileNotFoundException.cs
- MimeImporter.cs
- DataGridViewCellMouseEventArgs.cs
- PreservationFileWriter.cs
- ObjectPersistData.cs
- RegexCapture.cs
- IntegerValidator.cs
- Timeline.cs
- IndentedWriter.cs
- GridViewColumnCollection.cs
- XmlMtomWriter.cs
- Win32.cs
- NavigatorOutput.cs
- CaseInsensitiveHashCodeProvider.cs
- DesignTimeXamlWriter.cs
- RegexRunner.cs
- IListConverters.cs
- StyleHelper.cs
- FixedFindEngine.cs
- UnsafeNativeMethodsTablet.cs
- TextBox.cs
- Emitter.cs
- FormsAuthenticationCredentials.cs
- DataGridViewCellLinkedList.cs
- SingleAnimationBase.cs
- XmlAttributeCache.cs
- DropDownList.cs
- AnnotationHelper.cs
- TextAction.cs
- IncrementalHitTester.cs
- Evaluator.cs
- AutoGeneratedField.cs
- _HeaderInfo.cs
- _UncName.cs
- AnonymousIdentificationModule.cs
- ToolStripPanelRenderEventArgs.cs
- AnnotationResource.cs
- PerfCounters.cs
- DispatchWrapper.cs
- XsltException.cs
- TextureBrush.cs
- XmlBoundElement.cs
- Method.cs
- CharUnicodeInfo.cs
- ContainerParagraph.cs
- BreakRecordTable.cs
- DesignerVerb.cs
- PersonalizablePropertyEntry.cs
- HuffCodec.cs
- WeakHashtable.cs
- LazyLoadBehavior.cs
- ValidationRuleCollection.cs
- SqlVisitor.cs
- CompiledQueryCacheEntry.cs
- StyleCollection.cs
- PathGeometry.cs
- ResourceKey.cs
- SR.cs
- EntityClassGenerator.cs
- MetadataItemSerializer.cs
- ClientSettings.cs
- EditorOptionAttribute.cs
- HintTextMaxWidthConverter.cs
- UpdateDelegates.Generated.cs
- FillErrorEventArgs.cs
- _ConnectStream.cs
- CodeArgumentReferenceExpression.cs
- HotSpot.cs
- FontConverter.cs
- TemplateEditingFrame.cs
- ObjectResult.cs
- TraceContextEventArgs.cs
- ConditionalAttribute.cs
- SessionIDManager.cs
- DBSchemaTable.cs
- Win32MouseDevice.cs
- DataFormats.cs
- PropertyCondition.cs
- InOutArgument.cs
- ClientConfigurationHost.cs
- ClientScriptManager.cs
- Tokenizer.cs
- SerializableReadOnlyDictionary.cs
- UnsafeNativeMethods.cs
- TextTreeUndoUnit.cs
- ListBindingConverter.cs
- XmlSchemaAttributeGroupRef.cs
- ServiceOperationListItem.cs
- DynamicDiscoSearcher.cs
- ArgumentOutOfRangeException.cs
- _ProxyRegBlob.cs
- AnnotationHelper.cs
- FixedTextPointer.cs
- GeometryHitTestResult.cs
- HybridDictionary.cs
- SoapSchemaExporter.cs
- Selector.cs
- TimerEventSubscriptionCollection.cs
- EffectiveValueEntry.cs
- InlineCollection.cs