Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / Tokens / SamlSecurityToken.cs / 1 / SamlSecurityToken.cs
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
namespace System.IdentityModel.Tokens
{
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Text;
using System.Xml.Serialization;
using System.Xml;
using System.Xml.Schema;
using System.CodeDom;
using System.Runtime.Serialization;
using System.Globalization;
using System.Threading;
using System.IdentityModel.Selectors;
using System.IdentityModel.Policy;
using System.Reflection;
using System.Security.Cryptography;
using System.Security.Cryptography.X509Certificates;
using System.IO;
public class SamlSecurityToken : SecurityToken
{
SamlAssertion assertion;
protected SamlSecurityToken()
{
}
public SamlSecurityToken(SamlAssertion assertion)
{
Initialize(assertion);
}
protected void Initialize(SamlAssertion assertion)
{
if (assertion == null)
throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("assertion");
this.assertion = assertion;
this.assertion.MakeReadOnly();
}
public override string Id
{
get { return this.assertion.AssertionId; }
}
public override ReadOnlyCollection SecurityKeys
{
get
{
return this.assertion.SecurityKeys;
}
}
public SamlAssertion Assertion
{
get { return this.assertion; }
}
public override DateTime ValidFrom
{
get
{
if (this.assertion.Conditions != null)
{
return this.assertion.Conditions.NotBefore;
}
return SecurityUtils.MinUtcDateTime;
}
}
public override DateTime ValidTo
{
get
{
if (this.assertion.Conditions != null)
{
return this.assertion.Conditions.NotOnOrAfter;
}
return SecurityUtils.MaxUtcDateTime;
}
}
public override bool CanCreateKeyIdentifierClause()
{
if (typeof(T) == typeof(SamlAssertionKeyIdentifierClause))
return true;
return false;
}
public override T CreateKeyIdentifierClause()
{
if (typeof(T) == typeof(SamlAssertionKeyIdentifierClause))
return new SamlAssertionKeyIdentifierClause(this.Id) as T;
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.UnableToCreateTokenReference)));
}
public override bool MatchesKeyIdentifierClause(SecurityKeyIdentifierClause keyIdentifierClause)
{
SamlAssertionKeyIdentifierClause samlKeyIdentifierClause = keyIdentifierClause as SamlAssertionKeyIdentifierClause;
if (samlKeyIdentifierClause != null)
return samlKeyIdentifierClause.Matches(this.Id);
return false;
}
}
}
// 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
- SystemInformation.cs
- IChannel.cs
- StringInfo.cs
- NavigatingCancelEventArgs.cs
- Geometry3D.cs
- GenericsInstances.cs
- GeneralTransformGroup.cs
- NavigationFailedEventArgs.cs
- AuthenticationConfig.cs
- ProbeMatchesMessageCD1.cs
- DrawingContext.cs
- SqlVisitor.cs
- ContractMapping.cs
- ProtectedConfigurationSection.cs
- WhitespaceRuleLookup.cs
- DataRelationCollection.cs
- UserPreferenceChangedEventArgs.cs
- EditingScopeUndoUnit.cs
- PeerEndPoint.cs
- ReadOnlyNameValueCollection.cs
- AddInToken.cs
- Clock.cs
- BidOverLoads.cs
- TokenFactoryCredential.cs
- MemoryFailPoint.cs
- TextControl.cs
- UiaCoreApi.cs
- HorizontalAlignConverter.cs
- DataBindingExpressionBuilder.cs
- UndoUnit.cs
- TraceHandler.cs
- DelegateCompletionCallbackWrapper.cs
- TraceProvider.cs
- CompiledRegexRunner.cs
- TypeUtils.cs
- PerformanceCounterCategory.cs
- _CacheStreams.cs
- KeyGestureConverter.cs
- OdbcDataReader.cs
- XmlDigitalSignatureProcessor.cs
- SchemaImporter.cs
- SessionStateSection.cs
- RegexRunner.cs
- FastEncoderWindow.cs
- StateMachineSubscription.cs
- DecimalAnimationUsingKeyFrames.cs
- ExpressionEditorAttribute.cs
- MailFileEditor.cs
- DataPagerFieldCollection.cs
- NotifyInputEventArgs.cs
- HttpCapabilitiesEvaluator.cs
- RepeaterDesigner.cs
- ToolStripContentPanelRenderEventArgs.cs
- XPathAxisIterator.cs
- WebPartHelpVerb.cs
- Splitter.cs
- DrawListViewItemEventArgs.cs
- StateValidator.cs
- XmlText.cs
- DocumentSequenceHighlightLayer.cs
- SafeLibraryHandle.cs
- TableCell.cs
- SerializationException.cs
- BinaryNode.cs
- ClientCultureInfo.cs
- HttpCachePolicyBase.cs
- VariableBinder.cs
- DataTransferEventArgs.cs
- InkCanvasSelectionAdorner.cs
- ScriptBehaviorDescriptor.cs
- ScrollBarAutomationPeer.cs
- TogglePatternIdentifiers.cs
- DataGridItemEventArgs.cs
- ProxyHelper.cs
- NavigationProgressEventArgs.cs
- Selector.cs
- IsolatedStorage.cs
- BitmapImage.cs
- SqlNotificationEventArgs.cs
- SqlResolver.cs
- ObjectHandle.cs
- PageCatalogPartDesigner.cs
- TextTreeTextElementNode.cs
- ProxyWebPart.cs
- BookmarkManager.cs
- ServiceMemoryGates.cs
- WorkflowTimerService.cs
- ServerIdentity.cs
- Stopwatch.cs
- _OSSOCK.cs
- MenuItemBinding.cs
- Delegate.cs
- ObjectDataSource.cs
- ExtendLockAsyncResult.cs
- InputDevice.cs
- NumericPagerField.cs
- GrammarBuilder.cs
- ErrorWebPart.cs
- DataListItemCollection.cs
- BoundsDrawingContextWalker.cs