2013-02-04 63 views
0

我試圖連接到報告api來獲取一些域的用戶的電子郵件的使用百分比的一些數據。我希望每天都做一個cron工作,所以我需要一些方法來作爲域的管理員進行認證,而不需要任何管理員交互。報告API與cron作業 - 谷歌應用程序引擎python

現在我使用的是管理員密碼和登錄這樣

url = 'https://www.google.com/hosted/services/v1.0/reports/ReportingData' 

url_login='https://www.google.com/accounts/Clientlogin' 

auth_request = urllib.urlencode({'accountType': 'HOSTED','Email': _ADMIN,'Passwd': _PASSW}) 

login = doPost(url_login, auth_request) 


for line in login.split('\n'):  

    array = line.split('=',2) 

    if array[0]=='SID': 

     token = array[1] 

_REQUEST_TEMPLATE = ('<?xml version="1.0" encoding="UTF-8"?>\n'  

     '<rest xmlns="google:accounts:rest:protocol"\n'  

     'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">\n'  

     ' <type>%(type)s</type>\n' 

    ' <token>%(token)s</token>\n' 

     ' <domain>%(domain)s</domain>\n' 

     ' <date>%(date)s</date>\n' 

     ' <reportType>daily</reportType>\n' 

      ' <reportName>%(reportName)s</reportName>\n' 

     '</rest>\n') 

,但我不希望存儲管理員的密碼。我試圖使用Oatuh 2.0,但似乎我總是需要管理員的交互。

有沒有什麼辦法可以使用consumer_key和consumer_secret?或者其他選擇?

謝謝!

回答

0

您必須存儲auth cerentials somwhere - 無論其是否具有ssl cert授權,cookie授權或用戶/證書憑證 - 它們始終必須可供要使用它們的scpript/program使用。如果您不想將它們存儲在腳本本身中,則可能需要將它們存儲在配置文件中,並使腳本從此處讀取它們,存儲在變量中並根據需要使用。您甚至可以將它們存儲在數據庫中,但是必須存儲數據庫憑證等,等等。

+0

並且沒有辦法使用消費者密鑰和消費者密鑰?當然,將它們存儲在某個地方 – user1930068

相關問題