我在 Windows Azure ACS 中使用 SWT,并且在依赖方应用程序中使用自定义 SwtHandler 来处理传入的 SWT 令牌。虽然它在依赖方重新创建 SWT 令牌,但在创建与 validFrom 属性值相关的 SessionSecurityToken 时出现错误。
我已经尝试了以下 ValidFrom 值,但没有解决问题。
- DateTime SwtBaseTime = new DateTime(1970, 1, 1, 0, 0, 0, 0);
- 日期时间.UtcNow
- DateTime.MinValue 指定的参数超出了有效值的范围。参数名称:validFrom
[ArgumentOutOfRangeException:指定的参数超出了有效值的范围。参数名称:validFrom]
System.IdentityModel.Tokens.SessionSecurityToken..ctor(ClaimsPrincipal claimPrincipal,UniqueId contextId,String id,String context,Byte [] key,String endpointId,Nullable 1 validFrom, Nullable
1 validTo,UniqueId keyGeneration,Nullable 1 keyEffectiveTime, Nullable
1 keyExpirationTime,SctAuthorizationPolicy sctAuthorizationPolicy,Uri securityContextSecurityTokenWrapperSecureConversationVersion)+1009610 System.IdentityModel.Tokens.SessionSecurityToken..ctor(ClaimsPrincipal claimPrincipal,UniqueId contextId,字符串上下文,字符串 endpointId,Nullable1 validFrom, Nullable
1 validTo, SymmetricSecurityKey key) +317 System.IdentityModel.Tokens.SessionSecurityTokenHandler.CreateSessionSecurityToken(ClaimsPrincipal principal, String context, String endpointId, DateTime validFrom, DateTime validTo) +306 System.IdentityModel.Services.SessionAuthenticationModule.CreateSessionSecurityToken(ClaimsPrincipal principal, String context , DateTime validFrom, DateTime validTo, Boolean isPersistent) +313 System.IdentityModel.Services.WSFederationAuthenticationModule.SignInWithResponseMessage(HttpRequestBase request) +1079 System.IdentityModel.Services.WSFederationAuthenticationModule.OnAuthenticateRequest(Object sender, EventArgs args) +123924 System.Web.SyncEventExecutionStep .System.Web.HttpApplication.IExecutionStep.Execute() +80 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean&同步完成)+165