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
- SafeCertificateStore.cs
- ManagementPath.cs
- EventWaitHandleSecurity.cs
- MetadataAssemblyHelper.cs
- ResourceAttributes.cs
- MULTI_QI.cs
- SqlUserDefinedAggregateAttribute.cs
- XamlToRtfParser.cs
- PolyBezierSegment.cs
- DesignerSerializerAttribute.cs
- AnnotationAuthorChangedEventArgs.cs
- FilterQueryOptionExpression.cs
- ReservationNotFoundException.cs
- ResourceDescriptionAttribute.cs
- Int32EqualityComparer.cs
- StreamHelper.cs
- XamlTreeBuilder.cs
- TextMetrics.cs
- HttpAsyncResult.cs
- ImageDrawing.cs
- InvalidateEvent.cs
- RootBrowserWindow.cs
- SqlDataSourceEnumerator.cs
- KeyFrames.cs
- MissingFieldException.cs
- SerialPort.cs
- CommandDesigner.cs
- DBCSCodePageEncoding.cs
- RecipientServiceModelSecurityTokenRequirement.cs
- XmlEncoding.cs
- RepeatButton.cs
- NullToBooleanConverter.cs
- ComponentEditorForm.cs
- OdbcPermission.cs
- CellTreeNode.cs
- TextElementEditingBehaviorAttribute.cs
- TaiwanLunisolarCalendar.cs
- RemoteCryptoDecryptRequest.cs
- ObjectDataSource.cs
- AnnotationAdorner.cs
- Attributes.cs
- mactripleDES.cs
- RunInstallerAttribute.cs
- XmlSchemaCompilationSettings.cs
- KernelTypeValidation.cs
- SemanticResolver.cs
- ConsoleKeyInfo.cs
- BindableAttribute.cs
- SingleBodyParameterMessageFormatter.cs
- DoubleCollectionConverter.cs
- DiffuseMaterial.cs
- DictionaryKeyPropertyAttribute.cs
- ViewGenResults.cs
- XmlReaderSettings.cs
- HwndSourceParameters.cs
- Module.cs
- DecimalKeyFrameCollection.cs
- XmlSerializerSection.cs
- BitmapEffectDrawingContextState.cs
- Propagator.JoinPropagator.JoinPredicateVisitor.cs
- TTSEvent.cs
- Condition.cs
- XmlnsPrefixAttribute.cs
- SetterBaseCollection.cs
- DbConnectionOptions.cs
- Route.cs
- ControlType.cs
- InvokePattern.cs
- SoapElementAttribute.cs
- SoapHelper.cs
- ProfilePropertyNameValidator.cs
- Label.cs
- SafeEventLogWriteHandle.cs
- WebSysDisplayNameAttribute.cs
- WCFServiceClientProxyGenerator.cs
- TextProperties.cs
- OdbcErrorCollection.cs
- Subtree.cs
- Camera.cs
- NetSectionGroup.cs
- ElementHostPropertyMap.cs
- ObjectDataSourceMethodEventArgs.cs
- FileCodeGroup.cs
- namescope.cs
- XPathSelectionIterator.cs
- FileAuthorizationModule.cs
- sitestring.cs
- DetailsViewInsertEventArgs.cs
- SocketAddress.cs
- DecoderBestFitFallback.cs
- DynamicFilterExpression.cs
- FixedSOMTable.cs
- BitmapEffectDrawingContextWalker.cs
- Substitution.cs
- XsltInput.cs
- FragmentQueryKB.cs
- _CookieModule.cs
- XmlSchemaResource.cs
- EndpointAddressMessageFilterTable.cs
- AutoGeneratedFieldProperties.cs