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
- CollectionViewGroupInternal.cs
- SubqueryRules.cs
- PenLineJoinValidation.cs
- SHA1CryptoServiceProvider.cs
- CustomMenuItemCollection.cs
- AuthenticationModuleElementCollection.cs
- ValidationRule.cs
- WebBrowserDocumentCompletedEventHandler.cs
- RawKeyboardInputReport.cs
- Debugger.cs
- MetadataException.cs
- FixUp.cs
- TextView.cs
- OperationGenerator.cs
- CodeAccessSecurityEngine.cs
- InfoCardSymmetricCrypto.cs
- VectorAnimationBase.cs
- StylusPointPropertyInfoDefaults.cs
- SystemIPAddressInformation.cs
- __FastResourceComparer.cs
- ListControl.cs
- CustomWebEventKey.cs
- MembershipPasswordException.cs
- ObjectContext.cs
- SecurityRuntime.cs
- OptimizedTemplateContent.cs
- ImageAnimator.cs
- _CacheStreams.cs
- WebPartCatalogCloseVerb.cs
- ClientConfigurationSystem.cs
- DataExpression.cs
- TextStore.cs
- Splitter.cs
- SqlServer2KCompatibilityAnnotation.cs
- Constants.cs
- ClickablePoint.cs
- Win32Native.cs
- UnicastIPAddressInformationCollection.cs
- MessageUtil.cs
- DockingAttribute.cs
- XmlLanguageConverter.cs
- SubMenuStyleCollection.cs
- RepeatButtonAutomationPeer.cs
- Enlistment.cs
- SqlMethodTransformer.cs
- SchemaImporterExtensionElement.cs
- CodeMemberEvent.cs
- METAHEADER.cs
- Compiler.cs
- CodeNamespaceImportCollection.cs
- HtmlTableCell.cs
- ParallelTimeline.cs
- TextTreeRootTextBlock.cs
- FontStyleConverter.cs
- DeferredRunTextReference.cs
- GridViewEditEventArgs.cs
- IndicFontClient.cs
- RangeValueProviderWrapper.cs
- SystemUdpStatistics.cs
- LiteralControl.cs
- DateTimeConstantAttribute.cs
- Stream.cs
- EventMappingSettingsCollection.cs
- MultipleViewProviderWrapper.cs
- TreeNodeMouseHoverEvent.cs
- ThrowOnMultipleAssignment.cs
- handlecollector.cs
- Int64Converter.cs
- NumericExpr.cs
- SerializationFieldInfo.cs
- DeviceOverridableAttribute.cs
- ProxyManager.cs
- BulletedList.cs
- RowVisual.cs
- UnknownBitmapDecoder.cs
- WebPartMenuStyle.cs
- CombinedGeometry.cs
- HttpFileCollection.cs
- Symbol.cs
- RegexNode.cs
- HostExecutionContextManager.cs
- CompilerParameters.cs
- TextSpanModifier.cs
- ReturnValue.cs
- UniformGrid.cs
- Partitioner.cs
- InvalidCommandTreeException.cs
- XmlEntityReference.cs
- PrintingPermissionAttribute.cs
- ConfigurationManager.cs
- PreProcessor.cs
- Utils.cs
- SQLMoneyStorage.cs
- SQLRoleProvider.cs
- Activity.cs
- PreservationFileReader.cs
- XmlPropertyBag.cs
- DelegateInArgument.cs
- HtmlElementCollection.cs
- StatusBarDrawItemEvent.cs