【问题标题】:X509SecurityToken is missing under Namespace of System.IdentityModel.TokensSystem.IdentityModel.Tokens 的命名空间下缺少 X509SecurityToken
【发布时间】:2014-11-30 09:38:24
【问题描述】:

我已经为 Visual Studio 2012 安装了“用于 Microsoft .Net Framework 4.5 的 JSON Web 令牌处理程序”的 Nuget 包(链接:-http://www.nuget.org/packages/System.IdentityModel.Tokens.Jwt/)。但它不包含“X509SecurityToken”的定义。导致以下方法显示错误的原因...

   private static void ValidateToken(string Token)
   {
        var tokenHandler = new JwtSecurityTokenHandler();
        var validationParameters = new TokenValidationParameters()
        {
            ValidAudience = "<some url>",
            IssuerSigningTokens = new List<X509SecurityToken>() { new X509SecurityToken(
           X509
           .LocalMachine
           .My
           .Thumbprint
           .Find("112233445566xxyy", false)
           .First()) },
            ValidIssuer = "https://my-issuer.com/trust/issuer",
            CertificateValidator = X509CertificateValidator.None,
            RequireExpirationTime = true
        };

        try
        {
            SecurityToken validatedToken;
            var principal = tokenHandler.ValidateToken(Token, validationParameters, out validatedToken);
        }
        catch (Exception e)
        {

            Console.WriteLine("{0}\n {1}", e.Message, e.StackTrace);
        }

        Console.WriteLine();
    }

如果有人可以提供任何帮助甚至提示,我将不胜感激,

感谢您的帮助, 贵霜兰迪玛。

【问题讨论】:

    标签: security validation exchange-server identity jwt


    【解决方案1】:

    尝试添加对 System.IdentityModel 的引用。

    【讨论】:

      猜你喜欢
      • 2018-02-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-22
      • 2016-09-24
      相关资源
      最近更新 更多