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
- MenuCommands.cs
- PositiveTimeSpanValidatorAttribute.cs
- ExpressionBuilderCollection.cs
- SqlConnectionManager.cs
- DateTimeValueSerializerContext.cs
- ProfileService.cs
- SQLDateTimeStorage.cs
- XD.cs
- DSASignatureFormatter.cs
- TableLayoutStyleCollection.cs
- SmtpCommands.cs
- XmlException.cs
- SqlDataReaderSmi.cs
- PeerNameRegistration.cs
- EntityDescriptor.cs
- ToolStripDropDownDesigner.cs
- SchemaNamespaceManager.cs
- PersonalizationProvider.cs
- DefaultAssemblyResolver.cs
- ModuleConfigurationInfo.cs
- sqlpipe.cs
- IriParsingElement.cs
- FormsAuthenticationTicket.cs
- OdbcInfoMessageEvent.cs
- DataGridViewEditingControlShowingEventArgs.cs
- XmlDocumentSerializer.cs
- AsyncCallback.cs
- StringArrayConverter.cs
- DesignRelationCollection.cs
- ObjectListItemCollection.cs
- SchemaMapping.cs
- KeyGestureConverter.cs
- HideDisabledControlAdapter.cs
- EntityCommandCompilationException.cs
- PrintDialog.cs
- SafeRightsManagementEnvironmentHandle.cs
- StructuredProperty.cs
- NotifyInputEventArgs.cs
- _HelperAsyncResults.cs
- GuidelineCollection.cs
- SQLInt16.cs
- NotImplementedException.cs
- SoapServerMessage.cs
- SQLConvert.cs
- DeclaredTypeValidatorAttribute.cs
- PerspectiveCamera.cs
- TypedReference.cs
- ScrollChrome.cs
- SubMenuStyle.cs
- coordinatorscratchpad.cs
- WebConfigurationHost.cs
- SchemaImporterExtensionElement.cs
- Domain.cs
- LinqDataSourceInsertEventArgs.cs
- SharedDp.cs
- ProviderConnectionPoint.cs
- Cursor.cs
- RuleSetDialog.cs
- ContextMenuService.cs
- MarkupCompilePass2.cs
- CompiledAction.cs
- PointAnimationBase.cs
- ReplacementText.cs
- ColumnBinding.cs
- UnmanagedMemoryStream.cs
- RTLAwareMessageBox.cs
- ObjectDataSourceStatusEventArgs.cs
- SqlDataSourceSelectingEventArgs.cs
- CreateBookmarkScope.cs
- ChildTable.cs
- Vector3D.cs
- ConsoleKeyInfo.cs
- NavigationPropertyEmitter.cs
- PropertyDescriptorCollection.cs
- ToolBarPanel.cs
- RemoteWebConfigurationHost.cs
- COM2PropertyBuilderUITypeEditor.cs
- XslTransform.cs
- InkCanvasInnerCanvas.cs
- ToolStripDesignerAvailabilityAttribute.cs
- ColumnHeaderCollectionEditor.cs
- FormatConvertedBitmap.cs
- OSEnvironmentHelper.cs
- TextRunProperties.cs
- ContextMenu.cs
- Bits.cs
- exports.cs
- SoapUnknownHeader.cs
- CompModSwitches.cs
- ToolStripSeparator.cs
- HTTP_SERVICE_CONFIG_URLACL_PARAM.cs
- PointConverter.cs
- EditorPartCollection.cs
- HttpListenerException.cs
- PageAdapter.cs
- JoinTreeSlot.cs
- WeakKeyDictionary.cs
- NegotiateStream.cs
- XmlRawWriterWrapper.cs
- XsltException.cs