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
- RegexCompilationInfo.cs
- VisualTreeHelper.cs
- GraphicsContainer.cs
- CheckBox.cs
- ServiceActivationException.cs
- _LoggingObject.cs
- ListCollectionView.cs
- BufferAllocator.cs
- DefaultExpression.cs
- SchemaElementDecl.cs
- FigureParaClient.cs
- DynamicILGenerator.cs
- HostSecurityManager.cs
- RequestContext.cs
- GetWinFXPath.cs
- ZoneLinkButton.cs
- DefaultParameterValueAttribute.cs
- safex509handles.cs
- FixedFlowMap.cs
- BitmapCodecInfoInternal.cs
- CanExecuteRoutedEventArgs.cs
- ExpressionBindings.cs
- ListSortDescriptionCollection.cs
- IIS7ConfigurationLoader.cs
- WebPartHelpVerb.cs
- TemplateComponentConnector.cs
- Freezable.cs
- XmlDocumentSchema.cs
- ECDsa.cs
- WebProxyScriptElement.cs
- FontConverter.cs
- IntermediatePolicyValidator.cs
- TextBoxLine.cs
- MaterialGroup.cs
- TrackBar.cs
- SystemParameters.cs
- ChannelServices.cs
- BinaryObjectReader.cs
- PolicyLevel.cs
- Avt.cs
- MethodRental.cs
- JulianCalendar.cs
- UserPersonalizationStateInfo.cs
- CallId.cs
- HttpWebRequestElement.cs
- XmlSchemaSet.cs
- XmlToDatasetMap.cs
- ToolStripManager.cs
- NativeMethods.cs
- RsaSecurityTokenAuthenticator.cs
- GlyphCollection.cs
- RuntimeHandles.cs
- UnionExpr.cs
- SchemaImporter.cs
- FunctionNode.cs
- FormsAuthentication.cs
- GeometryHitTestParameters.cs
- UIElement.cs
- DragStartedEventArgs.cs
- TransformedBitmap.cs
- DesignTimeParseData.cs
- HtmlUtf8RawTextWriter.cs
- VisualStyleTypesAndProperties.cs
- HandleCollector.cs
- ConfigurationSchemaErrors.cs
- TextEndOfParagraph.cs
- ContainsRowNumberChecker.cs
- SerTrace.cs
- ChtmlSelectionListAdapter.cs
- MinMaxParagraphWidth.cs
- SelectedGridItemChangedEvent.cs
- DragDropHelper.cs
- CodePageUtils.cs
- InternalCompensate.cs
- AssemblyAttributesGoHere.cs
- Enumerable.cs
- EntityCommand.cs
- SqlCommand.cs
- EditingCommands.cs
- TimeZoneNotFoundException.cs
- WebPartMinimizeVerb.cs
- DeferredRunTextReference.cs
- TextChangedEventArgs.cs
- ExtensionDataObject.cs
- RangeExpression.cs
- EndCreateSecurityTokenRequest.cs
- SiteMapPath.cs
- Pair.cs
- TextSelectionHelper.cs
- OneToOneMappingSerializer.cs
- DataControlFieldCollection.cs
- RuleInfoComparer.cs
- HandleCollector.cs
- ImportedNamespaceContextItem.cs
- PathFigureCollectionConverter.cs
- XmlCDATASection.cs
- GlyphRunDrawing.cs
- DictionaryTraceRecord.cs
- MatrixCamera.cs
- WebPartActionVerb.cs