Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Security / MessageSecurityTokenVersion.cs / 1 / MessageSecurityTokenVersion.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Security { using System.Collections.ObjectModel; using System.ServiceModel.Channels; using System.ServiceModel; using System.Runtime.Serialization; using System.IdentityModel.Tokens; using System.IdentityModel.Selectors; sealed class MessageSecurityTokenVersion : SecurityTokenVersion { SecurityVersion securityVersion; TrustVersion trustVersion; SecureConversationVersion secureConversationVersion; bool emitBspRequiredAttributes; string toString; ReadOnlyCollectionsupportedSpecs; const string bsp10ns = @"http://ws-i.org/profiles/basic-security/core/1.0"; static MessageSecurityTokenVersion wss11 = new MessageSecurityTokenVersion( SecurityVersion.WSSecurity11, TrustVersion.WSTrustFeb2005, SecureConversationVersion.WSSecureConversationFeb2005, "WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005", false, XD.SecurityXXX2005Dictionary.Namespace.Value, XD.TrustFeb2005Dictionary.Namespace.Value, XD.SecureConversationFeb2005Dictionary.Namespace.Value); static MessageSecurityTokenVersion wss10bsp10 = new MessageSecurityTokenVersion( SecurityVersion.WSSecurity10, TrustVersion.WSTrustFeb2005, SecureConversationVersion.WSSecureConversationFeb2005, "WSSecurity10WSTrustFebruary2005WSSecureConversationFebruary2005BasicSecurityProfile10", true, XD.SecurityJan2004Dictionary.Namespace.Value, XD.TrustFeb2005Dictionary.Namespace.Value, XD.SecureConversationFeb2005Dictionary.Namespace.Value, bsp10ns); static MessageSecurityTokenVersion wss11bsp10 = new MessageSecurityTokenVersion( SecurityVersion.WSSecurity11, TrustVersion.WSTrustFeb2005, SecureConversationVersion.WSSecureConversationFeb2005, "WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005BasicSecurityProfile10", true, XD.SecurityXXX2005Dictionary.Namespace.Value, XD.TrustFeb2005Dictionary.Namespace.Value, XD.SecureConversationFeb2005Dictionary.Namespace.Value, bsp10ns); static MessageSecurityTokenVersion wss10oasisdec2005bsp10 = new MessageSecurityTokenVersion( SecurityVersion.WSSecurity10, TrustVersion.WSTrust13, SecureConversationVersion.WSSecureConversation13, "WSSecurity11WSTrust13WSSecureConversation13BasicSecurityProfile10", true, XD.SecurityXXX2005Dictionary.Namespace.Value, DXD.TrustDec2005Dictionary.Namespace.Value, DXD.SecureConversationDec2005Dictionary.Namespace.Value ); static MessageSecurityTokenVersion wss11oasisdec2005 = new MessageSecurityTokenVersion( SecurityVersion.WSSecurity11, TrustVersion.WSTrust13, SecureConversationVersion.WSSecureConversation13, "WSSecurity11WSTrust13WSSecureConversation13", false, XD.SecurityJan2004Dictionary.Namespace.Value, DXD.TrustDec2005Dictionary.Namespace.Value, DXD.SecureConversationDec2005Dictionary.Namespace.Value ); static MessageSecurityTokenVersion wss11oasisdec2005bsp10 = new MessageSecurityTokenVersion( SecurityVersion.WSSecurity11, TrustVersion.WSTrust13, SecureConversationVersion.WSSecureConversation13, "WSSecurity11WSTrust13WSSecureConversation13BasicSecurityProfile10", true, XD.SecurityXXX2005Dictionary.Namespace.Value, DXD.TrustDec2005Dictionary.Namespace.Value, DXD.SecureConversationDec2005Dictionary.Namespace.Value ); public static MessageSecurityTokenVersion WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005 { get { return wss11; } } public static MessageSecurityTokenVersion WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005BasicSecurityProfile10 { get { return wss11bsp10; } } public static MessageSecurityTokenVersion WSSecurity10WSTrustFebruary2005WSSecureConversationFebruary2005BasicSecurityProfile10 { get { return wss10bsp10; } } public static MessageSecurityTokenVersion WSSecurity10WSTrust13WSSecureConversation13BasicSecurityProfile10 { get { return wss10oasisdec2005bsp10; } } public static MessageSecurityTokenVersion WSSecurity11WSTrust13WSSecureConversation13 { get { return wss11oasisdec2005; } } public static MessageSecurityTokenVersion WSSecurity11WSTrust13WSSecureConversation13BasicSecurityProfile10 { get { return wss11oasisdec2005bsp10; } } public static MessageSecurityTokenVersion GetSecurityTokenVersion(SecurityVersion version, bool emitBspAttributes) { if (version == SecurityVersion.WSSecurity10) { if (emitBspAttributes) return MessageSecurityTokenVersion.WSSecurity10WSTrustFebruary2005WSSecureConversationFebruary2005BasicSecurityProfile10; else throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotSupportedException()); } else if (version == SecurityVersion.WSSecurity11) { if (emitBspAttributes) return MessageSecurityTokenVersion.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005BasicSecurityProfile10; else return MessageSecurityTokenVersion.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005; } else { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotSupportedException()); } } MessageSecurityTokenVersion(SecurityVersion securityVersion, TrustVersion trustVersion, SecureConversationVersion secureConversationVersion, string toString, bool emitBspRequiredAttributes, params string[] supportedSpecs) : base() { this.emitBspRequiredAttributes = emitBspRequiredAttributes; this.supportedSpecs = new ReadOnlyCollection (supportedSpecs); this.toString = toString; this.securityVersion = securityVersion; this.trustVersion = trustVersion; this.secureConversationVersion = secureConversationVersion; } public bool EmitBspRequiredAttributes { get { return this.emitBspRequiredAttributes; } } public SecurityVersion SecurityVersion { get { return this.securityVersion; } } public TrustVersion TrustVersion { get { return this.trustVersion; } } public SecureConversationVersion SecureConversationVersion { get { return this.secureConversationVersion; } } public override ReadOnlyCollection GetSecuritySpecifications() { return supportedSpecs; } public override string ToString() { return this.toString; } } } // 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
- RuleProcessor.cs
- SchemaCollectionPreprocessor.cs
- Annotation.cs
- RefType.cs
- RectAnimationBase.cs
- DockPattern.cs
- SessionEndingCancelEventArgs.cs
- VectorAnimation.cs
- PageThemeBuildProvider.cs
- DesignerSerializerAttribute.cs
- KeyboardDevice.cs
- DataGridViewIntLinkedList.cs
- AmbientEnvironment.cs
- NumericUpDownAcceleration.cs
- ImageAutomationPeer.cs
- ToolTipAutomationPeer.cs
- FunctionImportElement.cs
- TCPListener.cs
- MarkerProperties.cs
- MarshalByValueComponent.cs
- CodeAttributeArgument.cs
- ImportOptions.cs
- IdentityModelDictionary.cs
- CompilerTypeWithParams.cs
- DescendantBaseQuery.cs
- Attributes.cs
- PKCS1MaskGenerationMethod.cs
- ToolStripItem.cs
- KeyValuePair.cs
- mansign.cs
- TextEditorDragDrop.cs
- AsyncOperationManager.cs
- ExtensionCollection.cs
- PeerConnector.cs
- TraceEventCache.cs
- SimpleMailWebEventProvider.cs
- ComponentGlyph.cs
- IndexerNameAttribute.cs
- ThreadInterruptedException.cs
- DataGridViewCellLinkedList.cs
- PagerSettings.cs
- RSAProtectedConfigurationProvider.cs
- PngBitmapEncoder.cs
- XsltLibrary.cs
- unsafenativemethodsother.cs
- RepeaterCommandEventArgs.cs
- XhtmlTextWriter.cs
- KnownIds.cs
- XmlDataSourceView.cs
- Keywords.cs
- ProfilePropertyNameValidator.cs
- SafePEFileHandle.cs
- Binding.cs
- SegmentInfo.cs
- Pair.cs
- WebPartVerbsEventArgs.cs
- TrackBar.cs
- CompilerTypeWithParams.cs
- CommandDevice.cs
- IndentTextWriter.cs
- AsyncPostBackErrorEventArgs.cs
- ValueCollectionParameterReader.cs
- ObjectStateEntryDbDataRecord.cs
- PreservationFileReader.cs
- TypeHelper.cs
- ExpressionBuilder.cs
- SQLDoubleStorage.cs
- CodeDomExtensionMethods.cs
- CollectionViewProxy.cs
- BlurBitmapEffect.cs
- CodeLinePragma.cs
- HttpPostProtocolReflector.cs
- exports.cs
- ManagedIStream.cs
- ContainerParagraph.cs
- XmlSerializerNamespaces.cs
- StreamWriter.cs
- SynchronousReceiveElement.cs
- TextTrailingWordEllipsis.cs
- DataPagerFieldCommandEventArgs.cs
- RSAOAEPKeyExchangeFormatter.cs
- ProtectedProviderSettings.cs
- ConstraintStruct.cs
- DisplayNameAttribute.cs
- BackEase.cs
- PersistenceTypeAttribute.cs
- NotifyInputEventArgs.cs
- TextOnlyOutput.cs
- FilteredXmlReader.cs
- ExpressionVisitor.cs
- XmlSchemaParticle.cs
- UnsafeNativeMethods.cs
- WorkflowInlining.cs
- ParameterCollection.cs
- Behavior.cs
- DesignTimeXamlWriter.cs
- VersionedStreamOwner.cs
- XamlNamespaceHelper.cs
- DSASignatureFormatter.cs
- EventArgs.cs