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
- InputLangChangeEvent.cs
- DataObjectMethodAttribute.cs
- InstanceOwner.cs
- ToolTipAutomationPeer.cs
- MethodBuilder.cs
- KeyedPriorityQueue.cs
- LoginUtil.cs
- AuthenticationModulesSection.cs
- StyleCollection.cs
- MessageFormatterConverter.cs
- ListViewSortEventArgs.cs
- Merger.cs
- storepermissionattribute.cs
- MaxValueConverter.cs
- RadioButtonStandardAdapter.cs
- NavigationFailedEventArgs.cs
- StructuredType.cs
- NamespaceExpr.cs
- Accessible.cs
- ArgumentElement.cs
- InternalBufferOverflowException.cs
- EnterpriseServicesHelper.cs
- ToolStripControlHost.cs
- regiisutil.cs
- SqlBooleanMismatchVisitor.cs
- ReliableDuplexSessionChannel.cs
- FirewallWrapper.cs
- x509utils.cs
- SmiXetterAccessMap.cs
- Inflater.cs
- PrtTicket_Public_Simple.cs
- TypeDescriptionProvider.cs
- XamlReader.cs
- TogglePatternIdentifiers.cs
- HwndMouseInputProvider.cs
- SoapAttributeAttribute.cs
- HtmlHistory.cs
- RecommendedAsConfigurableAttribute.cs
- _NetRes.cs
- Line.cs
- MissingManifestResourceException.cs
- PrintEvent.cs
- EmbeddedMailObjectsCollection.cs
- AttributeAction.cs
- PathFigureCollection.cs
- EndpointFilterProvider.cs
- XdrBuilder.cs
- ApplicationManager.cs
- Process.cs
- SecureConversationDriver.cs
- RC2CryptoServiceProvider.cs
- EventLogPermissionEntry.cs
- MoveSizeWinEventHandler.cs
- DataGridViewAutoSizeModeEventArgs.cs
- VSWCFServiceContractGenerator.cs
- NameValuePermission.cs
- SettingsPropertyValue.cs
- ValidationVisibilityAttribute.cs
- UrlMappingsSection.cs
- JsonFormatReaderGenerator.cs
- DataGridCell.cs
- AuthorizationSection.cs
- DBDataPermission.cs
- Decoder.cs
- PartialCachingAttribute.cs
- DetailsViewDeletedEventArgs.cs
- TypeGenericEnumerableViewSchema.cs
- HttpListenerResponse.cs
- XmlWhitespace.cs
- IconConverter.cs
- HostProtectionPermission.cs
- BadImageFormatException.cs
- MemberBinding.cs
- WpfSharedXamlSchemaContext.cs
- MemberMaps.cs
- ListItemsCollectionEditor.cs
- EncryptedData.cs
- PerformanceCounter.cs
- AsynchronousChannel.cs
- OrderPreservingSpoolingTask.cs
- XmlDataDocument.cs
- SystemIPInterfaceStatistics.cs
- HttpListenerResponse.cs
- ThicknessKeyFrameCollection.cs
- SignatureHelper.cs
- ObjectKeyFrameCollection.cs
- StylusButton.cs
- SplitterPanel.cs
- OleServicesContext.cs
- Utility.cs
- MetadataSource.cs
- WindowsProgressbar.cs
- SiteIdentityPermission.cs
- Accessible.cs
- SectionVisual.cs
- SmtpNegotiateAuthenticationModule.cs
- ProcessInfo.cs
- DiscoveryDocumentSearchPattern.cs
- CodeDOMProvider.cs
- PropertyChangedEventManager.cs