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
- Comparer.cs
- FontUnitConverter.cs
- RichTextBox.cs
- VariableDesigner.xaml.cs
- HighContrastHelper.cs
- basenumberconverter.cs
- OdbcDataReader.cs
- PopupControlService.cs
- PerformanceCounterPermissionEntry.cs
- SqlVisitor.cs
- TailPinnedEventArgs.cs
- SelfIssuedAuthProofToken.cs
- HtmlTableCellCollection.cs
- DefaultAssemblyResolver.cs
- Identifier.cs
- ComplexLine.cs
- ToolStripScrollButton.cs
- MethodImplAttribute.cs
- FormsAuthenticationConfiguration.cs
- OptimizedTemplateContent.cs
- DuplicateDetector.cs
- DataGridTableStyleMappingNameEditor.cs
- DbException.cs
- FileLoadException.cs
- NoResizeSelectionBorderGlyph.cs
- XmlDataSource.cs
- CopyAttributesAction.cs
- EastAsianLunisolarCalendar.cs
- ObjectSet.cs
- AsymmetricSecurityProtocolFactory.cs
- EntitySetBase.cs
- LineUtil.cs
- TypeForwardedToAttribute.cs
- DynamicDataResources.Designer.cs
- BaseTemplateBuildProvider.cs
- _ChunkParse.cs
- TableLayoutCellPaintEventArgs.cs
- SecurityState.cs
- Screen.cs
- TableSectionStyle.cs
- RepeatBehavior.cs
- ExpressionBindings.cs
- GradientStop.cs
- SymbolMethod.cs
- SecurityTokenSerializer.cs
- TableLayoutPanelBehavior.cs
- MetadataArtifactLoaderXmlReaderWrapper.cs
- UnsafeNativeMethods.cs
- XPathSelectionIterator.cs
- PolygonHotSpot.cs
- GifBitmapEncoder.cs
- UserValidatedEventArgs.cs
- ChoiceConverter.cs
- QilTernary.cs
- SmiEventSink.cs
- FormatException.cs
- CodeTypeDeclarationCollection.cs
- Types.cs
- SimpleWebHandlerParser.cs
- Options.cs
- NamedPipeAppDomainProtocolHandler.cs
- Misc.cs
- AssemblyResourceLoader.cs
- UntypedNullExpression.cs
- SqlBuffer.cs
- ByteConverter.cs
- SmtpMail.cs
- ConnectionDemuxer.cs
- ResourcesChangeInfo.cs
- SqlExpressionNullability.cs
- ISCIIEncoding.cs
- TextLineBreak.cs
- _ListenerAsyncResult.cs
- HttpRawResponse.cs
- DataContractFormatAttribute.cs
- RectConverter.cs
- EventMappingSettingsCollection.cs
- Crypto.cs
- ArgumentNullException.cs
- WorkerRequest.cs
- HttpCacheParams.cs
- SettingsContext.cs
- SimpleBitVector32.cs
- CodeLabeledStatement.cs
- DSACryptoServiceProvider.cs
- DataGridViewSelectedRowCollection.cs
- PolyQuadraticBezierSegment.cs
- ControlBuilder.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs
- BasicCommandTreeVisitor.cs
- SequenceNumber.cs
- WebPartConnectVerb.cs
- SqlCacheDependencyDatabaseCollection.cs
- WindowCollection.cs
- CursorConverter.cs
- GcSettings.cs
- HashHelpers.cs
- SingleAnimationBase.cs
- SpotLight.cs
- PerformanceCounterPermission.cs