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
- ProjectionCamera.cs
- AutoCompleteStringCollection.cs
- WebPartUtil.cs
- SrgsDocument.cs
- SqlConnectionManager.cs
- OleDbConnectionPoolGroupProviderInfo.cs
- Evidence.cs
- cookieexception.cs
- SelectionItemProviderWrapper.cs
- ObjectDataSourceFilteringEventArgs.cs
- NotifyCollectionChangedEventArgs.cs
- WebPartCatalogCloseVerb.cs
- HttpProtocolImporter.cs
- And.cs
- DbConnectionPoolOptions.cs
- EdmProviderManifest.cs
- FormParameter.cs
- ControlCommandSet.cs
- ParameterRetriever.cs
- BitmapSource.cs
- ResourceReferenceKeyNotFoundException.cs
- BaseTreeIterator.cs
- SecureEnvironment.cs
- DurableDispatcherAddressingFault.cs
- FileVersionInfo.cs
- CustomCredentialPolicy.cs
- DescendentsWalker.cs
- FillRuleValidation.cs
- CheckBoxField.cs
- DependencyPropertyChangedEventArgs.cs
- WebBrowserUriTypeConverter.cs
- EventSinkHelperWriter.cs
- HtmlInputPassword.cs
- CacheSection.cs
- WmlLabelAdapter.cs
- Cell.cs
- ChildrenQuery.cs
- FieldMetadata.cs
- Model3D.cs
- UpdateException.cs
- IERequestCache.cs
- Propagator.JoinPropagator.JoinPredicateVisitor.cs
- DbConnectionPoolGroup.cs
- HttpDebugHandler.cs
- TemplateControlBuildProvider.cs
- OperatingSystem.cs
- ValidationContext.cs
- WindowsListViewGroupHelper.cs
- LinqToSqlWrapper.cs
- ConstraintEnumerator.cs
- ActionFrame.cs
- FamilyCollection.cs
- CompositeActivityTypeDescriptorProvider.cs
- HttpVersion.cs
- BaseContextMenu.cs
- ContentPropertyAttribute.cs
- SafeEventLogWriteHandle.cs
- Track.cs
- DefaultTypeArgumentAttribute.cs
- ValidatorCollection.cs
- ObjectSelectorEditor.cs
- TemplateKeyConverter.cs
- CheckBoxFlatAdapter.cs
- DetailsViewPagerRow.cs
- WasHostedComPlusFactory.cs
- AttachmentService.cs
- Number.cs
- StaticResourceExtension.cs
- BaseAsyncResult.cs
- ToolStripSeparator.cs
- TypographyProperties.cs
- TemplatePropertyEntry.cs
- X509Certificate2Collection.cs
- Point3DAnimationBase.cs
- X509Utils.cs
- InstanceDescriptor.cs
- HttpHandlerAction.cs
- ImplicitInputBrush.cs
- StrokeSerializer.cs
- TextControlDesigner.cs
- ConditionalAttribute.cs
- HandlerElement.cs
- SchemaObjectWriter.cs
- InheritanceRules.cs
- OutputScopeManager.cs
- PluralizationServiceUtil.cs
- UnsafeNativeMethods.cs
- CodeArgumentReferenceExpression.cs
- TextOutput.cs
- XmlSiteMapProvider.cs
- MTConfigUtil.cs
- IDispatchConstantAttribute.cs
- WebPartDescriptionCollection.cs
- SqlProfileProvider.cs
- Exception.cs
- InkCanvasSelectionAdorner.cs
- ScrollChangedEventArgs.cs
- ProfileModule.cs
- ItemChangedEventArgs.cs
- ClrPerspective.cs