Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / infocard / Client / System / IdentityModel / Selectors / InfoCardProofToken.cs / 1305376 / InfoCardProofToken.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.IdentityModel.Selectors { using System; using System.IdentityModel.Tokens; using System.IdentityModel.Policy; using System.IdentityModel.Claims; using System.Collections.Generic; using System.Collections.ObjectModel; // // Summary: // This class implements a SecurityToken to wrap a remoted crypto key. It provides indirect // access to the private proof key associated with a released token. // internal class InfoCardProofToken : SecurityToken, IDisposable { string m_id; DateTime m_expiration; ReadOnlyCollectionm_securityKeys; SecurityKey m_securityKey; public InfoCardProofToken( AsymmetricCryptoHandle cryptoHandle, DateTime expiration ) : this( expiration ) { InitCrypto( new InfoCardAsymmetricCrypto( cryptoHandle ) ); } public InfoCardProofToken( SymmetricCryptoHandle cryptoHandle, DateTime expiration ) : this( expiration ) { InitCrypto( new InfoCardSymmetricCrypto( cryptoHandle ) ); } private InfoCardProofToken( DateTime expiration ) : base() { m_id = Guid.NewGuid().ToString(); m_expiration = expiration.ToUniversalTime(); } public override string Id { get { return m_id; } } public override ReadOnlyCollection SecurityKeys { get { return m_securityKeys; } } public override DateTime ValidTo { get { return m_expiration; } } public override DateTime ValidFrom { get { return DateTime.UtcNow; } } private void InitCrypto(SecurityKey securityKey) { m_securityKey = securityKey; List securityKeys = new List (1); securityKeys.Add(securityKey); m_securityKeys = securityKeys.AsReadOnly(); } public void Dispose() { m_securityKeys = null; ((IDisposable)m_securityKey).Dispose(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.IdentityModel.Selectors { using System; using System.IdentityModel.Tokens; using System.IdentityModel.Policy; using System.IdentityModel.Claims; using System.Collections.Generic; using System.Collections.ObjectModel; // // Summary: // This class implements a SecurityToken to wrap a remoted crypto key. It provides indirect // access to the private proof key associated with a released token. // internal class InfoCardProofToken : SecurityToken, IDisposable { string m_id; DateTime m_expiration; ReadOnlyCollection m_securityKeys; SecurityKey m_securityKey; public InfoCardProofToken( AsymmetricCryptoHandle cryptoHandle, DateTime expiration ) : this( expiration ) { InitCrypto( new InfoCardAsymmetricCrypto( cryptoHandle ) ); } public InfoCardProofToken( SymmetricCryptoHandle cryptoHandle, DateTime expiration ) : this( expiration ) { InitCrypto( new InfoCardSymmetricCrypto( cryptoHandle ) ); } private InfoCardProofToken( DateTime expiration ) : base() { m_id = Guid.NewGuid().ToString(); m_expiration = expiration.ToUniversalTime(); } public override string Id { get { return m_id; } } public override ReadOnlyCollection SecurityKeys { get { return m_securityKeys; } } public override DateTime ValidTo { get { return m_expiration; } } public override DateTime ValidFrom { get { return DateTime.UtcNow; } } private void InitCrypto(SecurityKey securityKey) { m_securityKey = securityKey; List securityKeys = new List (1); securityKeys.Add(securityKey); m_securityKeys = securityKeys.AsReadOnly(); } public void Dispose() { m_securityKeys = null; ((IDisposable)m_securityKey).Dispose(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TimeIntervalCollection.cs
- odbcmetadatacolumnnames.cs
- RelativeSource.cs
- StickyNoteAnnotations.cs
- SynchronizedDispatch.cs
- OleTxTransaction.cs
- ComboBox.cs
- DataSourceProvider.cs
- HttpCookiesSection.cs
- MessageLogTraceRecord.cs
- HttpWebResponse.cs
- CurrentChangingEventManager.cs
- NavigationWindowAutomationPeer.cs
- CacheSection.cs
- Vector.cs
- Light.cs
- XamlReaderHelper.cs
- UnsafeNativeMethods.cs
- DataPagerField.cs
- CallSiteHelpers.cs
- CodeNamespaceImportCollection.cs
- DesignTimeTemplateParser.cs
- ClientTargetSection.cs
- OutputWindow.cs
- MultiDataTrigger.cs
- _AutoWebProxyScriptWrapper.cs
- BindToObject.cs
- QueryCursorEventArgs.cs
- RoleService.cs
- Control.cs
- EdgeProfileValidation.cs
- InfoCardCryptoHelper.cs
- sortedlist.cs
- TextRunProperties.cs
- Animatable.cs
- ExternalCalls.cs
- DataGridSortCommandEventArgs.cs
- BehaviorEditorPart.cs
- OpenTypeLayoutCache.cs
- ImageInfo.cs
- XPathNodeIterator.cs
- RedistVersionInfo.cs
- CursorConverter.cs
- SuppressIldasmAttribute.cs
- EventLogException.cs
- IConvertible.cs
- FixedTextSelectionProcessor.cs
- BlockingCollection.cs
- CompressedStack.cs
- DependencyObjectPropertyDescriptor.cs
- newitemfactory.cs
- LookupNode.cs
- SemaphoreSecurity.cs
- TextBox.cs
- CompModSwitches.cs
- SizeConverter.cs
- BitVector32.cs
- CodeDOMProvider.cs
- ToolStripRendererSwitcher.cs
- ThrowHelper.cs
- FunctionImportElement.cs
- SoapReflectionImporter.cs
- wpf-etw.cs
- ReadOnlyDictionary.cs
- DoubleLinkListEnumerator.cs
- ScrollEventArgs.cs
- CodeChecksumPragma.cs
- Message.cs
- XmlTextAttribute.cs
- HuffModule.cs
- ClientBuildManager.cs
- AnimationTimeline.cs
- HiddenFieldPageStatePersister.cs
- LinearKeyFrames.cs
- SiteMembershipCondition.cs
- DoubleLinkListEnumerator.cs
- Mouse.cs
- JavaScriptSerializer.cs
- SamlAuthorizationDecisionClaimResource.cs
- HttpResponseInternalWrapper.cs
- SqlCacheDependencySection.cs
- BamlBinaryReader.cs
- ConsoleTraceListener.cs
- OperandQuery.cs
- BaseAsyncResult.cs
- BooleanProjectedSlot.cs
- DataTemplateKey.cs
- ToolStripOverflowButton.cs
- SizeConverter.cs
- ObjectAnimationBase.cs
- AutomationIdentifierGuids.cs
- ListCollectionView.cs
- ISFTagAndGuidCache.cs
- AddingNewEventArgs.cs
- XmlSerializerVersionAttribute.cs
- TextBoxLine.cs
- SuppressIldasmAttribute.cs
- SQLDateTime.cs
- DateRangeEvent.cs
- DebugHandleTracker.cs