Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XmlParserContext.cs
- BindUriHelper.cs
- EventLogPermission.cs
- DaylightTime.cs
- X509UI.cs
- CaseInsensitiveOrdinalStringComparer.cs
- HtmlImage.cs
- PassportAuthenticationModule.cs
- TraceUtility.cs
- ServiceAppDomainAssociationProvider.cs
- ContainerUtilities.cs
- Pair.cs
- QuestionEventArgs.cs
- SecurityDocument.cs
- TextRangeSerialization.cs
- WebPartCollection.cs
- UserControl.cs
- DataTableClearEvent.cs
- DataGridViewCellEventArgs.cs
- IncrementalReadDecoders.cs
- MsmqBindingElementBase.cs
- Math.cs
- LinqToSqlWrapper.cs
- _UriTypeConverter.cs
- StickyNoteAnnotations.cs
- RegexFCD.cs
- WeakReferenceList.cs
- DataGridAddNewRow.cs
- AnimatedTypeHelpers.cs
- MailWebEventProvider.cs
- RawTextInputReport.cs
- ToolStripPanelRow.cs
- Size.cs
- MexBindingBindingCollectionElement.cs
- DeferredElementTreeState.cs
- Object.cs
- StringToken.cs
- SmiGettersStream.cs
- AttributeAction.cs
- CngProperty.cs
- HandleRef.cs
- SymbolDocumentGenerator.cs
- AlignmentYValidation.cs
- AutomationIdentifier.cs
- IdnElement.cs
- _NativeSSPI.cs
- TreeIterator.cs
- FixedSOMImage.cs
- ListViewCommandEventArgs.cs
- DiscoveryViaBehavior.cs
- Permission.cs
- Geometry.cs
- HttpHostedTransportConfiguration.cs
- ImageSource.cs
- AuthenticationSection.cs
- Int32.cs
- DockProviderWrapper.cs
- ISAPIRuntime.cs
- XmlDictionaryReaderQuotasElement.cs
- ContextInformation.cs
- UnsafeNativeMethods.cs
- KoreanLunisolarCalendar.cs
- ObjectTag.cs
- WindowManager.cs
- SafeBitVector32.cs
- FlowDocumentPageViewerAutomationPeer.cs
- Root.cs
- ListCommandEventArgs.cs
- Trace.cs
- CustomErrorCollection.cs
- UrlMapping.cs
- GlyphTypeface.cs
- PropertyGridCommands.cs
- Mapping.cs
- IItemContainerGenerator.cs
- ParamArrayAttribute.cs
- TraceData.cs
- ConstructorNeedsTagAttribute.cs
- Stack.cs
- tooltip.cs
- BooleanSwitch.cs
- DescendentsWalker.cs
- _Events.cs
- ClientTargetSection.cs
- WebConfigurationManager.cs
- keycontainerpermission.cs
- GridPattern.cs
- ProxyElement.cs
- LambdaSerializationException.cs
- DataControlHelper.cs
- AttachedPropertiesService.cs
- WmlPageAdapter.cs
- KeyNotFoundException.cs
- App.cs
- SoapException.cs
- IPipelineRuntime.cs
- XPathExpr.cs
- JoinCqlBlock.cs
- HtmlInputText.cs
- Hyperlink.cs