MS拥有EF Core +具有托管身份的Azure SQL的文档。两年前的这篇SO帖子还对它进行了深入的讨论,并提供了一些替代实现。
但是我找不到适用于EF Core的Azure PostgreSQL(也支持托管身份)的任何内容。
MS在此处具有有关Azure PostgreSQL托管身份的通用文档:https : //docs.microsoft.com/zh-cn/azure/postgresql/howto-connect-with-managed-identity
似乎建议在常规PostgreSQL连接字符串中用访问令牌替换密码是它的工作方式。
那么用EF Core实施此的最佳方法是什么?
任何建议或相关文档的链接将不胜感激。
它是如何在常规PostgreSQL连接字符串中用访问令牌替换密码的。
在.NET Core中,通常将其配置如下:
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
services.AddTransient(typeof(Foo));
services.AddSingleton(typeof(Bar));
services.AddDbContext<Db>((sp, options) =>
{
var config = sp.GetRequiredService<IConfiguration>();
var constr = config.GetConnectionString("ConnectionString");
var tp = sp.GetService<ITokenProvider>();
var token = tp.GetToken("https://ossrdbms-aad.database.windows.net");
constr = constr.Replace("[passsword]", token);
options.UseNpgsql(constr);
});
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句