Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / WSFederationHttpSecurity.cs / 1 / WSFederationHttpSecurity.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; public sealed class WSFederationHttpSecurity { internal const WSFederationHttpSecurityMode DefaultMode = WSFederationHttpSecurityMode.Message; WSFederationHttpSecurityMode mode; FederatedMessageSecurityOverHttp messageSecurity; internal WSFederationHttpSecurity() : this(DefaultMode, new FederatedMessageSecurityOverHttp()) { } WSFederationHttpSecurity(WSFederationHttpSecurityMode mode, FederatedMessageSecurityOverHttp messageSecurity) { DiagnosticUtility.DebugAssert(WSFederationHttpSecurityModeHelper.IsDefined(mode), string.Format("Invalid WSFederationHttpSecurityMode value: {0}", mode.ToString())); this.mode = mode; this.messageSecurity = messageSecurity == null ? new FederatedMessageSecurityOverHttp() : messageSecurity; } public WSFederationHttpSecurityMode Mode { get { return this.mode; } set { if (!WSFederationHttpSecurityModeHelper.IsDefined(value)) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value")); } this.mode = value; } } public FederatedMessageSecurityOverHttp Message { get { return this.messageSecurity; } } internal SecurityBindingElement CreateMessageSecurity(bool isReliableSessionEnabled, MessageSecurityVersion version) { if (this.mode == WSFederationHttpSecurityMode.Message || this.mode == WSFederationHttpSecurityMode.TransportWithMessageCredential) { return this.messageSecurity.CreateSecurityBindingElement(this.Mode == WSFederationHttpSecurityMode.TransportWithMessageCredential, isReliableSessionEnabled, version); } else { return null; } } internal static bool TryCreate(SecurityBindingElement sbe, WSFederationHttpSecurityMode mode, HttpTransportSecurity transportSecurity, bool isReliableSessionEnabled, MessageSecurityVersion version, out WSFederationHttpSecurity security) { security = null; FederatedMessageSecurityOverHttp messageSecurity = null; if (sbe == null) { mode = WSFederationHttpSecurityMode.None; } else { mode &= WSFederationHttpSecurityMode.Message | WSFederationHttpSecurityMode.TransportWithMessageCredential; DiagnosticUtility.DebugAssert(WSFederationHttpSecurityModeHelper.IsDefined(mode), string.Format("Invalid WSFederationHttpSecurityMode value: {0}", mode.ToString())); if (!FederatedMessageSecurityOverHttp.TryCreate(sbe, mode == WSFederationHttpSecurityMode.TransportWithMessageCredential, isReliableSessionEnabled, version, out messageSecurity)) return false; } security = new WSFederationHttpSecurity(mode, messageSecurity); return true; } } } // 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
- InternalControlCollection.cs
- IERequestCache.cs
- GridViewCommandEventArgs.cs
- MessageDecoder.cs
- SQLDateTime.cs
- CommandID.cs
- AspProxy.cs
- AttachmentCollection.cs
- RegexReplacement.cs
- altserialization.cs
- Point4D.cs
- PointConverter.cs
- StorageEntityContainerMapping.cs
- Serializer.cs
- PrintSystemException.cs
- AuthenticateEventArgs.cs
- SafeTokenHandle.cs
- RadialGradientBrush.cs
- webproxy.cs
- _IPv4Address.cs
- Byte.cs
- TextRangeEditLists.cs
- CodeMemberEvent.cs
- SiteMapPath.cs
- ClientRolePrincipal.cs
- RoutingChannelExtension.cs
- XmlSchemaAnnotation.cs
- DataContractSerializerSection.cs
- Vector3dCollection.cs
- FixedSOMTableRow.cs
- XmlSchemaCompilationSettings.cs
- SafeTimerHandle.cs
- SafeNativeMethods.cs
- BitmapMetadataBlob.cs
- ControlAdapter.cs
- EmptyQuery.cs
- ResourceDescriptionAttribute.cs
- DataGridSortCommandEventArgs.cs
- ScriptIgnoreAttribute.cs
- SQLDecimalStorage.cs
- PropertyGroupDescription.cs
- TreeNodeBindingCollection.cs
- SplitterPanel.cs
- ItemsChangedEventArgs.cs
- EntityProviderFactory.cs
- DataGridViewButtonColumn.cs
- BypassElementCollection.cs
- TreeViewHitTestInfo.cs
- DbExpressionVisitor.cs
- VirtualizedItemProviderWrapper.cs
- RenderingBiasValidation.cs
- SessionIDManager.cs
- DataServiceRequestException.cs
- PropertyPath.cs
- TimersDescriptionAttribute.cs
- TableProvider.cs
- QueryStringHandler.cs
- DesignerRegionMouseEventArgs.cs
- ExpressionNode.cs
- BamlWriter.cs
- SQLInt64Storage.cs
- WebPartEventArgs.cs
- ObjectMemberMapping.cs
- TraceSection.cs
- HtmlTable.cs
- RequestCache.cs
- WindowsListViewGroupSubsetLink.cs
- WebPartExportVerb.cs
- ScrollItemProviderWrapper.cs
- KoreanLunisolarCalendar.cs
- GeneralTransformCollection.cs
- PrePostDescendentsWalker.cs
- ContextItem.cs
- ReadOnlyCollection.cs
- TextEffect.cs
- ReadOnlyActivityGlyph.cs
- UniqueIdentifierService.cs
- WebChannelFactory.cs
- ServerIdentity.cs
- ListViewDataItem.cs
- SqlComparer.cs
- DefaultEvaluationContext.cs
- FormsAuthenticationConfiguration.cs
- RealProxy.cs
- SqlWriter.cs
- PolyQuadraticBezierSegment.cs
- TypeSystemProvider.cs
- GPPOINTF.cs
- ManagedWndProcTracker.cs
- dtdvalidator.cs
- InlineObject.cs
- RootProfilePropertySettingsCollection.cs
- SqlProfileProvider.cs
- BufferedGraphicsManager.cs
- NodeFunctions.cs
- BaseParser.cs
- AttributeProviderAttribute.cs
- WmpBitmapEncoder.cs
- TypeExtension.cs
- ManagementObject.cs