SecurityToken.ValidTo Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar den sista tidpunkten då den här säkerhetstoken är giltig.
public:
abstract property DateTime ValidTo { DateTime get(); };
public abstract DateTime ValidTo { get; }
member this.ValidTo : DateTime
Public MustOverride ReadOnly Property ValidTo As DateTime
Egenskapsvärde
En DateTime som representerar det sista ögonblicket i tiden då den här säkerhetstoken är giltig.
Exempel
Kodexemplen som används i ämnena SecurityToken tas från Custom Token exemplet. Det här exemplet innehåller anpassade klasser som möjliggör bearbetning av enkla webbtoken (SWT). Den innehåller en implementering av en SimpleWebToken klass och en SimpleWebTokenHandler klass samt andra klasser som stöder SWT-token. Information om det här exemplet och andra exempel som är tillgängliga för WIF och var du kan ladda ned dem finns i WIF Code Sample Index. Följande kod visar åsidosättningen av ValidTo egenskapen.
/// <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 );
}
Kommentarer
ValidFrom Använd egenskaperna och ValidTo för att fastställa tidsperioden då en SecurityToken token är giltig. Egenskaperna ValidFrom och ValidTo representerar de första och sista ögonblicken i tiden då säkerhetstoken är giltig.
Anteckningar till implementerare
Du måste åsidosätta egenskapen ValidTo .