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
- ResourcesBuildProvider.cs
- Image.cs
- EncryptedData.cs
- SqlFactory.cs
- CultureSpecificCharacterBufferRange.cs
- Camera.cs
- SQLUtility.cs
- RangeExpression.cs
- Unit.cs
- DataGridViewSelectedCellCollection.cs
- BrushValueSerializer.cs
- CollectionType.cs
- EnterpriseServicesHelper.cs
- ItemsChangedEventArgs.cs
- GlyphTypeface.cs
- TokenCreationException.cs
- ProxyWebPartManagerDesigner.cs
- Blend.cs
- PopupRoot.cs
- GenericTextProperties.cs
- SiteMap.cs
- PreservationFileWriter.cs
- TrackingCondition.cs
- SmiEventSink.cs
- CngAlgorithmGroup.cs
- WorkflowHostingEndpoint.cs
- ExceptionDetail.cs
- WindowsRebar.cs
- ReflectEventDescriptor.cs
- HtmlInputSubmit.cs
- RewritingSimplifier.cs
- ProbeDuplexCD1AsyncResult.cs
- CheckBoxStandardAdapter.cs
- Int32RectValueSerializer.cs
- XmlStringTable.cs
- PersonalizableTypeEntry.cs
- CryptoProvider.cs
- BitmapEditor.cs
- XmlWrappingReader.cs
- CodeGroup.cs
- ItemsPresenter.cs
- TableRow.cs
- ProofTokenCryptoHandle.cs
- ListSortDescriptionCollection.cs
- MessageAction.cs
- SinglePageViewer.cs
- ButtonFlatAdapter.cs
- DataObjectEventArgs.cs
- ElementNotAvailableException.cs
- PrintPreviewDialog.cs
- TableAdapterManagerNameHandler.cs
- DataGridViewComboBoxColumn.cs
- CompiledRegexRunnerFactory.cs
- TextPointerBase.cs
- Timer.cs
- MarshalByValueComponent.cs
- ZipIOExtraField.cs
- PerformanceCounterPermission.cs
- WebHttpDispatchOperationSelector.cs
- DataColumnChangeEvent.cs
- EditCommandColumn.cs
- SqlBulkCopy.cs
- ImageAttributes.cs
- SspiHelper.cs
- TreeBuilderBamlTranslator.cs
- CustomError.cs
- TreeWalkHelper.cs
- SharedPerformanceCounter.cs
- ReceiveMessageContent.cs
- Scene3D.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- InfocardClientCredentials.cs
- OracleRowUpdatedEventArgs.cs
- ProfileParameter.cs
- ProjectionPath.cs
- IListConverters.cs
- MergeFilterQuery.cs
- RadioButtonFlatAdapter.cs
- LogStream.cs
- SkewTransform.cs
- RubberbandSelector.cs
- MetroSerializationManager.cs
- PrintPreviewControl.cs
- KeyToListMap.cs
- PersistenceException.cs
- NCryptSafeHandles.cs
- UriWriter.cs
- UidManager.cs
- BulletedList.cs
- Console.cs
- XmlSchemaAttributeGroup.cs
- SqlNotificationEventArgs.cs
- ExtenderProvidedPropertyAttribute.cs
- RouteItem.cs
- IgnoreSectionHandler.cs
- SqlDataSourceTableQuery.cs
- FastEncoder.cs
- DesignerForm.cs
- ComponentChangingEvent.cs
- shaper.cs