Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Security / WSSecurityPolicy11.cs / 1 / WSSecurityPolicy11.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Security { using System; using System.Collections.Generic; using System.ServiceModel.Channels; using System.ServiceModel.Description; using System.Text; using System.Xml; class WSSecurityPolicy11 : WSSecurityPolicy { public const string WsspNamespace = @"http://schemas.xmlsoap.org/ws/2005/07/securitypolicy"; public override string WsspNamespaceUri { get { return WSSecurityPolicy11.WsspNamespace; } } public override bool IsSecurityVersionSupported(MessageSecurityVersion version) { return version == MessageSecurityVersion.WSSecurity10WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10 || version == MessageSecurityVersion.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11 || version == MessageSecurityVersion.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10; } public override MessageSecurityVersion GetSupportedMessageSecurityVersion(SecurityVersion version) { return (version == SecurityVersion.WSSecurity10) ? MessageSecurityVersion.WSSecurity10WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10 : MessageSecurityVersion.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10; } public override TrustDriver TrustDriver { get { return new WSTrustFeb2005.DriverFeb2005(new SecurityStandardsManager(MessageSecurityVersion.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11, WSSecurityTokenSerializer.DefaultInstance)); } } // WS-SecurityPolicy 11 should still use the mssp namespace for MustNotSendCancel public override XmlElement CreateWsspMustNotSendCancelAssertion(bool requireCancel) { if (!requireCancel) { XmlElement result = CreateMsspAssertion(MustNotSendCancelName); return result; } else { return null; } } // WS-SecurityPolicy 11 should still use the mssp namespace for MustNotSendCancel public override bool TryImportWsspMustNotSendCancelAssertion(ICollectionassertions, out bool requireCancellation) { requireCancellation = !TryImportMsspAssertion(assertions, MustNotSendCancelName); return true; } public override XmlElement CreateWsspHttpsTokenAssertion(MetadataExporter exporter, HttpsTransportBindingElement httpsBinding) { XmlElement result = CreateWsspAssertion(HttpsTokenName); result.SetAttribute(RequireClientCertificateName, httpsBinding.RequireClientCertificate ? TrueName : FalseName); return result; } public override bool TryImportWsspHttpsTokenAssertion(MetadataImporter importer, ICollection assertions, HttpsTransportBindingElement httpsBinding) { if (assertions == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("assertions"); } bool result; XmlElement assertion; if (TryImportWsspAssertion(assertions, HttpsTokenName, out assertion)) { result = true; string v = assertion.GetAttribute(RequireClientCertificateName); try { httpsBinding.RequireClientCertificate = XmlUtil.IsTrue(v); } catch (Exception e) { if (DiagnosticUtility.IsFatal(e)) throw; if (e is NullReferenceException) throw; importer.Errors.Add(new MetadataConversionError(SR.GetString(SR.UnsupportedBooleanAttribute, RequireClientCertificateName, e.Message), false)); result = false; } } else { result = false; } return result; } public override XmlElement CreateWsspTrustAssertion(MetadataExporter exporter, SecurityKeyEntropyMode keyEntropyMode) { return CreateWsspTrustAssertion(Trust10Name, exporter, keyEntropyMode); } public override bool TryImportWsspTrustAssertion(MetadataImporter importer, ICollection assertions, SecurityBindingElement binding, out XmlElement assertion) { return TryImportWsspTrustAssertion(Trust10Name, importer, assertions, binding, out assertion); } } } // 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
- HandoffBehavior.cs
- ZipFileInfoCollection.cs
- ClientConvert.cs
- PhysicalFontFamily.cs
- TableLayoutPanelBehavior.cs
- SafeSerializationManager.cs
- TransactionFlowOption.cs
- smtppermission.cs
- DashStyle.cs
- DrawListViewItemEventArgs.cs
- TypeUtils.cs
- MobileTemplatedControlDesigner.cs
- Rectangle.cs
- TextBoxRenderer.cs
- IUnknownConstantAttribute.cs
- ImmutableClientRuntime.cs
- WindowsToolbarAsMenu.cs
- SecurityManager.cs
- WsdlWriter.cs
- TimeoutException.cs
- Inflater.cs
- Rect.cs
- AppDomainFactory.cs
- PartialTrustVisibleAssembliesSection.cs
- ListViewInsertedEventArgs.cs
- OleDbWrapper.cs
- PasswordDeriveBytes.cs
- Buffer.cs
- ContainerUtilities.cs
- Config.cs
- PolyQuadraticBezierSegment.cs
- PathData.cs
- StringToken.cs
- TraceListeners.cs
- AddInAttribute.cs
- Frame.cs
- HostedNamedPipeTransportManager.cs
- _StreamFramer.cs
- CharacterBuffer.cs
- MessageQueue.cs
- UpdatePanelControlTrigger.cs
- ObjectHandle.cs
- LateBoundBitmapDecoder.cs
- DbgUtil.cs
- ErasingStroke.cs
- RIPEMD160.cs
- SapiAttributeParser.cs
- FederatedMessageSecurityOverHttp.cs
- ConditionalAttribute.cs
- BitmapDecoder.cs
- GroupQuery.cs
- Section.cs
- DefaultAssemblyResolver.cs
- BulletedListEventArgs.cs
- DataControlField.cs
- SqlProfileProvider.cs
- RotateTransform3D.cs
- CacheChildrenQuery.cs
- CodeConstructor.cs
- ResourceDictionaryCollection.cs
- CriticalFinalizerObject.cs
- PackagePart.cs
- TraceFilter.cs
- CodeTypeMember.cs
- StringBuilder.cs
- HijriCalendar.cs
- BinaryQueryOperator.cs
- ImageAutomationPeer.cs
- PropertyStore.cs
- TriggerCollection.cs
- BindingMAnagerBase.cs
- OleDbConnectionPoolGroupProviderInfo.cs
- Graphics.cs
- SchemaNamespaceManager.cs
- ChannelListenerBase.cs
- TdsParserStaticMethods.cs
- HttpHandlerActionCollection.cs
- ChildrenQuery.cs
- QualificationDataAttribute.cs
- Crc32.cs
- PngBitmapDecoder.cs
- WebPartTransformer.cs
- SingleObjectCollection.cs
- PresentationTraceSources.cs
- DrawingGroup.cs
- Assert.cs
- ThreadAttributes.cs
- NamedPermissionSet.cs
- ISessionStateStore.cs
- SqlDataSourceTableQuery.cs
- XmlSchemaComplexContent.cs
- EntityContainerEntitySet.cs
- XMLUtil.cs
- FixedSOMElement.cs
- DrawListViewItemEventArgs.cs
- HGlobalSafeHandle.cs
- DefaultHttpHandler.cs
- CriticalExceptions.cs
- RadialGradientBrush.cs
- DetailsViewDeleteEventArgs.cs