2016-06-07 55 views
4

我有以下代码:最简单的方式来访问蔚蓝编程

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

我需要生成凭证,我有完全访问权限的管理员。只有一个应用程序访问我的数据并需要生成TokenCloudCredentials。

我试着注册一个应用程序,但成功生成令牌后出现“禁止”错误。有没有最简单的方法来做到这一点(比如Github,生成一个令牌并完成?)。

谢谢。

+0

您是使用Azure服务管理还是Azure资源管理器来创建Azure Web App?你使用的是什么特定的nuget和版本? – juvchan

回答

2

我设法使它与以下代码段一起工作。它只需要证书。检查是否适合你。 您将需要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上。一旦它上传,就可以得到publishsettings文件,以获取与该电源外壳命令行的证书管理指纹:

Get-AzurePusblishSettingsFile 

下面的屏幕截图显示了在哪里可以找到在publishprofile证书管理指纹:

enter image description here

然后,您可以使用Alex Belotserkovskiy提出的代码来获得Azure Management SDK的身份验证。

Here是一个完整的博客文章,显示所有步骤。