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
- ApplicationInfo.cs
- XslCompiledTransform.cs
- AutomationPropertyInfo.cs
- CqlBlock.cs
- ControlPropertyNameConverter.cs
- ComboBoxRenderer.cs
- UnsafeNativeMethods.cs
- TokenFactoryFactory.cs
- PointAnimationUsingKeyFrames.cs
- StoreContentChangedEventArgs.cs
- AutomationPatternInfo.cs
- DragEventArgs.cs
- PrintPreviewGraphics.cs
- WebException.cs
- ProfileParameter.cs
- SchemaNames.cs
- OpenTypeLayout.cs
- streamingZipPartStream.cs
- DataSourceDesigner.cs
- UpDownEvent.cs
- StyleTypedPropertyAttribute.cs
- RecordsAffectedEventArgs.cs
- Bits.cs
- FileVersionInfo.cs
- WebZone.cs
- oledbmetadatacollectionnames.cs
- CodeRegionDirective.cs
- ResourceManagerWrapper.cs
- User.cs
- GridErrorDlg.cs
- WindowsAltTab.cs
- OletxDependentTransaction.cs
- StaticResourceExtension.cs
- HighContrastHelper.cs
- TreeViewHitTestInfo.cs
- ThreadAttributes.cs
- TraceListeners.cs
- UtilityExtension.cs
- EntitySet.cs
- AssociatedControlConverter.cs
- SafeHandles.cs
- RichTextBox.cs
- SchemaContext.cs
- RelatedView.cs
- SqlTrackingWorkflowInstance.cs
- CachedPathData.cs
- WorkflowRequestContext.cs
- StorageConditionPropertyMapping.cs
- WindowsGraphicsCacheManager.cs
- PersonalizationState.cs
- ObjectListDataBindEventArgs.cs
- oledbmetadatacollectionnames.cs
- OdbcStatementHandle.cs
- XmlAttributeOverrides.cs
- EditorServiceContext.cs
- DataTemplateSelector.cs
- EndCreateSecurityTokenRequest.cs
- DataGridColumn.cs
- WaitingCursor.cs
- Evaluator.cs
- ConfigurationSectionCollection.cs
- BindStream.cs
- _DynamicWinsockMethods.cs
- WindowPattern.cs
- LinkLabelLinkClickedEvent.cs
- MouseWheelEventArgs.cs
- Validator.cs
- DataRowView.cs
- AttributeSetAction.cs
- QilGeneratorEnv.cs
- SolidColorBrush.cs
- SiteMapNode.cs
- HandleExceptionArgs.cs
- ToolStripActionList.cs
- AxisAngleRotation3D.cs
- TraceUtility.cs
- ACE.cs
- IfAction.cs
- EncodingTable.cs
- SignedPkcs7.cs
- UpdateExpressionVisitor.cs
- StyleBamlTreeBuilder.cs
- DirectoryObjectSecurity.cs
- CompilationUtil.cs
- ClientSideQueueItem.cs
- SqlDataSourceConfigureSortForm.cs
- TextEmbeddedObject.cs
- EllipticalNodeOperations.cs
- AddInProcess.cs
- ColorDialog.cs
- SpecialNameAttribute.cs
- ListSortDescriptionCollection.cs
- SoapIncludeAttribute.cs
- HiddenField.cs
- InfoCardAsymmetricCrypto.cs
- RegexCharClass.cs
- EventMappingSettings.cs
- ContainerFilterService.cs
- QilLiteral.cs
- ConfigurationLocationCollection.cs