.net 服务帐户无权管理项目

xxhby3vn  于 2023-01-27  发布在  .NET
关注(0)|答案(1)|浏览(100)

我最近加入了一个团队,正在将Android Management API添加到已经存在的项目中。我添加了管理API,创建了具有权限的服务帐户,并正在编写.NET项目来测试它。
我创建了一个具有Android管理用户和所有者权限的服务帐户。但是,当我尝试使用.NET库创建企业时,我得到了
服务androidmanagement引发异常。HttpStatusCode被禁止。调用方无权管理项目。
如果有帮助:我使用的API密钥可以调用任何API,应用名称是临时名称,与项目名称不匹配。至于使用私钥的服务帐户,我使用FileStream读取创建服务帐户时下载的.json文件。
这是我的代码,基于示例应用程序https://developers.google.com/android/management/sample-app
createRequst.Execute()上抛出错误

string CreateEnterprise()
{
    SignupUrlsResource.CreateRequest signupUrlRequest = managementService.SignupUrls.Create();
    signupUrlRequest.ProjectId = cloud_project_id;
    signupUrlRequest.CallbackUrl = "https://www.yahoo.com";
    var signupUrl = signupUrlRequest.Execute();

    string enterpriseToken = signupUrl.Url;
    Console.WriteLine("Signup: " + enterpriseToken);

    EnterprisesResource.CreateRequest createRequest = managementService.Enterprises.Create(new Enterprise());
    createRequest.ProjectId = "Test Project";
    createRequest.SignupUrlName = signupUrl.Name;
    createRequest.EnterpriseToken = enterpriseToken;
    var enterprise = createRequest.Execute();

    return enterprise.Name;
}
vq8itlhq

vq8itlhq1#

原来createRequest.ProjectId必须匹配具有Android管理API的项目名称,也就是我正在使用的项目。

相关问题