在使用Provisioning (通过POST @ https://apps-apis.google.com/a/feeds/domain/user/2.0)调用“Create”操作时,我收到了一个HTTP403错误。收到的答复是一个403错误:
"error": {
"errors": [
{
"domain": "global",
"reason": "forbidden",
"message": "Forbidden"
}
],
"code": 403,
"message": "Forbidden"
}
}该API直到上周底才开始工作。我的代码库中没有更改任何代码。API关闭了吗?API文档确实表示,API已被废弃。,但是该API仍然可以根据他们的弃用策略工作。
编辑:看来供应API已经被Directory取代了。在Directory先决条件中,它说“
注意: API设备操作不支持Google授权分销商的远程管理访问。
对于供应API来说,这意味着同样的事情吗?也就是说,用于创建用户的API之类的管理访问不能被Google授权的经销商访问?
发布于 2014-05-21 19:04:57
我知道这个问题有点过时,但由于它没有答案,我今天花了几个小时试图解决这个问题,看来我的答案可以在未来帮助到某人。
我的代码的问题是:我试图登录用户的帐户数据(用户名+密码)。我已经创建了另一个具有管理权限的帐户来进行更新。
在我的例子中,解决方案如下:
$domain = 'yourdomain.com';
$username = '...'; // the user you're trying to update
$admin_username = '...'; // administrative credentials
$admin_password = '...';
$config = array(
'adapter' => 'Zend_Http_Client_Adapter_Proxy',
'proxy_host' => 'proxy.example.com',
'proxy_port' => '...'); // your proxy port here (ex: 8000)
$proxiedHttpClient = new Zend_Gdata_HttpClient(
'https://www.google.com:443',
$config);
$client = Zend_Gdata_ClientLogin::getHttpClient(
$admin_username,
$admin_password,
Zend_Gdata_Gapps::AUTH_SERVICE_NAME,
$proxiedHttpClient);
$gdata = new Zend_Gdata_Gapps($client, $domain);
$userEntry = $gdata->retrieveUser($username);
// example: changing user's password
$userEntry->getLogin()->setPassword('Top$EcreT_2014');
$gdata->updateUser($username, $userEntry);https://stackoverflow.com/questions/17157847
复制相似问题