Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Configuration / X509PeerCertificateAuthenticationElement.cs / 1 / X509PeerCertificateAuthenticationElement.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 X509PeerCertificateAuthenticationElement : ConfigurationElement { public X509PeerCertificateAuthenticationElement() { } [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 = X509PeerCertificateAuthentication.DefaultCertificateValidationMode)] [ServiceModelEnumValidator(typeof(X509CertificateValidationModeHelper))] public X509CertificateValidationMode CertificateValidationMode { get { return (X509CertificateValidationMode)base[ConfigurationStrings.CertificateValidationMode]; } set { base[ConfigurationStrings.CertificateValidationMode] = value; } } [ConfigurationProperty(ConfigurationStrings.RevocationMode, DefaultValue = X509PeerCertificateAuthentication.DefaultRevocationMode)] [StandardRuntimeEnumValidator(typeof(X509RevocationMode))] public X509RevocationMode RevocationMode { get { return (X509RevocationMode)base[ConfigurationStrings.RevocationMode]; } set { base[ConfigurationStrings.RevocationMode] = value; } } [ConfigurationProperty(ConfigurationStrings.TrustedStoreLocation, DefaultValue = X509PeerCertificateAuthentication.DefaultTrustedStoreLocation)] [StandardRuntimeEnumValidator(typeof(StoreLocation))] public StoreLocation TrustedStoreLocation { get { return (StoreLocation)base[ConfigurationStrings.TrustedStoreLocation]; } set { base[ConfigurationStrings.TrustedStoreLocation] = value; } } public void Copy(X509PeerCertificateAuthenticationElement 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.CustomCertificateValidatorType = from.CustomCertificateValidatorType; } internal void ApplyConfiguration(X509PeerCertificateAuthentication cert) { if (cert == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("cert"); } cert.CertificateValidationMode = this.CertificateValidationMode; cert.RevocationMode = this.RevocationMode; cert.TrustedStoreLocation = this.TrustedStoreLocation; 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
- EntitySet.cs
- activationcontext.cs
- DayRenderEvent.cs
- XmlSerializationReader.cs
- _ChunkParse.cs
- URLAttribute.cs
- NameValueConfigurationCollection.cs
- XmlDictionaryWriter.cs
- NativeWindow.cs
- Calendar.cs
- SimpleTypeResolver.cs
- Constants.cs
- Int32KeyFrameCollection.cs
- DynamicRendererThreadManager.cs
- BindingElement.cs
- LinearKeyFrames.cs
- ClockController.cs
- RegexParser.cs
- XmlElementList.cs
- RegistrySecurity.cs
- RegisteredExpandoAttribute.cs
- TraceContext.cs
- CommandHelper.cs
- QuaternionValueSerializer.cs
- RadioButtonAutomationPeer.cs
- LocatorPartList.cs
- WorkItem.cs
- RemoteWebConfigurationHostStream.cs
- HttpListenerResponse.cs
- AutomationPatternInfo.cs
- SoapServerMessage.cs
- Pair.cs
- ShaderEffect.cs
- ProviderSettingsCollection.cs
- Rijndael.cs
- ThreadLocal.cs
- ResourceSet.cs
- CodePropertyReferenceExpression.cs
- SharedPersonalizationStateInfo.cs
- ObjectListDataBindEventArgs.cs
- XmlAttributeOverrides.cs
- Logging.cs
- CompositeControl.cs
- ListDataHelper.cs
- GetPageCompletedEventArgs.cs
- TypeExtensions.cs
- WorkflowShape.cs
- SiteIdentityPermission.cs
- SafeMarshalContext.cs
- StringAttributeCollection.cs
- PiiTraceSource.cs
- Keyboard.cs
- SerializableTypeCodeDomSerializer.cs
- Internal.cs
- StorageMappingItemCollection.cs
- GACMembershipCondition.cs
- MimeMultiPart.cs
- RowTypePropertyElement.cs
- DataSourceProvider.cs
- InvokeMethodActivity.cs
- ManagedIStream.cs
- RegexParser.cs
- LayoutTable.cs
- LineBreakRecord.cs
- Char.cs
- Matrix.cs
- UserPreferenceChangedEventArgs.cs
- _DomainName.cs
- RootContext.cs
- SystemIcons.cs
- SRDisplayNameAttribute.cs
- DataViewManager.cs
- ValidatorCompatibilityHelper.cs
- ImageResources.Designer.cs
- CodeCompiler.cs
- EntityContainerEntitySetDefiningQuery.cs
- WizardPanelChangingEventArgs.cs
- UseLicense.cs
- PreProcessor.cs
- CompModSwitches.cs
- CollectionConverter.cs
- _BasicClient.cs
- ButtonFieldBase.cs
- IncrementalCompileAnalyzer.cs
- Positioning.cs
- BufferedGraphicsContext.cs
- ScriptReferenceBase.cs
- PartialCachingControl.cs
- CodeCastExpression.cs
- PeerNameRecordCollection.cs
- JsonDeserializer.cs
- _Rfc2616CacheValidators.cs
- ListMarkerLine.cs
- SqlDataSourceEnumerator.cs
- SimpleBitVector32.cs
- QueryCacheEntry.cs
- XPathMessageFilterElementComparer.cs
- StretchValidation.cs
- RectAnimationClockResource.cs
- XmlSchemaType.cs