Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / EnvelopedSignatureTransform.cs / 1305376 / EnvelopedSignatureTransform.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.IdentityModel { using System.Xml; using System.Security.Cryptography; sealed class EnvelopedSignatureTransform : Transform { string prefix = XmlSignatureStrings.Prefix; public EnvelopedSignatureTransform() { } public override string Algorithm { get { return XD.XmlSignatureDictionary.EnvelopedSignature.Value; } } public override object Process(object input, SignatureResourcePool resourcePool, DictionaryManager dictionaryManager) { XmlTokenStream tokenStream = input as XmlTokenStream; if (tokenStream != null) { tokenStream.SetElementExclusion(XmlSignatureStrings.Signature, XmlSignatureStrings.Namespace); return tokenStream; } throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotSupportedException(SR.GetString(SR.UnsupportedInputTypeForTransform, input.GetType()))); } // this transform is not allowed as the last one in a chain public override byte[] ProcessAndDigest(object input, SignatureResourcePool resourcePool, string digestAlgorithm, DictionaryManager dictionaryManager) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotSupportedException(SR.GetString(SR.UnsupportedLastTransform))); } public override void ReadFrom(XmlDictionaryReader reader, DictionaryManager dictionaryManager) { reader.MoveToContent(); string algorithm = XmlHelper.ReadEmptyElementAndRequiredAttribute(reader, dictionaryManager.XmlSignatureDictionary.Transform, dictionaryManager.XmlSignatureDictionary.Namespace, dictionaryManager.XmlSignatureDictionary.Algorithm, out this.prefix); if (algorithm != this.Algorithm) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new CryptographicException(SR.GetString(SR.AlgorithmMismatchForTransform))); } } public override void WriteTo(XmlDictionaryWriter writer, DictionaryManager dictionaryManager) { writer.WriteStartElement(this.prefix, dictionaryManager.XmlSignatureDictionary.Transform, dictionaryManager.XmlSignatureDictionary.Namespace); writer.WriteAttributeString(dictionaryManager.XmlSignatureDictionary.Algorithm, null, this.Algorithm); writer.WriteEndElement(); // Transform } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.IdentityModel { using System.Xml; using System.Security.Cryptography; sealed class EnvelopedSignatureTransform : Transform { string prefix = XmlSignatureStrings.Prefix; public EnvelopedSignatureTransform() { } public override string Algorithm { get { return XD.XmlSignatureDictionary.EnvelopedSignature.Value; } } public override object Process(object input, SignatureResourcePool resourcePool, DictionaryManager dictionaryManager) { XmlTokenStream tokenStream = input as XmlTokenStream; if (tokenStream != null) { tokenStream.SetElementExclusion(XmlSignatureStrings.Signature, XmlSignatureStrings.Namespace); return tokenStream; } throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotSupportedException(SR.GetString(SR.UnsupportedInputTypeForTransform, input.GetType()))); } // this transform is not allowed as the last one in a chain public override byte[] ProcessAndDigest(object input, SignatureResourcePool resourcePool, string digestAlgorithm, DictionaryManager dictionaryManager) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotSupportedException(SR.GetString(SR.UnsupportedLastTransform))); } public override void ReadFrom(XmlDictionaryReader reader, DictionaryManager dictionaryManager) { reader.MoveToContent(); string algorithm = XmlHelper.ReadEmptyElementAndRequiredAttribute(reader, dictionaryManager.XmlSignatureDictionary.Transform, dictionaryManager.XmlSignatureDictionary.Namespace, dictionaryManager.XmlSignatureDictionary.Algorithm, out this.prefix); if (algorithm != this.Algorithm) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new CryptographicException(SR.GetString(SR.AlgorithmMismatchForTransform))); } } public override void WriteTo(XmlDictionaryWriter writer, DictionaryManager dictionaryManager) { writer.WriteStartElement(this.prefix, dictionaryManager.XmlSignatureDictionary.Transform, dictionaryManager.XmlSignatureDictionary.Namespace); writer.WriteAttributeString(dictionaryManager.XmlSignatureDictionary.Algorithm, null, this.Algorithm); writer.WriteEndElement(); // Transform } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DiscoveryOperationContextExtension.cs
- SingleAnimationUsingKeyFrames.cs
- MessageQueueKey.cs
- SystemSounds.cs
- HotSpotCollection.cs
- SqlServer2KCompatibilityCheck.cs
- DiscoveryProxy.cs
- BoundPropertyEntry.cs
- FontSizeConverter.cs
- Documentation.cs
- ContainerParaClient.cs
- XhtmlBasicValidatorAdapter.cs
- SoapElementAttribute.cs
- TeredoHelper.cs
- CounterSample.cs
- FrameworkElementFactory.cs
- GeneratedContractType.cs
- ReadContentAsBinaryHelper.cs
- ObjectDataSourceFilteringEventArgs.cs
- ContactManager.cs
- QilCloneVisitor.cs
- HttpDigestClientCredential.cs
- ZoneMembershipCondition.cs
- TextParagraphProperties.cs
- MSG.cs
- SelectionPatternIdentifiers.cs
- TempFiles.cs
- TextDecorationLocationValidation.cs
- CmsInterop.cs
- Label.cs
- SafeSystemMetrics.cs
- HwndSourceKeyboardInputSite.cs
- SocketInformation.cs
- QueryAccessibilityHelpEvent.cs
- ClassDataContract.cs
- AlternateView.cs
- XmlWhitespace.cs
- EntityClassGenerator.cs
- ImageDesigner.cs
- SiteMapNodeCollection.cs
- FixedPageProcessor.cs
- ButtonBaseAutomationPeer.cs
- autovalidator.cs
- DrawingState.cs
- LinqTreeNodeEvaluator.cs
- PageParserFilter.cs
- ReadOnlyNameValueCollection.cs
- BasicExpandProvider.cs
- ValidatingReaderNodeData.cs
- IChannel.cs
- ContainsRowNumberChecker.cs
- EventLogInformation.cs
- DCSafeHandle.cs
- DateTimeConstantAttribute.cs
- _Semaphore.cs
- GridViewHeaderRowPresenterAutomationPeer.cs
- OleDbRowUpdatingEvent.cs
- PrimarySelectionGlyph.cs
- RefExpr.cs
- IChannel.cs
- ServiceManagerHandle.cs
- PipeConnection.cs
- SqlDataSourceCommandEventArgs.cs
- WsdlBuildProvider.cs
- Errors.cs
- DataControlFieldHeaderCell.cs
- ellipse.cs
- Utils.cs
- ChangeTracker.cs
- BeginCreateSecurityTokenRequest.cs
- SqlBinder.cs
- ExpressionDumper.cs
- PersistenceException.cs
- WbmpConverter.cs
- DetailsViewRow.cs
- IRCollection.cs
- SmtpSection.cs
- MessagePropertyFilter.cs
- ContainerParagraph.cs
- AssemblyName.cs
- PersistenceContextEnlistment.cs
- NamespaceCollection.cs
- RemoteArgument.cs
- ThreadPoolTaskScheduler.cs
- SqlResolver.cs
- LassoHelper.cs
- ItemCheckedEvent.cs
- TriState.cs
- FunctionImportMapping.cs
- RadioButton.cs
- ExpressionVisitor.cs
- SystemColors.cs
- FileRecordSequenceHelper.cs
- KeyboardDevice.cs
- InvalidDocumentContentsException.cs
- ParserStreamGeometryContext.cs
- StateMachineSubscription.cs
- GridViewSelectEventArgs.cs
- DataGridViewRow.cs
- DataGridViewTextBoxCell.cs