oauth2 สำหรับบัญชีบริการ

ฉันต้องการให้ Google API Script ปรับใช้เป็นเว็บแอป ฉันเข้าใจวิธีการทำเช่นนั้น

ฉันต้องการให้สคริปต์นี้แสดงรายการและเพิ่มกิจกรรมใน Google Calendar ฉันมีเอกสารและตัวอย่างมากมายในการทำเช่นนั้น

ฉันต้องการให้สคริปต์นี้อ่านปฏิทินโดยใช้บัญชีบริการ ฉันได้สร้างบัญชีบริการและแชร์ปฏิทินแล้ว

เป้าหมายสุดท้ายคือการให้ไคลเอนต์ Javascript เข้าถึงสคริปต์นี้ ใช้เพื่อดึงรายการกิจกรรมในปฏิทิน และใช้เพื่อสร้างกิจกรรมในนั้น

สิ่งที่ฉันไม่เข้าใจคือจะตรวจสอบสิทธิ์บัญชีบริการได้อย่างไร ฉันเห็นรหัสเช่น:

oauthConfig.setConsumerKey("ไม่ระบุชื่อ"); oauthConfig.setConsumerSecret("ไม่ระบุชื่อ"); oauthConfig.setRequestTokenUrl( "https://www.google.com/accounts/OAuthGetRequestToken?scope="+ขอบเขต); oauthConfig.setAuthorizationUrl("https://accounts.google.com/OAuthAuthorizeToken"); oauthConfig.setAccessTokenUrl("https://www.google.com/accounts/OAuthGetAccessToken");

ฉันจะแก้ไขสิ่งนี้เพื่อใช้บัญชีบริการได้อย่างไร ฉันไม่เข้าใจว่าฉันจะส่งรหัสลูกค้า/ที่อยู่อีเมลของบัญชีบริการหรือไม่/อย่างไร ฉันยังไม่ชัดเจนว่าจะส่งกุญแจสาธารณะ/ส่วนตัวอย่างไร

ใครสามารถช่วยได้บ้าง?


person user1126515    schedule 08.02.2014    source แหล่งที่มา


คำตอบ (1)


เอกสาร Drive API มีตัวอย่างที่ดีเกี่ยวกับวิธีใช้บัญชีบริการ มีขั้นตอนทีละขั้นตอนเกี่ยวกับวิธีการสร้างบัญชีบริการ และยังมีตัวอย่างโค้ดหลายรายการอีกด้วย สิ่งเดียวคือคุณจะต้องเปลี่ยนขอบเขตเป็น Calendar API จาก Drive API

https://developers.google.com/drive/web/delegation

person Emily    schedule 10.02.2014
comment
คอนโซลผู้ดูแลระบบของ Google Apps เป็นข้อกำหนดที่แน่นอนหรือไม่ - person user1126515; 11.02.2014
comment
สำหรับการอนุญาต OAuth แบบ 2 ทางใช่แล้ว :( - person Emily; 11.02.2014
comment
แต่หากคุณกำลังจะเผยแพร่เป็นแอป Marketplace ควรติดตั้งสำหรับผู้ใช้ของคุณโดยอัตโนมัติในคอนโซลผู้ดูแลระบบในขณะที่พวกเขากำลังดำเนินการตามขั้นตอนการติดตั้ง - person Emily; 11.02.2014
comment
ฉันต้องการโซลูชันที่ไม่ขึ้นอยู่กับคอนโซลผู้ดูแลระบบของ Google Apps ทั้งหมดที่ฉันต้องการทำคืออนุญาตให้ทุกคนอ่าน/เพิ่มกิจกรรมลงใน Google Calendar ฉันจำกัดการเข้าถึงปฏิทินผ่าน Javascript บางตัวที่อนุญาตให้อ่าน/เพิ่มเท่านั้น ข้อจำกัดอื่นๆ เพียงอย่างเดียวคือ ฉันไม่ต้องการให้ใครต้องป้อนรหัสผู้ใช้/รหัสผ่าน ปฏิทินที่กำลังเข้าถึงเป็นของฉัน - ฉันต้องการให้คนอื่นอ่าน/เพิ่มลงในปฏิทินโดยไม่ต้องกรอกรหัสผู้ใช้/รหัสผ่านใดๆ ฉันได้รับแจ้งว่าบัญชีบริการเป็นวิธีที่ดีที่สุดในการบรรลุเป้าหมายนี้ ถูกต้องไหม? คุณรู้อะไรเกี่ยวกับการรับรองความถูกต้อง Oauth2 ผ่าน Google App Engine หรือไม่ - person user1126515; 11.02.2014