Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / infocard / Service / managed / Microsoft / InfoCards / RSATokenProvider.cs / 1 / RSATokenProvider.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- // // Presharp uses the c# pragma mechanism to supress its warnings. // These are not recognised by the base compiler so we need to explictly // disable the following warnings. See http://winweb/cse/Tools/PREsharp/userguide/default.asp // for details. // #pragma warning disable 1634, 1691 // unknown message, unknown pragma namespace Microsoft.InfoCards { using System; using System.IdentityModel.Selectors; using System.IdentityModel.Tokens; using System.ServiceModel; using System.ServiceModel.Security; using System.ServiceModel.Security.Tokens; using System.Runtime.InteropServices; using System.Security.Cryptography; using System.IdentityModel; using System.Security.Cryptography.Xml; using IDT = Microsoft.InfoCards.Diagnostics.InfoCardTrace; using System.Collections.ObjectModel; using System.Collections.Generic; // // This class is used to provide a custom token provider for adding an endorsing signature token to the RST // message sent to a managed card STS. The endorsing signature must be added if the UseKey field is present // in the RST. // internal class RSATokenProvider : SecurityTokenProvider, IDisposable { InfoCardPolicy m_policy; InfoCard m_card; SelfIssuedAuthProofToken m_RSAToken; public RSATokenProvider( InfoCardPolicy policy, InfoCard card ) { IDT.ThrowInvalidArgumentConditional( null == policy, "policy" ); IDT.ThrowInvalidArgumentConditional( null == card, "card" ); m_policy = policy; m_card = card; } public void Dispose() { // // We must dispose this token explicitly. // if ( null != m_RSAToken ) { m_RSAToken.Dispose(); m_RSAToken = null; } } // // Summary // Retrieves a token from the system // // Parameters // timeout - The time span till the call times out // // Returns // The security token. // protected override SecurityToken GetTokenCore(TimeSpan timeout) { if( null == m_RSAToken ) { // // The SelfIssuedAuthProofToken should be renamed. In this case it's just acting as a generic // wrapper for an RSA key. // m_RSAToken = new SelfIssuedAuthProofToken( m_card.GetPrivateCryptography( m_policy.Recipient.GetIdentifier() ), DateTime.UtcNow + timeout ); } return m_RSAToken; } } } // 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
- DeferredSelectedIndexReference.cs
- GenericUriParser.cs
- ObjectPersistData.cs
- TraceContextEventArgs.cs
- XmlSchemas.cs
- MinimizableAttributeTypeConverter.cs
- ReferentialConstraint.cs
- Int32Collection.cs
- SymLanguageType.cs
- DirectoryInfo.cs
- SqlConnectionHelper.cs
- SchemaNamespaceManager.cs
- WebPartMenuStyle.cs
- PipelineModuleStepContainer.cs
- UserControlBuildProvider.cs
- DataGridViewSortCompareEventArgs.cs
- WebPartUserCapability.cs
- ConfigurationStrings.cs
- XmlSerializerVersionAttribute.cs
- Decorator.cs
- Mouse.cs
- TypeUtil.cs
- JulianCalendar.cs
- DiagnosticTraceSource.cs
- DynamicRendererThreadManager.cs
- DefaultBindingPropertyAttribute.cs
- StylusPointPropertyInfo.cs
- CodeAttachEventStatement.cs
- XPathNavigator.cs
- InplaceBitmapMetadataWriter.cs
- StyleModeStack.cs
- WindowsScrollBarBits.cs
- HostUtils.cs
- LinkDescriptor.cs
- PreProcessor.cs
- WindowsHyperlink.cs
- Int32Collection.cs
- ConfigurationManagerHelperFactory.cs
- XmlSerializerAssemblyAttribute.cs
- BitStack.cs
- Attributes.cs
- XPathNodePointer.cs
- SqlRowUpdatingEvent.cs
- SafeThemeHandle.cs
- DotExpr.cs
- DiagnosticEventProvider.cs
- StaticTextPointer.cs
- DynamicMetaObjectBinder.cs
- TypeConverterAttribute.cs
- HtmlEncodedRawTextWriter.cs
- LabelAutomationPeer.cs
- XsltQilFactory.cs
- ArgumentValueSerializer.cs
- InvalidOleVariantTypeException.cs
- ResourceDisplayNameAttribute.cs
- EncodedStreamFactory.cs
- QueuedDeliveryRequirementsMode.cs
- URIFormatException.cs
- HttpException.cs
- TypedAsyncResult.cs
- Color.cs
- TrailingSpaceComparer.cs
- Vector3DConverter.cs
- SQLChars.cs
- CngKeyCreationParameters.cs
- VisualBrush.cs
- SafeEventLogWriteHandle.cs
- httpapplicationstate.cs
- OdbcConnectionString.cs
- IndentTextWriter.cs
- PageBuildProvider.cs
- XmlHierarchicalDataSourceView.cs
- WebZone.cs
- SelectorAutomationPeer.cs
- IProducerConsumerCollection.cs
- MappingModelBuildProvider.cs
- Soap12ServerProtocol.cs
- WebServiceReceiveDesigner.cs
- ZipPackagePart.cs
- TextRenderer.cs
- util.cs
- ScriptingSectionGroup.cs
- RangeValidator.cs
- CancellableEnumerable.cs
- BufferedStream.cs
- CTreeGenerator.cs
- QuinticEase.cs
- Compiler.cs
- WinInet.cs
- SystemIPGlobalStatistics.cs
- ContainerVisual.cs
- CryptoKeySecurity.cs
- NavigationEventArgs.cs
- ServiceObjectContainer.cs
- DESCryptoServiceProvider.cs
- StatusBarPanelClickEvent.cs
- DocumentReferenceCollection.cs
- PointLight.cs
- RoutedEventConverter.cs
- ScriptHandlerFactory.cs