Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / WSDualHttpSecurity.cs / 1 / WSDualHttpSecurity.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel { using System.Diagnostics; using System.Net.Security; using System.ServiceModel.Channels; using System.ServiceModel.Security; using System.ServiceModel.Configuration; public sealed class WSDualHttpSecurity { static readonly MessageSecurityVersion WSDualMessageSecurityVersion = MessageSecurityVersion.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10; internal const WSDualHttpSecurityMode DefaultMode = WSDualHttpSecurityMode.Message; WSDualHttpSecurityMode mode; MessageSecurityOverHttp messageSecurity; internal WSDualHttpSecurity() : this(DefaultMode, new MessageSecurityOverHttp()) { } WSDualHttpSecurity(WSDualHttpSecurityMode mode, MessageSecurityOverHttp messageSecurity) { DiagnosticUtility.DebugAssert(WSDualHttpSecurityModeHelper.IsDefined(mode), string.Format("Invalid WSDualHttpSecurityMode value: {0}", mode.ToString())); this.mode = mode; this.messageSecurity = messageSecurity == null ? new MessageSecurityOverHttp() : messageSecurity; } public WSDualHttpSecurityMode Mode { get { return this.mode; } set { if (!WSDualHttpSecurityModeHelper.IsDefined(value)) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value")); } this.mode = value; } } public MessageSecurityOverHttp Message { get { return this.messageSecurity; } } internal SecurityBindingElement CreateMessageSecurity() { if (this.mode == WSDualHttpSecurityMode.Message) { return this.messageSecurity.CreateSecurityBindingElement(false, true, WSDualMessageSecurityVersion); } else { return null; } } internal static bool TryCreate(SecurityBindingElement sbe, out WSDualHttpSecurity security) { security = null; if (sbe == null) security = new WSDualHttpSecurity(WSDualHttpSecurityMode.None, null); else { MessageSecurityOverHttp messageSecurity; if (!MessageSecurityOverHttp.TryCreate(sbe, false, true, out messageSecurity)) return false; security = new WSDualHttpSecurity(WSDualHttpSecurityMode.Message, messageSecurity); } // the last check: make sure that security binding element match the incoming security return SecurityElement.AreBindingsMatching(security.CreateMessageSecurity(), sbe); } } } // 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
- XmlSchemaImport.cs
- mactripleDES.cs
- Stroke2.cs
- QuaternionValueSerializer.cs
- ServiceOperationListItem.cs
- ToolStripMenuItemCodeDomSerializer.cs
- XMLSchema.cs
- HtmlControl.cs
- XmlException.cs
- InfoCardMasterKey.cs
- RecognizeCompletedEventArgs.cs
- FixedPageAutomationPeer.cs
- DataBoundLiteralControl.cs
- PinnedBufferMemoryStream.cs
- GeometryGroup.cs
- HiddenField.cs
- DecoratedNameAttribute.cs
- FixedSOMLineCollection.cs
- parserscommon.cs
- HtmlInputCheckBox.cs
- SystemDiagnosticsSection.cs
- DataGridViewElement.cs
- FormViewRow.cs
- SessionIDManager.cs
- RemotingServices.cs
- RegistryExceptionHelper.cs
- MetadataCollection.cs
- OutputCacheSettingsSection.cs
- Maps.cs
- InstanceDataCollection.cs
- X500Name.cs
- SamlAssertion.cs
- StrokeIntersection.cs
- BindingMAnagerBase.cs
- LabelEditEvent.cs
- DrawItemEvent.cs
- PropertyCollection.cs
- UnmanagedMemoryStreamWrapper.cs
- GuidConverter.cs
- TemplateField.cs
- SqlMethodAttribute.cs
- TaiwanCalendar.cs
- ToolZone.cs
- HttpException.cs
- CodeGenerator.cs
- StructuralType.cs
- PenCursorManager.cs
- UInt16Storage.cs
- SqlFormatter.cs
- DetailsViewModeEventArgs.cs
- QilTypeChecker.cs
- WsatServiceCertificate.cs
- CaretElement.cs
- activationcontext.cs
- ObjectListGeneralPage.cs
- CrossAppDomainChannel.cs
- UiaCoreTypesApi.cs
- ValueQuery.cs
- WebServiceErrorEvent.cs
- VectorAnimation.cs
- StickyNoteContentControl.cs
- RenamedEventArgs.cs
- DataSourceCacheDurationConverter.cs
- CacheMemory.cs
- ControlSerializer.cs
- WebDescriptionAttribute.cs
- Mutex.cs
- EntityDataSource.cs
- SqlPersonalizationProvider.cs
- SuspendDesigner.cs
- ProjectionCamera.cs
- XPathConvert.cs
- BitStack.cs
- Visual3D.cs
- WebPartUserCapability.cs
- ApplicationDirectory.cs
- FlowLayout.cs
- ObsoleteAttribute.cs
- FileRegion.cs
- TypeSystem.cs
- EmptyEnumerator.cs
- FrameworkContentElement.cs
- DataColumn.cs
- FieldBuilder.cs
- RemoteWebConfigurationHost.cs
- GridViewColumnHeader.cs
- SqlCacheDependencyDatabaseCollection.cs
- MulticastOption.cs
- Msmq4PoisonHandler.cs
- ComboBox.cs
- base64Transforms.cs
- ManipulationDelta.cs
- AlphaSortedEnumConverter.cs
- MonthCalendar.cs
- PersonalizationStateInfo.cs
- AuthenticationConfig.cs
- PixelFormatConverter.cs
- AdornedElementPlaceholder.cs
- WSTransactionSection.cs
- MemberDescriptor.cs