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
- SourceLineInfo.cs
- HostedTransportConfigurationBase.cs
- Sentence.cs
- Point.cs
- PrivilegeNotHeldException.cs
- WebSysDisplayNameAttribute.cs
- HttpUnhandledOperationInvoker.cs
- ALinqExpressionVisitor.cs
- TableCellCollection.cs
- Panel.cs
- XmlJsonReader.cs
- BitmapEffectCollection.cs
- PieceDirectory.cs
- AppDomainUnloadedException.cs
- ExpressionQuoter.cs
- oledbmetadatacolumnnames.cs
- RIPEMD160Managed.cs
- BamlMapTable.cs
- DocumentPage.cs
- OutOfProcStateClientManager.cs
- followingquery.cs
- AttributeUsageAttribute.cs
- CallInfo.cs
- httpapplicationstate.cs
- SemaphoreSecurity.cs
- ColumnReorderedEventArgs.cs
- _NetRes.cs
- AppSettingsReader.cs
- SetMemberBinder.cs
- LocatorBase.cs
- IgnoreFileBuildProvider.cs
- CodeRegionDirective.cs
- SystemIcons.cs
- PageBorderless.cs
- NullableLongAverageAggregationOperator.cs
- X509CertificateTrustedIssuerElementCollection.cs
- InlineCollection.cs
- FormattedText.cs
- GridViewRow.cs
- SR.cs
- FactoryMaker.cs
- PreloadHost.cs
- Style.cs
- ILGenerator.cs
- DiscoveryDocumentReference.cs
- RequestUriProcessor.cs
- PropertyPanel.cs
- TypeDescriptorContext.cs
- EntityConnectionStringBuilderItem.cs
- AnnotationHighlightLayer.cs
- CodeArgumentReferenceExpression.cs
- ToolStripDropDownDesigner.cs
- InputLanguageSource.cs
- Pair.cs
- DataColumnCollection.cs
- FrameworkRichTextComposition.cs
- CLSCompliantAttribute.cs
- ClientCultureInfo.cs
- RadioButtonRenderer.cs
- ExecutionScope.cs
- DesignerActionItemCollection.cs
- UrlMappingsModule.cs
- TransactedBatchingBehavior.cs
- DefinitionUpdate.cs
- Int32RectValueSerializer.cs
- RewritingProcessor.cs
- OdbcHandle.cs
- _NTAuthentication.cs
- ValidationErrorEventArgs.cs
- ReflectionTypeLoadException.cs
- XmlException.cs
- METAHEADER.cs
- TextElementEnumerator.cs
- ConstraintConverter.cs
- MetadataArtifactLoaderXmlReaderWrapper.cs
- ExecutedRoutedEventArgs.cs
- HttpCapabilitiesBase.cs
- Table.cs
- XmlSerializer.cs
- TemplatedWizardStep.cs
- SqlBuffer.cs
- Point3DCollectionValueSerializer.cs
- GeneralTransformGroup.cs
- HttpWebRequest.cs
- MetadataSource.cs
- ServiceTimeoutsBehavior.cs
- SoapClientMessage.cs
- DataGridViewButtonCell.cs
- ViewManager.cs
- DBConnection.cs
- SqlCachedBuffer.cs
- EditorZoneDesigner.cs
- DataBinding.cs
- XmlTextAttribute.cs
- ReadWriteControlDesigner.cs
- XmlSchemaObjectCollection.cs
- NumericUpDown.cs
- AnnotationAuthorChangedEventArgs.cs
- User.cs
- InstanceContext.cs