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
- ReliableSessionBindingElement.cs
- DiscoveryClientDocuments.cs
- MediaSystem.cs
- CodeSubDirectoriesCollection.cs
- DataTableNewRowEvent.cs
- XmlAnyElementAttribute.cs
- Timer.cs
- MetadataUtilsSmi.cs
- StringSorter.cs
- NullableIntMinMaxAggregationOperator.cs
- SchemaTypeEmitter.cs
- ChangeProcessor.cs
- OleDbError.cs
- XmlILIndex.cs
- DateTimeOffset.cs
- LateBoundBitmapDecoder.cs
- MonthChangedEventArgs.cs
- CompositionAdorner.cs
- VarRefManager.cs
- ActiveXHost.cs
- DateRangeEvent.cs
- NestPullup.cs
- XmlSchemaSet.cs
- Win32Interop.cs
- Control.cs
- SpellerError.cs
- FileFormatException.cs
- ActivationArguments.cs
- SByteStorage.cs
- EnumValidator.cs
- AssemblyHash.cs
- ResolvedKeyFrameEntry.cs
- Bidi.cs
- ProbeMatchesApril2005.cs
- MdiWindowListItemConverter.cs
- Events.cs
- Parser.cs
- SecureConversationServiceCredential.cs
- WebPartConnectionCollection.cs
- AudioFormatConverter.cs
- TracePayload.cs
- EncodingDataItem.cs
- ClientRuntime.cs
- SvcMapFileSerializer.cs
- DbReferenceCollection.cs
- TypeUnloadedException.cs
- Volatile.cs
- Parameter.cs
- BehaviorEditorPart.cs
- Rijndael.cs
- TemplatePagerField.cs
- WebPageTraceListener.cs
- PointCollectionConverter.cs
- TrackingMemoryStreamFactory.cs
- CultureSpecificStringDictionary.cs
- XsltLoader.cs
- HostSecurityManager.cs
- ClientTarget.cs
- AsyncStreamReader.cs
- ServiceInstallComponent.cs
- GridItemCollection.cs
- ControlCachePolicy.cs
- DictionarySectionHandler.cs
- OciLobLocator.cs
- HttpDigestClientCredential.cs
- FrameworkContextData.cs
- ObjectAssociationEndMapping.cs
- DateTimeHelper.cs
- XmlBinaryWriter.cs
- BamlLocalizer.cs
- FastEncoderWindow.cs
- RegexMatch.cs
- DataGridTextBox.cs
- ConfigurationPropertyAttribute.cs
- ConfigurationFileMap.cs
- VerificationAttribute.cs
- CallbackValidatorAttribute.cs
- SimpleType.cs
- FilterQuery.cs
- ModifyActivitiesPropertyDescriptor.cs
- SelectingProviderEventArgs.cs
- ShaderEffect.cs
- DesignerActionPanel.cs
- OracleColumn.cs
- ContextStack.cs
- DateTime.cs
- XmlValidatingReaderImpl.cs
- IndexedDataBuffer.cs
- PriorityQueue.cs
- HebrewNumber.cs
- SoapAttributeAttribute.cs
- SimpleColumnProvider.cs
- ModifyActivitiesPropertyDescriptor.cs
- RegexMatch.cs
- MouseButtonEventArgs.cs
- Pens.cs
- SQLBinary.cs
- ToolStripScrollButton.cs
- _ScatterGatherBuffers.cs
- CodeTypeReferenceCollection.cs