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
- DateTimeValueSerializerContext.cs
- SecurityState.cs
- PersonalizationState.cs
- StringReader.cs
- SqlDataSourceView.cs
- KnownTypes.cs
- ConfigXmlText.cs
- FirstMatchCodeGroup.cs
- CorrelationToken.cs
- ObjectItemCollection.cs
- CodeNamespaceImportCollection.cs
- LongMinMaxAggregationOperator.cs
- DoubleIndependentAnimationStorage.cs
- FieldNameLookup.cs
- Converter.cs
- GridViewDeleteEventArgs.cs
- PersonalizationStateQuery.cs
- FileChangesMonitor.cs
- XsltLibrary.cs
- RC2CryptoServiceProvider.cs
- WebConfigurationFileMap.cs
- ChangeTracker.cs
- Vector3DAnimationUsingKeyFrames.cs
- AsymmetricSignatureFormatter.cs
- TextEncodedRawTextWriter.cs
- LoginStatusDesigner.cs
- LongValidatorAttribute.cs
- datacache.cs
- DllNotFoundException.cs
- SelectionEditor.cs
- DebugView.cs
- ObjectSecurityT.cs
- ApplicationException.cs
- BitmapEffectGeneralTransform.cs
- IPEndPointCollection.cs
- OrthographicCamera.cs
- DataGridViewLinkColumn.cs
- CustomTrackingRecord.cs
- DelayedRegex.cs
- ProcessModelInfo.cs
- MessageEncodingBindingElement.cs
- CommonXSendMessage.cs
- WebPartRestoreVerb.cs
- OleDbDataAdapter.cs
- FixedSOMContainer.cs
- DecimalKeyFrameCollection.cs
- RowToParametersTransformer.cs
- TableItemPatternIdentifiers.cs
- MultiBinding.cs
- CalendarDateRangeChangingEventArgs.cs
- CompilerError.cs
- HttpSessionStateWrapper.cs
- TextEditorLists.cs
- ObjectQuery.cs
- MD5.cs
- FormatterServices.cs
- XamlStackWriter.cs
- SByteStorage.cs
- SQLGuid.cs
- UIElementParagraph.cs
- SaveFileDialogDesigner.cs
- FormViewDeletedEventArgs.cs
- ConnectionStringsExpressionBuilder.cs
- PublisherIdentityPermission.cs
- ImageBrush.cs
- XsdDataContractImporter.cs
- ViewKeyConstraint.cs
- ExceptionValidationRule.cs
- translator.cs
- XmlMemberMapping.cs
- LoadedOrUnloadedOperation.cs
- TaskExceptionHolder.cs
- DbQueryCommandTree.cs
- LicenseProviderAttribute.cs
- FormViewPagerRow.cs
- DesignerPerfEventProvider.cs
- StaticDataManager.cs
- ColorBlend.cs
- GuidelineCollection.cs
- StandardToolWindows.cs
- ObjectTokenCategory.cs
- CodeComment.cs
- DbParameterHelper.cs
- ActivityCodeGenerator.cs
- ExpressionsCollectionConverter.cs
- PasswordRecoveryAutoFormat.cs
- BoundField.cs
- Tokenizer.cs
- PerformanceCounterManager.cs
- EdmProviderManifest.cs
- WebPartZoneBase.cs
- Stack.cs
- RegionData.cs
- SizeAnimationUsingKeyFrames.cs
- CommandValueSerializer.cs
- BaseResourcesBuildProvider.cs
- SimpleExpression.cs
- DocumentPageHost.cs
- WebPartConnectVerb.cs
- BindingExpressionUncommonField.cs