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
- _OSSOCK.cs
- XmlMemberMapping.cs
- CodeNamespaceCollection.cs
- FrameSecurityDescriptor.cs
- RichTextBox.cs
- PartialTrustVisibleAssembly.cs
- PageBuildProvider.cs
- MessageQueue.cs
- ExplicitDiscriminatorMap.cs
- Size3DValueSerializer.cs
- WebPartConnectionsCancelEventArgs.cs
- AnimationStorage.cs
- RewritingPass.cs
- ActionItem.cs
- ConfigurationException.cs
- TreeViewAutomationPeer.cs
- OuterGlowBitmapEffect.cs
- ValidationErrorInfo.cs
- LinkLabelLinkClickedEvent.cs
- DecoderNLS.cs
- ConstructorBuilder.cs
- InternalRelationshipCollection.cs
- HttpCacheParams.cs
- ReadOnlyCollection.cs
- SqlDataSourceWizardForm.cs
- DiscoveryVersionConverter.cs
- LogStore.cs
- MatrixAnimationBase.cs
- RichTextBoxContextMenu.cs
- DataRowCollection.cs
- cookie.cs
- ViewService.cs
- ExitEventArgs.cs
- CategoryEditor.cs
- StringToken.cs
- FormViewDeletedEventArgs.cs
- TaskForm.cs
- TCEAdapterGenerator.cs
- coordinatorfactory.cs
- SymLanguageVendor.cs
- CoTaskMemUnicodeSafeHandle.cs
- TickBar.cs
- Parser.cs
- PageTheme.cs
- XmlDocumentFragment.cs
- CompiledQueryCacheEntry.cs
- PropertyRecord.cs
- ObjectParameterCollection.cs
- RuleSettings.cs
- DiscoveryInnerClientAdhocCD1.cs
- TreeNodeConverter.cs
- ComplexBindingPropertiesAttribute.cs
- TriggerAction.cs
- GroupAggregateExpr.cs
- SharedStatics.cs
- TabRenderer.cs
- XPathBinder.cs
- Rfc4050KeyFormatter.cs
- InteropBitmapSource.cs
- Button.cs
- SqlExpressionNullability.cs
- XmlChildEnumerator.cs
- ObjectSecurityT.cs
- ChangeConflicts.cs
- XMLUtil.cs
- TreeNodeCollectionEditor.cs
- streamingZipPartStream.cs
- FacetEnabledSchemaElement.cs
- IPPacketInformation.cs
- ConfigurationValidatorBase.cs
- SqlConnectionManager.cs
- ArgumentOutOfRangeException.cs
- PropertyItemInternal.cs
- securitycriticaldata.cs
- XmlILConstructAnalyzer.cs
- NativeMethodsCLR.cs
- LocalizationComments.cs
- OperationResponse.cs
- TriggerBase.cs
- Menu.cs
- RenderContext.cs
- PointF.cs
- XmlSchemaImporter.cs
- CodeRegionDirective.cs
- dtdvalidator.cs
- SortKey.cs
- ModelUIElement3D.cs
- SqlUnionizer.cs
- ZipIOCentralDirectoryFileHeader.cs
- ToolStripRenderEventArgs.cs
- ObjectNavigationPropertyMapping.cs
- CodeTypeMember.cs
- BinaryFormatterWriter.cs
- BCLDebug.cs
- SystemWebCachingSectionGroup.cs
- SurrogateChar.cs
- CodePrimitiveExpression.cs
- WebBrowserPermission.cs
- DiagnosticsConfigurationHandler.cs
- BaseHashHelper.cs