在 Azure 网站中授权 Google 分析请求
Authorize Google Analytics Request in Azure Website
我正在尝试从托管在 Azure 网站中的 WEB API 控制器调用 Google Analytics API。
我的代码是这样的:
var certificate = new X509Certificate2(path, "notasecret", X509KeyStorageFlags.Exportable);
var credentials = new ServiceAccountCredential(
new ServiceAccountCredential.Initializer("XXXXXXXXXXXXXXXXXXXXXX@developer.gserviceaccount.com")
{
Scopes = new[] { AnalyticsService.Scope.AnalyticsReadonly }
}.FromCertificate(certificate));
Service = new AnalyticsService(new BaseClientService.Initializer()
{
HttpClientInitializer = credentials,
ApplicationName = "yoLearn"
});
我认为路径设置正确:
Server.MapPath("~/Content/yoLearn-995f8379d7e4.p12")
问题是,如果我将标志从 Exportable 更改为 MachineKeySet,则会引发此异常:
但是如果我让 Exportable 标记,网站会发生这种情况:
如果有人能在这里帮助我...我很生气,只想从 azure 网站查询 google 分析!!
此致
这救了我...我必须向证书的构造函数添加一些标志。
var certificate = new X509Certificate2(path, "notasecret", X509KeyStorageFlags.MachineKeySet | X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.Exportable);
成功了,身份验证运行得很好
我正在尝试从托管在 Azure 网站中的 WEB API 控制器调用 Google Analytics API。
我的代码是这样的:
var certificate = new X509Certificate2(path, "notasecret", X509KeyStorageFlags.Exportable);
var credentials = new ServiceAccountCredential(
new ServiceAccountCredential.Initializer("XXXXXXXXXXXXXXXXXXXXXX@developer.gserviceaccount.com")
{
Scopes = new[] { AnalyticsService.Scope.AnalyticsReadonly }
}.FromCertificate(certificate));
Service = new AnalyticsService(new BaseClientService.Initializer()
{
HttpClientInitializer = credentials,
ApplicationName = "yoLearn"
});
我认为路径设置正确:
Server.MapPath("~/Content/yoLearn-995f8379d7e4.p12")
问题是,如果我将标志从 Exportable 更改为 MachineKeySet,则会引发此异常:
但是如果我让 Exportable 标记,网站会发生这种情况:
如果有人能在这里帮助我...我很生气,只想从 azure 网站查询 google 分析!!
此致
这救了我...我必须向证书的构造函数添加一些标志。
var certificate = new X509Certificate2(path, "notasecret", X509KeyStorageFlags.MachineKeySet | X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.Exportable);
成功了,身份验证运行得很好