Azure SDK .NET Authenticate issues(ServicePrincipalLoginInformation should contain a valid ClientId information)
Azure SDK .NET Authenticate issues(ServicePrincipalLoginInformation should contain a valid ClientId information)
我正在尝试管理 Azure 弹性池,并按照 Microsoft 示例登录 here
但我不能使用 SdkContext.AzureCredentialsFactory.FromServicePrincipal。
我收到以下错误:
{"Cannot communicate with server. ServicePrincipalLoginInformation should contain a valid ClientId information."}
这是我的代码:
string clientId = Environment.GetEnvironmentVariable("4a8ca462-413d- ...etc.etc");
string appSecret = Environment.GetEnvironmentVariable("2ri-a1wZJzPy.C ... etc.etc");
string tenantId = Environment.GetEnvironmentVariable("d7cc8849-2174- ... etc.etc.");
var credentials = SdkContext.AzureCredentialsFactory
.FromServicePrincipal(clientId, appSecret, tenantId, AzureEnvironment.AzureGlobalCloud);
var azure = Azure
.Configure()
.Authenticate(credentials)
.WithSubscription("x1dfe0t2-41b5-etc.etc.");
我确实尝试查看 GIT 中的代码行,因为它是开源的,但找不到为什么 clientId 为 null ...
Fluent 版本 1.37.1 和 .NET Core
根据异常信息和source code,您似乎提供了空白的客户端ID。
请检查 string clientId = Environment.GetEnvironmentVariable("4a8ca462-413d- ...etc.etc")
的结果是否为空。
例如,将client id的名称设置为AZURE_CLIENT_ID,并用guid设置值。然后在 C# 中使用变量名称获取客户端 ID。
string clientId = Environment.GetEnvironmentVariable("AZURE_CLIENT_ID");
我正在尝试管理 Azure 弹性池,并按照 Microsoft 示例登录 here 但我不能使用 SdkContext.AzureCredentialsFactory.FromServicePrincipal。 我收到以下错误:
{"Cannot communicate with server. ServicePrincipalLoginInformation should contain a valid ClientId information."}
这是我的代码:
string clientId = Environment.GetEnvironmentVariable("4a8ca462-413d- ...etc.etc");
string appSecret = Environment.GetEnvironmentVariable("2ri-a1wZJzPy.C ... etc.etc");
string tenantId = Environment.GetEnvironmentVariable("d7cc8849-2174- ... etc.etc.");
var credentials = SdkContext.AzureCredentialsFactory
.FromServicePrincipal(clientId, appSecret, tenantId, AzureEnvironment.AzureGlobalCloud);
var azure = Azure
.Configure()
.Authenticate(credentials)
.WithSubscription("x1dfe0t2-41b5-etc.etc.");
我确实尝试查看 GIT 中的代码行,因为它是开源的,但找不到为什么 clientId 为 null ...
Fluent 版本 1.37.1 和 .NET Core
根据异常信息和source code,您似乎提供了空白的客户端ID。
请检查 string clientId = Environment.GetEnvironmentVariable("4a8ca462-413d- ...etc.etc")
的结果是否为空。
例如,将client id的名称设置为AZURE_CLIENT_ID,并用guid设置值。然后在 C# 中使用变量名称获取客户端 ID。
string clientId = Environment.GetEnvironmentVariable("AZURE_CLIENT_ID");