使用管理權限/模擬(禁止403)下載用戶文件我看了這個徹底:https://developers.google.com/google-apps/documents-list/#using_google_apps_administrative_access_to_impersonate_other_domain_users 我用Google搜索這個死亡。谷歌文檔:無法導出/ Python中
到目前爲止,我已經能夠:
授權使用:
- 的ClientLogin
- OAuth憑證(使用我的域密鑰)
檢索文檔供稿對於域中的所有用戶(在#1中以任一方式授權)
我正在使用Feed中的「條目」導出/下載文檔,並且始終禁止其他用戶查看未與管理員共享的文檔。我使用的進料的查詢是這樣的:https://docs.google.com/feeds/[email protected]/private/full/?v=3
(?我已經有和沒有試圖V = 3)
我還試圖加入xoauth_requestor_id(我還看到在帖子爲xoauth_requestor) ,無論在URI,並作爲一個客戶端特性:client.xoauth_requestor_id = ...
代碼片段:
客戶端登錄(使用管理員憑據):
client.http_client.debug = cfg.get('HTTPDEBUG')
client.ClientLogin(cfg.get('ADMINUSER'), cfg.get('ADMINPASS'), 'HOSTED')
的OAuth:
client.http_client.debug = cfg.get('HTTPDEBUG')
client.SetOAuthInputParameters(gdata.auth.OAuthSignatureMethod.HMAC_SHA1, cfg.get('DOMAIN'), cfg.get('APPS.SECRET'))
oatip = gdata.auth.OAuthInputParams(gdata.auth.OAuthSignatureMethod.HMAC_SHA1, cfg.get('DOMAIN'), cfg.get('APPS.SECRET'))
oat = gdata.auth.OAuthToken(scopes = cfg.get('APPS.%s.SCOPES' % section), oauth_input_params = oatip)
oat.set_token_string(cfg.get('APPS.%s.TOKEN' % section))
client.current_token = oat
Feed後檢索:
# pathname eg whatever.doc
client.Export(entry, pathname)
# have also tried
client.Export(entry, pathname, extra_params = { 'v': 3 })
# and tried
client.Export(entry, pathname, extra_params = { 'v': 3, 'xoauth_requestor_id': '[email protected]' })
任何建議或指針來什麼,我在這裏失蹤? 謝謝
如果對這一問題的回答,可以將其標記回答?另外,請發佈一個新問題,並附上步驟來重現您在評論中提到的其他401s/403s。 – 2012-04-13 12:56:24