如何使用Azure Management Fluent API进行身份验证

时间:2018-01-14 11:02:00

标签: azure-sdk-.net azure-management-api

我们如何使用Azure Managment Fluent API使用服务主体进行身份验证。我收到以下错误。我错过了什么吗?

  

Microsoft.IdentityModel.Clients.ActiveDirectory.AdalServiceException:   ' AADSTS70002:验证凭据时出错。 AADSTS50012:无效   提供客户秘密。

        var credentials = SdkContext.AzureCredentialsFactory.FromServicePrincipal(ClientId, ClientSecret, AzureTenantId, AzureEnvironment.AzureGlobalCloud);

        var azure = Microsoft.Azure.Management.Fluent.Azure
            .Configure()
            .Authenticate(credentials)
            .WithSubscription(subscriptionid);

        var windowsVM = azure.VirtualMachines.Define("myWindowsVM")
            .WithRegion(Region.USWest)
            .WithNewResourceGroup(rgName)
            .WithNewPrimaryNetwork("10.0.0.0/28")
            .WithPrimaryPrivateIPAddressDynamic()
            .WithNewPrimaryPublicIPAddress("mywindowsvmdns")
            .WithPopularWindowsImage(KnownWindowsVirtualMachineImage.WindowsServer2012R2Datacenter)
            .WithAdminUsername("tirekicker")
            .WithAdminPassword(password)
            .WithSize(VirtualMachineSizeTypes.StandardD3V2)
            .Create();

1 个答案:

答案 0 :(得分:1)

  

AADSTS50012:提供了无效的客户端密码

根据异常信息,您似乎提供了无效的客户端密码。

您可以从Azure门户网站获取Azure Active Directory中的clientId,clientSecret,tenantId。

您可以参考Get application ID and authentication keyGet tenant ID了解更多细节。

您还可以从提到的链接中获取有关如何Create an Azure Active Directory application的更多信息。

注意:您还需要Assign create application to role