【问题标题】:Simplest way to access azure programmatically以编程方式访问 azure 的最简单方法
【发布时间】:2016-10-08 01:14:23
【问题描述】:

我有以下代码:

var client = new WebSiteManagementClient(creds);
var data = client.WebSites.Get("eastuswebspace", "some-site", new WebSiteGetParameters());

我需要生成凭据,我是具有完全访问权限的管理员。只有一个 App 访问我的数据并且需要生成一个 TokenCloudCredentials。

我尝试注册一个应用程序,但在成功生成令牌后收到“禁止”错误。有没有最简单的方法(比如 Github,生成一个令牌就完成了?)。

谢谢。

【问题讨论】:

  • 您是使用 Azure 服务管理还是 Azure 资源管理器的方式来创建您的 Azure Web 应用程序?您使用的具体 nuget 和版本是什么?

标签: azure azure-sdk-.net


【解决方案1】:

我设法使它与以下 sn-p 一起工作。它只需要证书。检查这是否适合您。 您将需要 Azure 发布设置文件(来自该文件的指纹)。

public const string base64EncodedCertificate = "frompublishsettingsfile";
    public const string subscriptionId = "";

    static SubscriptionCloudCredentials getCredentials()
    {
        return new CertificateCloudCredentials(subscriptionId, new X509Certificate2(Convert.FromBase64String(base64EncodedCertificate)));
    }
    static void Main(string[] args)
    {
        WebSiteManagementClient client = new WebSiteManagementClient(getCredentials());

【讨论】:

    【解决方案2】:

    要生成令牌凭据,您需要创建证书并将其上传到 Azure。

    首先,您可以使用以下命令行创建证书:

    makecert -sky exchange -r -n "CN=<CertificateName>" -pe -a sha1 -len 2048 -ss My "<CertificateName>.cer"
    

    然后,有必要按照process 将其上传到 Azure。上传后,您可以使用此 power shell 命令行获取 publishsettings 文件以获取证书管理指纹:

    Get-AzurePusblishSettingsFile
    

    以下屏幕截图显示了在发布配置文件中的哪里可以找到证书管理指纹:

    然后,您可以使用 Alex Belotserkovskiy 提出的代码通过 Azure 管理 SDK 进行身份验证。

    Here 是一篇完整的博文,其中显示了所有步骤。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-23
      • 1970-01-01
      • 1970-01-01
      • 2016-10-23
      • 2010-09-19
      相关资源
      最近更新 更多