Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Security / WSSecurityOneDotOneSendSecurityHeader.cs / 1 / WSSecurityOneDotOneSendSecurityHeader.cs
//---------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Security { using System.Collections.Generic; using System.ServiceModel.Channels; using System.ServiceModel; using System.ServiceModel.Description; using System.Diagnostics; using System.IO; using System.IdentityModel.Tokens; using System.Security.Cryptography; using System.ServiceModel.Security.Tokens; using System.Xml; using System.ServiceModel.Diagnostics; using ISignatureValueSecurityElement = System.IdentityModel.ISignatureValueSecurityElement; sealed class WSSecurityOneDotOneSendSecurityHeader : WSSecurityOneDotZeroSendSecurityHeader { public WSSecurityOneDotOneSendSecurityHeader(Message message, string actor, bool mustUnderstand, bool relay, SecurityStandardsManager standardsManager, SecurityAlgorithmSuite algorithmSuite, MessageDirection direction) : base(message, actor, mustUnderstand, relay, standardsManager, algorithmSuite, direction) { } protected override ISignatureValueSecurityElement[] CreateSignatureConfirmationElements(SignatureConfirmations signatureConfirmations) { if (signatureConfirmations == null || signatureConfirmations.Count == 0) { return null; } ISignatureValueSecurityElement[] result = new ISignatureValueSecurityElement[signatureConfirmations.Count]; for (int i = 0; i < signatureConfirmations.Count; ++i) { byte[] sigValue; bool isEncrypted; signatureConfirmations.GetConfirmation(i, out sigValue, out isEncrypted); result[i] = new SignatureConfirmationElement(this.GenerateId(), sigValue, this.StandardsManager.SecurityVersion); } return result; } protected override EncryptedHeader EncryptHeader(MessageHeader plainTextHeader, SymmetricAlgorithm algorithm, SecurityKeyIdentifier keyIdentifier, MessageVersion version, string id, MemoryStream stream) { EncryptedHeaderXml encryptedHeaderXml = new EncryptedHeaderXml(version); encryptedHeaderXml.SecurityTokenSerializer = this.StandardsManager.SecurityTokenSerializer; encryptedHeaderXml.EncryptionMethod = this.EncryptionAlgorithm; encryptedHeaderXml.EncryptionMethodDictionaryString = this.EncryptionAlgorithmDictionaryString; encryptedHeaderXml.KeyIdentifier = keyIdentifier; encryptedHeaderXml.Id = id; // The Encrypted Headers MustUnderstand, Relay and Actor attributes will always match the // Security Headers value. The values for these on the Encrypted Header and its decrypted // form can be different. encryptedHeaderXml.MustUnderstand = this.MustUnderstand; encryptedHeaderXml.Relay = this.Relay; encryptedHeaderXml.Actor = this.Actor; encryptedHeaderXml.SetUpEncryption(algorithm, stream); return new EncryptedHeader(plainTextHeader, encryptedHeaderXml, EncryptedHeaderXml.ElementName.Value, EncryptedHeaderXml.NamespaceUri.Value, version); } } } // 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
- ProcessHost.cs
- SupportingTokenAuthenticatorSpecification.cs
- Bitmap.cs
- RepeatButtonAutomationPeer.cs
- Helper.cs
- QuadraticBezierSegment.cs
- XMLDiffLoader.cs
- GenericAuthenticationEventArgs.cs
- BrowserDefinition.cs
- AddInStore.cs
- IPAddress.cs
- SystemGatewayIPAddressInformation.cs
- WebPartVerb.cs
- DictionaryTraceRecord.cs
- WebWorkflowRole.cs
- DesignColumnCollection.cs
- DataSvcMapFile.cs
- InvalidDataContractException.cs
- TreeNodeMouseHoverEvent.cs
- PropertyChangedEventManager.cs
- FormViewUpdatedEventArgs.cs
- Point3DCollection.cs
- CodeEventReferenceExpression.cs
- TextPointerBase.cs
- Win32PrintDialog.cs
- BitmapEffectInput.cs
- ObjectConverter.cs
- PipelineModuleStepContainer.cs
- ChannelTerminatedException.cs
- EventLogEntry.cs
- ControlIdConverter.cs
- CheckedPointers.cs
- QueryParameter.cs
- GeneralTransform3DTo2DTo3D.cs
- ViewBox.cs
- UnconditionalPolicy.cs
- EmbeddedObject.cs
- ScheduleChanges.cs
- SpoolingTask.cs
- StatusCommandUI.cs
- HttpContextServiceHost.cs
- SequenceRange.cs
- ThreadPool.cs
- HtmlImageAdapter.cs
- ZoneIdentityPermission.cs
- ConnectionsZone.cs
- DropShadowBitmapEffect.cs
- XmlComment.cs
- DbConnectionPoolOptions.cs
- TimeSpanConverter.cs
- MailDefinition.cs
- CatalogZone.cs
- WebPartConnectionsDisconnectVerb.cs
- CompositeDataBoundControl.cs
- ListViewDeletedEventArgs.cs
- PrimitiveType.cs
- OleDbCommand.cs
- File.cs
- EnlistmentState.cs
- SafeFileHandle.cs
- WebHttpDispatchOperationSelector.cs
- EntityTypeEmitter.cs
- QueryAccessibilityHelpEvent.cs
- ComPlusServiceLoader.cs
- XmlIlGenerator.cs
- ImmutablePropertyDescriptorGridEntry.cs
- DeviceFilterDictionary.cs
- MultiBinding.cs
- XmlNodeChangedEventManager.cs
- BuildManagerHost.cs
- DataGridViewSelectedRowCollection.cs
- TransformedBitmap.cs
- SystemThemeKey.cs
- StreamUpgradeInitiator.cs
- InitializationEventAttribute.cs
- XmlCDATASection.cs
- AuthenticodeSignatureInformation.cs
- FolderLevelBuildProvider.cs
- DesignerCategoryAttribute.cs
- EncryptedData.cs
- FieldDescriptor.cs
- DataContractSerializerOperationGenerator.cs
- ContainerControl.cs
- XmlDocument.cs
- DependencyObjectPropertyDescriptor.cs
- FamilyTypeface.cs
- CultureMapper.cs
- TextOnlyOutput.cs
- ShutDownListener.cs
- NamespaceQuery.cs
- IISMapPath.cs
- ToolBarButton.cs
- AndCondition.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- TreeViewTemplateSelector.cs
- adornercollection.cs
- CreateUserWizardAutoFormat.cs
- NativeMethodsCLR.cs
- IItemContainerGenerator.cs
- MimeFormImporter.cs