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

How do you authenticate using Azure Management Fluent API

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

Microsoft.IdentityModel.Clients.ActiveDirectory.AdalServiceException: 'AADSTS70002: Error validating credentials. AADSTS50012: Invalid client secret is provided.

        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();

AADSTS50012: Invalid client secret is provided

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

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

更多细节你可以参考Get application ID and authentication key and Get tenant ID

您还可以从提到的 link.

中获得有关如何 Create an Azure Active Directory application 的更多信息

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