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
- BufferedMessageWriter.cs
- SoapAttributeOverrides.cs
- ResourceDisplayNameAttribute.cs
- ToolStripItemCollection.cs
- IUnknownConstantAttribute.cs
- ToolStripPanelDesigner.cs
- Error.cs
- AccessViolationException.cs
- XsdValidatingReader.cs
- ContainerUtilities.cs
- DWriteFactory.cs
- SchemaConstraints.cs
- Connector.cs
- SchemaLookupTable.cs
- PersonalizationAdministration.cs
- Style.cs
- FactoryGenerator.cs
- FreezableOperations.cs
- NumericPagerField.cs
- UserPersonalizationStateInfo.cs
- ObjectItemAssemblyLoader.cs
- Viewport3DAutomationPeer.cs
- BaseValidator.cs
- RowToFieldTransformer.cs
- XmlChildNodes.cs
- SynchronizationValidator.cs
- Activator.cs
- PreservationFileWriter.cs
- SQLString.cs
- ArrayConverter.cs
- IDQuery.cs
- Point.cs
- ConnectionManagementElement.cs
- ContainerVisual.cs
- ToolStripKeyboardHandlingService.cs
- MappingException.cs
- TraversalRequest.cs
- oledbmetadatacollectionnames.cs
- PlatformCulture.cs
- HostVisual.cs
- ComplexBindingPropertiesAttribute.cs
- Container.cs
- UseAttributeSetsAction.cs
- x509utils.cs
- MemberHolder.cs
- PageMediaSize.cs
- SqlRetyper.cs
- WebPartDeleteVerb.cs
- XmlConvert.cs
- CopyAction.cs
- ManualWorkflowSchedulerService.cs
- WebBrowserNavigatingEventHandler.cs
- TileBrush.cs
- ConfigurationSchemaErrors.cs
- CacheDict.cs
- WebPartConnectionsEventArgs.cs
- CodeSubDirectoriesCollection.cs
- ClientSettingsSection.cs
- PersonalizationProvider.cs
- IPEndPointCollection.cs
- AvtEvent.cs
- ConfigUtil.cs
- StrongNameMembershipCondition.cs
- PathParser.cs
- DbParameterHelper.cs
- DefaultEventAttribute.cs
- SelectionList.cs
- PaintValueEventArgs.cs
- DocumentViewerBaseAutomationPeer.cs
- Bidi.cs
- BlurEffect.cs
- MasterPage.cs
- ObjectSet.cs
- WorkflowInvoker.cs
- dataprotectionpermissionattribute.cs
- SRef.cs
- Crypto.cs
- TimerEventSubscription.cs
- ScalarOps.cs
- GlyphsSerializer.cs
- BitmapEffectDrawing.cs
- DispatcherFrame.cs
- DataAccessException.cs
- CommonXSendMessage.cs
- CustomCredentialPolicy.cs
- OrderedDictionaryStateHelper.cs
- WebConfigurationHost.cs
- CodeGen.cs
- MonthChangedEventArgs.cs
- NullableLongMinMaxAggregationOperator.cs
- EmissiveMaterial.cs
- HttpCacheVaryByContentEncodings.cs
- NotifyParentPropertyAttribute.cs
- SchemaConstraints.cs
- XmlSerializationWriter.cs
- _ConnectOverlappedAsyncResult.cs
- CharStorage.cs
- SharedPerformanceCounter.cs
- RTTypeWrapper.cs
- MediaSystem.cs