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
- EncryptedKeyHashIdentifierClause.cs
- TextTreeRootTextBlock.cs
- CheckableControlBaseAdapter.cs
- SqlWriter.cs
- ClientConfigurationSystem.cs
- GeneralTransform3DTo2DTo3D.cs
- TransformerTypeCollection.cs
- Configuration.cs
- ContentType.cs
- HtmlTitle.cs
- DNS.cs
- DiscoveryClientDocuments.cs
- StylusEditingBehavior.cs
- VerificationException.cs
- SspiNegotiationTokenAuthenticator.cs
- ColumnCollection.cs
- PeerName.cs
- Range.cs
- ComponentChangingEvent.cs
- ShaperBuffers.cs
- counter.cs
- XsltConvert.cs
- WeakReadOnlyCollection.cs
- BindingContext.cs
- CharacterString.cs
- EndpointAddress10.cs
- ThreadExceptionDialog.cs
- VScrollProperties.cs
- SchemaEntity.cs
- SiteMapDataSource.cs
- PermissionSetTriple.cs
- PhysicalOps.cs
- ListSourceHelper.cs
- NumberAction.cs
- ValidatingPropertiesEventArgs.cs
- ModuleConfigurationInfo.cs
- BindValidator.cs
- X509CertificateRecipientClientCredential.cs
- ScriptingProfileServiceSection.cs
- X509ChainPolicy.cs
- JsonMessageEncoderFactory.cs
- ExpressionBindingCollection.cs
- ProfileServiceManager.cs
- SerializationObjectManager.cs
- DataKey.cs
- RequestCachePolicy.cs
- JpegBitmapDecoder.cs
- ErrorHandlingAcceptor.cs
- _TimerThread.cs
- ResourceCategoryAttribute.cs
- EntityModelBuildProvider.cs
- RtfFormatStack.cs
- FlowDocumentReaderAutomationPeer.cs
- DesignerGenericWebPart.cs
- AlternationConverter.cs
- AnchorEditor.cs
- securitymgrsite.cs
- ConstraintCollection.cs
- SmiXetterAccessMap.cs
- RequestBringIntoViewEventArgs.cs
- ConfigurationStrings.cs
- InfoCardSymmetricAlgorithm.cs
- TextParagraphProperties.cs
- TableSectionStyle.cs
- HwndTarget.cs
- DataSetUtil.cs
- BigInt.cs
- WindowsScroll.cs
- HttpsTransportBindingElement.cs
- SqlTypeSystemProvider.cs
- DataProtection.cs
- ExpressionPrefixAttribute.cs
- Span.cs
- HtmlTextViewAdapter.cs
- TimeoutException.cs
- NonBatchDirectoryCompiler.cs
- shaper.cs
- ServiceHttpModule.cs
- EncoderReplacementFallback.cs
- TextElementEnumerator.cs
- SafeArrayRankMismatchException.cs
- BooleanSwitch.cs
- FormCollection.cs
- _FtpControlStream.cs
- DispatcherProcessingDisabled.cs
- __Error.cs
- FaultContractAttribute.cs
- PrintDialogException.cs
- SimpleMailWebEventProvider.cs
- x509store.cs
- LambdaCompiler.ControlFlow.cs
- ZoneButton.cs
- WebPartConnectionsCancelEventArgs.cs
- SystemNetworkInterface.cs
- FixedSOMElement.cs
- XmlSchemaProviderAttribute.cs
- DataGridCommandEventArgs.cs
- NavigationEventArgs.cs
- ResumeStoryboard.cs
- GenericUriParser.cs