通过服务帐户

时间:2015-05-14 06:20:58

标签: google-admin-sdk

我正在用C#编写一个应用程序,旨在查询Google Domain Shared Contacts API以检索(并最终更新/添加/删除)所有域共享联系人记录。由于目前不支持.NET客户端库,因此我编写了一个过程来检索oauth 2.0令牌以包含在我对https://www.google.com/m8/feeds/contacts/example.com/full的请求中。我相信我的oauth 2.0令牌请​​求程序是正确的,但在使用该令牌调用上述URL时,我收到403 Forbidden错误。但是,如果我进入OAuth 2.0游乐场并通过那里创建令牌并在我的C#应用​​程序中使用该令牌,则调用成功并返回返回的联系人记录。

我的问题是 - 是否支持使用服务帐户的凭据调用域共享联系人API?

1 个答案:

答案 0 :(得分:1)

此问题的解决方案是将“总体”域管理员帐户的电子邮件地址作为要管理的用户(创建Jason Web令牌时的'sub'属性或ServiceAccountCredential初始化的'User'属性)。由于域管理员可以访问所有域数据,因此现在可以成功检索所有域共享联系人。