SecurityToken.ValidTo Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee wordt het laatste moment opgehaald waarop dit beveiligingstoken geldig is.
public:
abstract property DateTime ValidTo { DateTime get(); };
public abstract DateTime ValidTo { get; }
member this.ValidTo : DateTime
Public MustOverride ReadOnly Property ValidTo As DateTime
Waarde van eigenschap
Een DateTime die het laatste moment in de tijd vertegenwoordigt waarop dit beveiligingstoken geldig is.
Voorbeelden
De codevoorbeelden die in de SecurityToken onderwerpen worden gebruikt, worden uit het Custom Token voorbeeld genomen. Dit voorbeeld bevat aangepaste klassen waarmee eenvoudige webtokens (SWT) kunnen worden verwerkt. Het bevat een implementatie van een SimpleWebToken klasse en een SimpleWebTokenHandler klasse, evenals andere klassen die SWT-tokens ondersteunen. Zie de WIF-codevoorbeeldindex voor informatie over dit voorbeeld en andere voorbeelden die beschikbaar zijn voor WIF en waar u ze kunt downloaden. De volgende code toont de onderdrukking van de ValidTo eigenschap.
/// <summary>
/// Defines the set of constants for the Simple Web Token.
/// </summary>
public static class SimpleWebTokenConstants
{
public const string Audience = "Audience";
public const string ExpiresOn = "ExpiresOn";
public const string Id = "Id";
public const string Issuer = "Issuer";
public const string Signature = "HMACSHA256";
public const string ValidFrom = "ValidFrom";
public const string ValueTypeUri = "http://schemas.xmlsoap.org/ws/2009/11/swt-token-profile-1.0";
}
public static DateTime SwtBaseTime = new DateTime( 1970, 1, 1, 0, 0, 0, 0 ); // per SWT psec
NameValueCollection _properties;
/// <summary>
/// Gets the time when the token expires.
/// </summary>
/// <value>The time up to which the token is valid.</value>
public override DateTime ValidTo
{
get
{
string expiryTime = _properties[SimpleWebTokenConstants.ExpiresOn];
return GetTimeAsDateTime( String.IsNullOrEmpty( expiryTime ) ? "0" : expiryTime );
}
}
/// <summary>
/// Converts the time in seconds to a <see cref="DateTime"/> object based on the base time
/// defined by the Simple Web Token.
/// </summary>
/// <param name="expiryTime">The time in seconds.</param>
/// <returns>The time as a <see cref="DateTime"/> object.</returns>
protected virtual DateTime GetTimeAsDateTime( string expiryTime )
{
long totalSeconds = 0;
if ( !long.TryParse( expiryTime, out totalSeconds ) )
{
throw new SecurityTokenException("Invalid expiry time. Expected the time to be in seconds passed from 1 January 1970.");
}
long maxSeconds = (long)( DateTime.MaxValue - SwtBaseTime ).TotalSeconds - 1;
if ( totalSeconds > maxSeconds )
{
totalSeconds = maxSeconds;
}
return SwtBaseTime.AddSeconds( totalSeconds );
}
Opmerkingen
Gebruik de ValidFrom en ValidTo eigenschappen om de periode te bepalen waarin een SecurityToken token geldig is. De ValidFrom en ValidTo eigenschappen vertegenwoordigen de eerste en laatste momenten in de tijd waarin het beveiligingstoken respectievelijk geldig is.
Notities voor uitvoerders
U moet de ValidTo eigenschap overschrijven.