Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / security / system / security / authentication / ExtendedProtection / ExtendedProtectionPolicy.cs / 1 / ExtendedProtectionPolicy.cs
//------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Security.Authentication.ExtendedProtection; using System.Text; namespace System.Security.Authentication.ExtendedProtection { ////// This class contains the necessary settings for specifying how Extended Protection /// should behave. Use one of the Build* methods to create an instance of this type. /// public class ExtendedProtectionPolicy { private ServiceNameCollection customServiceNames; private PolicyEnforcement policyEnforcement; private ProtectionScenario protectionScenario; private ChannelBinding customChannelBinding; public ExtendedProtectionPolicy(PolicyEnforcement policyEnforcement, ProtectionScenario protectionScenario, ServiceNameCollection customServiceNames) { if (policyEnforcement == PolicyEnforcement.Never) { throw new ArgumentException(SR.GetString(SR.security_ExtendedProtectionPolicy_UseDifferentConstructorForNever), "policyEnforcement"); } if (customServiceNames != null && customServiceNames.Count == 0) { throw new ArgumentException(SR.GetString(SR.security_ExtendedProtectionPolicy_NoEmptyServiceNameCollection), "customServiceNames"); } this.policyEnforcement = policyEnforcement; this.protectionScenario = protectionScenario; this.customServiceNames = customServiceNames; } public ExtendedProtectionPolicy(PolicyEnforcement policyEnforcement, ChannelBinding customChannelBinding) { if (policyEnforcement == PolicyEnforcement.Never) { throw new ArgumentException(SR.GetString(SR.security_ExtendedProtectionPolicy_UseDifferentConstructorForNever), "policyEnforcement"); } if (customChannelBinding == null) { throw new ArgumentNullException("customChannelBinding"); } this.policyEnforcement = policyEnforcement; this.protectionScenario = ProtectionScenario.TransportSelected; this.customChannelBinding = customChannelBinding; } public ExtendedProtectionPolicy(PolicyEnforcement policyEnforcement) { // this is the only constructor which allows PolicyEnforcement.Never. this.policyEnforcement = policyEnforcement; this.protectionScenario = ProtectionScenario.TransportSelected; } public ServiceNameCollection CustomServiceNames { get { return customServiceNames; } } public PolicyEnforcement PolicyEnforcement { get { return policyEnforcement; } } public ProtectionScenario ProtectionScenario { get { return protectionScenario; } } public ChannelBinding CustomChannelBinding { get { return customChannelBinding; } } public override string ToString() { StringBuilder sb = new StringBuilder(); sb.Append("ProtectionScenario="); sb.Append(protectionScenario.ToString()); sb.Append("; PolicyEnforcement="); sb.Append(policyEnforcement.ToString()); sb.Append("; CustomChannelBinding="); if (customChannelBinding == null) { sb.Append(""); } else { sb.Append(customChannelBinding.ToString()); } sb.Append("; ServiceNames="); if (customServiceNames == null) { sb.Append(" "); } else { bool first = true; foreach (string serviceName in customServiceNames) { if (first) { first = false; } else { sb.Append(", "); } sb.Append(serviceName); } } return sb.ToString(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Security.Authentication.ExtendedProtection; using System.Text; namespace System.Security.Authentication.ExtendedProtection { /// /// This class contains the necessary settings for specifying how Extended Protection /// should behave. Use one of the Build* methods to create an instance of this type. /// public class ExtendedProtectionPolicy { private ServiceNameCollection customServiceNames; private PolicyEnforcement policyEnforcement; private ProtectionScenario protectionScenario; private ChannelBinding customChannelBinding; public ExtendedProtectionPolicy(PolicyEnforcement policyEnforcement, ProtectionScenario protectionScenario, ServiceNameCollection customServiceNames) { if (policyEnforcement == PolicyEnforcement.Never) { throw new ArgumentException(SR.GetString(SR.security_ExtendedProtectionPolicy_UseDifferentConstructorForNever), "policyEnforcement"); } if (customServiceNames != null && customServiceNames.Count == 0) { throw new ArgumentException(SR.GetString(SR.security_ExtendedProtectionPolicy_NoEmptyServiceNameCollection), "customServiceNames"); } this.policyEnforcement = policyEnforcement; this.protectionScenario = protectionScenario; this.customServiceNames = customServiceNames; } public ExtendedProtectionPolicy(PolicyEnforcement policyEnforcement, ChannelBinding customChannelBinding) { if (policyEnforcement == PolicyEnforcement.Never) { throw new ArgumentException(SR.GetString(SR.security_ExtendedProtectionPolicy_UseDifferentConstructorForNever), "policyEnforcement"); } if (customChannelBinding == null) { throw new ArgumentNullException("customChannelBinding"); } this.policyEnforcement = policyEnforcement; this.protectionScenario = ProtectionScenario.TransportSelected; this.customChannelBinding = customChannelBinding; } public ExtendedProtectionPolicy(PolicyEnforcement policyEnforcement) { // this is the only constructor which allows PolicyEnforcement.Never. this.policyEnforcement = policyEnforcement; this.protectionScenario = ProtectionScenario.TransportSelected; } public ServiceNameCollection CustomServiceNames { get { return customServiceNames; } } public PolicyEnforcement PolicyEnforcement { get { return policyEnforcement; } } public ProtectionScenario ProtectionScenario { get { return protectionScenario; } } public ChannelBinding CustomChannelBinding { get { return customChannelBinding; } } public override string ToString() { StringBuilder sb = new StringBuilder(); sb.Append("ProtectionScenario="); sb.Append(protectionScenario.ToString()); sb.Append("; PolicyEnforcement="); sb.Append(policyEnforcement.ToString()); sb.Append("; CustomChannelBinding="); if (customChannelBinding == null) { sb.Append(""); } else { sb.Append(customChannelBinding.ToString()); } sb.Append("; ServiceNames="); if (customServiceNames == null) { sb.Append(" "); } else { bool first = true; foreach (string serviceName in customServiceNames) { if (first) { first = false; } else { sb.Append(", "); } sb.Append(serviceName); } } return sb.ToString(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ScrollProviderWrapper.cs
- FontResourceCache.cs
- MemoryRecordBuffer.cs
- AspNetSynchronizationContext.cs
- Function.cs
- OutOfProcStateClientManager.cs
- Literal.cs
- PageParserFilter.cs
- ConfigPathUtility.cs
- BaseCollection.cs
- TrackingSection.cs
- BaseInfoTable.cs
- HttpModuleAction.cs
- ScriptingSectionGroup.cs
- AssemblyCollection.cs
- WindowsComboBox.cs
- KeyToListMap.cs
- BaseCollection.cs
- DataQuery.cs
- RewritingPass.cs
- MouseWheelEventArgs.cs
- COM2FontConverter.cs
- CompressedStack.cs
- XhtmlBasicImageAdapter.cs
- Int16Converter.cs
- AndCondition.cs
- StaticSiteMapProvider.cs
- LabelDesigner.cs
- HandleScope.cs
- RequiredFieldValidator.cs
- DataSourceGeneratorException.cs
- BulletedList.cs
- CqlBlock.cs
- EntityDataSourceWizardForm.cs
- fixedPageContentExtractor.cs
- WebHttpBindingElement.cs
- ActiveXSite.cs
- DirectoryObjectSecurity.cs
- PKCS1MaskGenerationMethod.cs
- ReturnType.cs
- SqlDependency.cs
- QilTypeChecker.cs
- GetMemberBinder.cs
- PackWebRequest.cs
- ProcessHost.cs
- LongValidator.cs
- XmlSchemaAppInfo.cs
- BaseComponentEditor.cs
- GenericTypeParameterBuilder.cs
- UnlockCardRequest.cs
- ReachSerializationCacheItems.cs
- DBSchemaRow.cs
- PackageRelationship.cs
- Int16Converter.cs
- MatrixKeyFrameCollection.cs
- NavigationProperty.cs
- MarshalByValueComponent.cs
- storepermission.cs
- SchemaNotation.cs
- TraceHandlerErrorFormatter.cs
- ImportCatalogPart.cs
- Point.cs
- BaseDataListActionList.cs
- ObjectDataSourceDisposingEventArgs.cs
- MenuAutomationPeer.cs
- ActivationServices.cs
- StrokeCollection2.cs
- ScrollItemProviderWrapper.cs
- MasterPageParser.cs
- SafeArrayTypeMismatchException.cs
- HostProtectionPermission.cs
- CompilerWrapper.cs
- MsmqReceiveHelper.cs
- Block.cs
- XmlUtil.cs
- ResolveDuplexCD1AsyncResult.cs
- TouchDevice.cs
- OdbcConnectionStringbuilder.cs
- TabControl.cs
- Wizard.cs
- XmlElementList.cs
- DataGridViewCellMouseEventArgs.cs
- DoubleMinMaxAggregationOperator.cs
- ScrollPattern.cs
- CheckPair.cs
- RemoteCryptoDecryptRequest.cs
- unsafenativemethodstextservices.cs
- PagedDataSource.cs
- KeyBinding.cs
- EdmFunctions.cs
- DataGridViewColumnStateChangedEventArgs.cs
- Hash.cs
- SmtpReplyReaderFactory.cs
- SchemaConstraints.cs
- DataMisalignedException.cs
- UnsafePeerToPeerMethods.cs
- Int16AnimationBase.cs
- ReverseComparer.cs
- FilterQuery.cs
- XmlEventCache.cs