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
- RoleGroupCollection.cs
- FixedStringLookup.cs
- MissingManifestResourceException.cs
- QueryInterceptorAttribute.cs
- FileSystemInfo.cs
- LayoutTableCell.cs
- SectionXmlInfo.cs
- Rectangle.cs
- CodeParameterDeclarationExpressionCollection.cs
- SortKey.cs
- TiffBitmapDecoder.cs
- OciHandle.cs
- ArrowControl.xaml.cs
- CustomErrorCollection.cs
- ContentIterators.cs
- ChildDocumentBlock.cs
- TemplateLookupAction.cs
- XmlSchemaComplexContent.cs
- Label.cs
- XamlFilter.cs
- GifBitmapDecoder.cs
- Array.cs
- XPathDocumentIterator.cs
- SymmetricAlgorithm.cs
- ConditionalAttribute.cs
- SessionEndedEventArgs.cs
- Point4DValueSerializer.cs
- VectorConverter.cs
- GradientStop.cs
- RayHitTestParameters.cs
- EastAsianLunisolarCalendar.cs
- HttpResponse.cs
- XmlSchemaSimpleTypeUnion.cs
- TreeNodeCollectionEditor.cs
- SoapHelper.cs
- ThicknessConverter.cs
- ToolboxItem.cs
- indexingfiltermarshaler.cs
- MailWebEventProvider.cs
- EdmPropertyAttribute.cs
- SafeLibraryHandle.cs
- EditorOptionAttribute.cs
- SafeFileMapViewHandle.cs
- DateBoldEvent.cs
- KeyboardDevice.cs
- SafeArrayTypeMismatchException.cs
- DbSourceParameterCollection.cs
- ExpandableObjectConverter.cs
- SafeLocalMemHandle.cs
- FormViewModeEventArgs.cs
- PathFigure.cs
- ContentElement.cs
- Baml6ConstructorInfo.cs
- IgnoreSection.cs
- ZoneLinkButton.cs
- RootCodeDomSerializer.cs
- CategoryGridEntry.cs
- RangeValidator.cs
- XpsDocumentEvent.cs
- MapPathBasedVirtualPathProvider.cs
- Tile.cs
- SoapExtensionTypeElementCollection.cs
- TranslateTransform.cs
- TextBox.cs
- SiteMapNodeItemEventArgs.cs
- DataGridColumnFloatingHeader.cs
- XmlSchemaObject.cs
- _HeaderInfo.cs
- DataGridViewRow.cs
- SeparatorAutomationPeer.cs
- TextBoxAutomationPeer.cs
- SmiEventStream.cs
- QilTypeChecker.cs
- BitmapPalette.cs
- AuthStoreRoleProvider.cs
- ApplyImportsAction.cs
- SqlConnectionPoolProviderInfo.cs
- TriggerAction.cs
- ZipFileInfoCollection.cs
- MasterPageParser.cs
- ToggleButtonAutomationPeer.cs
- VectorKeyFrameCollection.cs
- SecurityDocument.cs
- ByteFacetDescriptionElement.cs
- WhitespaceRule.cs
- InkSerializer.cs
- _NativeSSPI.cs
- CollectionCodeDomSerializer.cs
- DataGridViewColumnHeaderCell.cs
- BinaryObjectReader.cs
- SiteOfOriginContainer.cs
- NotifyParentPropertyAttribute.cs
- DataBoundControlAdapter.cs
- ColumnClickEvent.cs
- HelpFileFileNameEditor.cs
- CustomAttributeBuilder.cs
- XamlReader.cs
- DataRelation.cs
- DecimalStorage.cs
- XPathChildIterator.cs