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
- PageThemeBuildProvider.cs
- TemplateBuilder.cs
- EntityDescriptor.cs
- CryptoKeySecurity.cs
- SiteMapDataSource.cs
- ToolStripPanel.cs
- AsyncOperation.cs
- TimeoutException.cs
- InputMethodStateTypeInfo.cs
- LinqDataView.cs
- RNGCryptoServiceProvider.cs
- XmlAttributeProperties.cs
- TableRowCollection.cs
- AmbientLight.cs
- WSDualHttpSecurityElement.cs
- StrokeSerializer.cs
- WaitingCursor.cs
- SerializationException.cs
- EtwTrace.cs
- EqualityComparer.cs
- CompareValidator.cs
- ConfigurationFileMap.cs
- List.cs
- InvalidComObjectException.cs
- ValidationError.cs
- SafeHandle.cs
- BoundPropertyEntry.cs
- RefreshEventArgs.cs
- GenericUriParser.cs
- Run.cs
- ImageCodecInfoPrivate.cs
- Triplet.cs
- ValidationSummary.cs
- LineProperties.cs
- SingleAnimation.cs
- WebPartMinimizeVerb.cs
- ConfigXmlSignificantWhitespace.cs
- Thread.cs
- ExpandCollapsePattern.cs
- CssClassPropertyAttribute.cs
- BooleanToSelectiveScrollingOrientationConverter.cs
- DataObject.cs
- UTF32Encoding.cs
- RankException.cs
- RepeaterItemCollection.cs
- ReadOnlyDictionary.cs
- ChtmlTextWriter.cs
- AdapterUtil.cs
- MarshalByRefObject.cs
- WebPartConnectVerb.cs
- TextDecorations.cs
- Camera.cs
- SecurityProtocolFactory.cs
- ServiceBehaviorElementCollection.cs
- Item.cs
- Mutex.cs
- DragEvent.cs
- DataColumnCollection.cs
- AssemblyName.cs
- SqlBuilder.cs
- xdrvalidator.cs
- PropertyGridEditorPart.cs
- safemediahandle.cs
- DropSource.cs
- ContextMenuAutomationPeer.cs
- ComContractElementCollection.cs
- BitmapEffectGroup.cs
- WebPartCloseVerb.cs
- indexingfiltermarshaler.cs
- JournalEntryListConverter.cs
- ErrorHandler.cs
- recordstate.cs
- UniqueIdentifierService.cs
- BlobPersonalizationState.cs
- MsmqElementBase.cs
- BufferedStream.cs
- TableRow.cs
- ConfigDefinitionUpdates.cs
- DecoderReplacementFallback.cs
- WebServiceResponse.cs
- DataSvcMapFile.cs
- XXXInfos.cs
- UniqueConstraint.cs
- HttpWebRequest.cs
- QueryPageSettingsEventArgs.cs
- MsmqIntegrationProcessProtocolHandler.cs
- _SecureChannel.cs
- EntityClientCacheKey.cs
- OutputCacheSettings.cs
- BaseDataListActionList.cs
- AssemblyFilter.cs
- SqlDataReader.cs
- LayoutInformation.cs
- TextPenaltyModule.cs
- EntityClassGenerator.cs
- DragDeltaEventArgs.cs
- Update.cs
- RegexGroupCollection.cs
- PersonalizationAdministration.cs
- VScrollProperties.cs