gpt4 book ai didi

.net - IdentityServer4 存储客户端 secret

转载 作者:行者123 更新时间:2023-12-03 23:30:51 25 4
gpt4 key购买 nike

我目前正在尝试构建一个供几个客户端使用的单点登录服务器。因为我不完全知道会有多少客户端,所以我计划制作它以便我可以在运行时使用 EntityFramework 配置存储添加客户端。

我现在的问题是如何设置客户端 secret 。我尝试生成一个新的 GUID 并将其用作 secret 。现在的问题是,配置存储只是想保存密码的散列版本,我需要访问普通密码才能将其添加到实际的客户端应用程序中。

我认为这是故意的,并且不鼓励保存 secret 的普通版本?保存 secret 的首选解决方案是什么?

最佳答案

使用以下算法生成 sha256 哈希。这与 IdentityServer4.Models.HashExtensions 中使用的算法相同类(class)。

using System.Security.Cryptography;

static class Extentions
{

public static string Sha256(this string input)
{

using (SHA256 shA256 = SHA256.Create())
{
byte[] bytes = Encoding.UTF8.GetBytes(input);
return Convert.ToBase64String(((HashAlgorithm)shA256).ComputeHash(bytes));
}
}
}


void Main()
{
Console.WriteLine( "secret-as-guid".Sha256());
}

关于.net - IdentityServer4 存储客户端 secret ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44001798/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com