JWT - 如何将 PrivateKey 传递给“SigningCredentials”以构建 SecurityTokenDescriptior?

Sud*_*han 5 c# jwt

我正在使用 c#.NET 创建 JWT 令牌。我有自己的 xml 私钥。我需要将其作为参数之一传递给函数signingCredentials。我的代码如下所示:

            var securityTokenDescriptor = new SecurityTokenDescriptor()
            {
                Subject = new ClaimsIdentity(List),
                Audience = "Audi",
                Issuer = "Issr",
                Expires = 5,
                SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(Key), Microsoft.IdentityModel.Tokens.SecurityAlgorithms.HmacSha256Signature),
            };
Run Code Online (Sandbox Code Playgroud)

想知道如何传递 SigningCredentials 的私钥。

我有自己的私钥,作为标签 RSAKeyValue 之间的 xml 文件。

谢谢。

pep*_*epo 2

如果您有一个带有私钥的证书 - PKCS#12 那么这很容易

new SigningCredentials(new X509SecurityKey(cert), "RS256");
Run Code Online (Sandbox Code Playgroud)

所以制作一个证书。

  • 我没有任何证书。我只有私钥。 (2认同)