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
- TextFindEngine.cs
- OperationInvokerBehavior.cs
- CurrencyWrapper.cs
- ConfigXmlSignificantWhitespace.cs
- PageHandlerFactory.cs
- SocketInformation.cs
- BindingWorker.cs
- JavascriptCallbackBehaviorAttribute.cs
- ListBase.cs
- _BufferOffsetSize.cs
- AssemblyAttributes.cs
- XmlRawWriterWrapper.cs
- DesignerHierarchicalDataSourceView.cs
- GridViewCommandEventArgs.cs
- CheckBoxField.cs
- WebBrowserBase.cs
- ObjectRef.cs
- SQLDoubleStorage.cs
- SafeEventLogReadHandle.cs
- BrowserCapabilitiesCompiler.cs
- CommandBindingCollection.cs
- OleDbConnection.cs
- XamlNamespaceHelper.cs
- CacheSection.cs
- Tile.cs
- TransactionFlowBindingElement.cs
- SortableBindingList.cs
- HMACMD5.cs
- WizardStepCollectionEditor.cs
- IsolatedStorageException.cs
- Panel.cs
- WmlLiteralTextAdapter.cs
- ObjectDataSourceStatusEventArgs.cs
- FtpWebRequest.cs
- ToolboxItemFilterAttribute.cs
- OwnerDrawPropertyBag.cs
- ResizeGrip.cs
- TextSelectionHighlightLayer.cs
- mediaeventshelper.cs
- Crypto.cs
- ObjectDataSourceView.cs
- UserControl.cs
- OrCondition.cs
- OleDbWrapper.cs
- DispatchChannelSink.cs
- FixedTextSelectionProcessor.cs
- ManagedWndProcTracker.cs
- XmlCharCheckingWriter.cs
- SortDescriptionCollection.cs
- DataGridPagingPage.cs
- MachineKeySection.cs
- CompiledAction.cs
- HttpModuleAction.cs
- InfoCardServiceInstallComponent.cs
- ProxyDataContractResolver.cs
- SerialPinChanges.cs
- VisualStyleRenderer.cs
- ProfileSettingsCollection.cs
- Profiler.cs
- WhitespaceRule.cs
- DeclaredTypeElement.cs
- TreeNodeCollection.cs
- DesignerEditorPartChrome.cs
- ViewBox.cs
- CommandHelpers.cs
- TypeDescriptionProviderAttribute.cs
- WebServiceEnumData.cs
- ColorConvertedBitmapExtension.cs
- ObservableCollectionDefaultValueFactory.cs
- TemplateKey.cs
- EdmItemError.cs
- RoleManagerEventArgs.cs
- LinearGradientBrush.cs
- ValidationEventArgs.cs
- IsolatedStoragePermission.cs
- XmlSchemaSimpleContent.cs
- AsymmetricSecurityProtocolFactory.cs
- BooleanSwitch.cs
- TextShapeableCharacters.cs
- Monitor.cs
- CompiledELinqQueryState.cs
- MultiSelectRootGridEntry.cs
- SpecialFolderEnumConverter.cs
- AtomPub10ServiceDocumentFormatter.cs
- ClientTargetSection.cs
- VSWCFServiceContractGenerator.cs
- MatrixStack.cs
- SystemTcpStatistics.cs
- StateRuntime.cs
- BinHexEncoder.cs
- CompiledRegexRunner.cs
- MethodMessage.cs
- DataControlFieldHeaderCell.cs
- X509ThumbprintKeyIdentifierClause.cs
- CommonXSendMessage.cs
- ProfileGroupSettings.cs
- SQLMoney.cs
- TypeInfo.cs
- ToolStripRenderer.cs
- UnionExpr.cs