我正在尝试在Azure密钥库中存储条带凭据。我在Visual Studio应用程序中使用了连接的服务选项卡,这似乎可以工作。但是,当我在本地运行应用程序时,程序文件中出现错误。我正在使用dotnet 6核心剃刀页。
这些都是错误,希望能对大家有所帮助。
DefaultAzureCredential无法从包含的凭据中检索令牌。有关详细信息,请参阅疑难解答指南。https://aka.ms/azsdk/net/identity/defaultazurecredential/troubleshoot
- EnvironmentCredential身份验证不可用。环境变量未完全配置。有关详细信息,请参阅疑难解答指南。https://aka.ms/azsdk/net/identity/environmentcredential/troubleshoot
- ManagedIdentityCredential身份验证不可用。多次尝试从托管标识终结点获取令牌失败。
- 进程“C:\程序文件\Microsoft Visual Studio \2022\Community\Common7\IDE\扩展名\lybeojxv.4oe\TokenService\Microsoft.Asal.TokenService.exe”已失败,并出现意外错误:TS 003:错误,TS 004:无法获取访问令牌。“AADSTS 50020:租户“Microsoft Services”中不存在来自身份提供程序“live.com”的用户帐户“{EmailHidden}”,无法访问该租户中的应用程序“872 cd 9 fa-d31 f-45 e0 - 9 eab-6 e460 a02 d1 f1”(Visual Studio)。需要首先将该帐户添加为租户中的外部用户。请注销,然后使用其他Azure Active Directory用户帐户重新登录。跟踪ID:相关性标识:62078 fe 0 -4072- 4 e16 - 8 ed 7 - 6 b5060844 d88时间戳:2022年2月9日07时51分08秒。
- 找不到存储的凭据。需要对VSCode Azure帐户中的用户进行身份验证。有关详细信息,请参阅疑难解答指南。https://aka.ms/azsdk/net/identity/vscodecredential/troubleshoot
- 请运行“az login”来设置帐户
- 未安装PowerShell。
这是程序类...
public class Program
{
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureAppConfiguration((context, config) =>
{
var keyVaultEndpoint = new
Uri(Environment.GetEnvironmentVariable("VaultUri"));
config.AddAzureKeyVault(keyVaultEndpoint, new DefaultAzureCredential());
})
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});
public static void Main(string[] args)
{
var host = CreateHostBuilder(args).Build();
using (var scope = host.Services.CreateScope())
{
var services = scope.ServiceProvider;
var loggerFactory = services.GetRequiredService<ILoggerFactory>();
try
{
var context = services.GetRequiredService<ApplicationDbContext>();
var userManager = services.GetRequiredService<UserManager<IdentityUser>>();
var roleManager = services.GetRequiredService<RoleManager<IdentityRole>>();
}
catch (Exception ex)
{
var logger = loggerFactory.CreateLogger<Program>();
logger.LogError(ex, "An error occurred seeding the DB.");
}
}
host.Run();
}
}
...
2条答案
按热度按时间yeotifhr1#
试试这些
在Visual Studio中验证你的Azure凭据
工具-选项-Azure服务身份验证-选择帐户或使用Azure凭据进行身份验证
确保您在AZ Keyvault中具有正确的访问权限(获取和列表)
Az门户-Keyvault-访问策略-添加-选择主体并保存
验证
launchSettings.json
文件中的这些设置uajslkp62#
您只需提供TenantId即可使用Visual Studio凭据:
第一个月
PS. TenantId在Azure Active Directory主页上可见