Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / Tokens / WindowsSecurityToken.cs / 1 / WindowsSecurityToken.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.IdentityModel.Tokens { using System.Collections.Generic; using System.Collections.ObjectModel; using System.Security.Principal; using System.IdentityModel.Claims; using System.IdentityModel.Policy; using System.IdentityModel.Tokens; public class WindowsSecurityToken : SecurityToken, IDisposable { string id; DateTime effectiveTime; DateTime expirationTime; WindowsIdentity windowsIdentity; bool disposed = false; public WindowsSecurityToken(WindowsIdentity windowsIdentity) : this(windowsIdentity, SecurityUniqueId.Create().Value) { } public WindowsSecurityToken(WindowsIdentity windowsIdentity, string id) { DateTime effectiveTime = DateTime.UtcNow; Initialize(id, effectiveTime, DateTime.UtcNow.AddHours(10), windowsIdentity, true); } protected WindowsSecurityToken() { } protected void Initialize(string id, DateTime effectiveTime, DateTime expirationTime, WindowsIdentity windowsIdentity, bool clone) { if (windowsIdentity == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("windowsIdentity"); if (id == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("id"); this.id = id; this.effectiveTime = effectiveTime; this.expirationTime = expirationTime; this.windowsIdentity = clone ? SecurityUtils.CloneWindowsIdentityIfNecessary(windowsIdentity) : windowsIdentity; } public override string Id { get { return this.id; } } public override DateTime ValidFrom { get { return this.effectiveTime; } } public override DateTime ValidTo { get { return this.expirationTime; } } public virtual WindowsIdentity WindowsIdentity { get { ThrowIfDisposed(); return this.windowsIdentity; } } public override ReadOnlyCollectionSecurityKeys { get { return EmptyReadOnlyCollection .Instance; } } public virtual void Dispose() { if (!this.disposed) { this.disposed = true; if (this.windowsIdentity != null) { this.windowsIdentity.Dispose(); this.windowsIdentity = null; } } } protected void ThrowIfDisposed() { if (this.disposed) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ObjectDisposedException(this.GetType().FullName)); } } } } // 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
- ObjectStateFormatter.cs
- RoleProviderPrincipal.cs
- XmlNodeChangedEventArgs.cs
- Rijndael.cs
- QueryExpression.cs
- DataGridPagerStyle.cs
- DBSqlParserTableCollection.cs
- KoreanCalendar.cs
- SpeakCompletedEventArgs.cs
- TreeNodeEventArgs.cs
- XmlDataLoader.cs
- GridViewSelectEventArgs.cs
- Column.cs
- Control.cs
- XmlSchemaAppInfo.cs
- HitTestWithGeometryDrawingContextWalker.cs
- DrawingImage.cs
- SignedXml.cs
- AssemblyHash.cs
- PreProcessInputEventArgs.cs
- CodeIdentifier.cs
- UIElementParagraph.cs
- GridView.cs
- Size.cs
- DockingAttribute.cs
- MetabaseReader.cs
- ConstraintCollection.cs
- GridSplitter.cs
- WindowsHyperlink.cs
- X509ClientCertificateAuthentication.cs
- ResXDataNode.cs
- CopyNodeSetAction.cs
- MailAddress.cs
- TableHeaderCell.cs
- GridViewRowCollection.cs
- TextTreeRootNode.cs
- SectionUpdates.cs
- Ticks.cs
- LinqToSqlWrapper.cs
- XmlIncludeAttribute.cs
- CustomErrorsSection.cs
- PointAnimation.cs
- GlyphInfoList.cs
- HierarchicalDataSourceIDConverter.cs
- SourceChangedEventArgs.cs
- CodeBinaryOperatorExpression.cs
- SystemIPGlobalStatistics.cs
- CorrelationTokenInvalidatedHandler.cs
- SiteMapSection.cs
- Debugger.cs
- PieceDirectory.cs
- BufferModeSettings.cs
- IOThreadScheduler.cs
- InkCanvas.cs
- DataSourceViewSchemaConverter.cs
- BitmapEffect.cs
- HandleRef.cs
- VectorCollection.cs
- GenerateHelper.cs
- Vars.cs
- IsolatedStorageSecurityState.cs
- ColorMap.cs
- SqlServer2KCompatibilityAnnotation.cs
- RectIndependentAnimationStorage.cs
- TextRunCache.cs
- FileIOPermission.cs
- TextAnchor.cs
- CurrentChangingEventManager.cs
- ClaimTypeRequirement.cs
- bidPrivateBase.cs
- ImageAnimator.cs
- NamespaceQuery.cs
- Polygon.cs
- BaseCollection.cs
- CharEnumerator.cs
- XmlSchemaGroupRef.cs
- GenericIdentity.cs
- CommandValueSerializer.cs
- Logging.cs
- SpecularMaterial.cs
- OrderPreservingPipeliningSpoolingTask.cs
- BitmapImage.cs
- DataSourceSelectArguments.cs
- Part.cs
- WindowsTab.cs
- ToolStripPanel.cs
- Transform.cs
- SafeFileHandle.cs
- TableRowGroup.cs
- COM2IPerPropertyBrowsingHandler.cs
- ErrorRuntimeConfig.cs
- MouseButton.cs
- ColorAnimationBase.cs
- PartitionResolver.cs
- PartitionResolver.cs
- HierarchicalDataSourceConverter.cs
- FrameworkElementAutomationPeer.cs
- CompiledQueryCacheKey.cs
- Wildcard.cs
- EntityParameterCollection.cs