รหัสประจำตัวข้ามไคลเอนต์

เมื่อนักพัฒนาสร้างซอฟต์แวร์โดยปกติจะมีโมดูลที่ทำงานบนเว็บเซิร์ฟเวอร์โมดูลอื่น ๆ ที่ทำงานในเบราว์เซอร์และอื่น ๆ ที่ทำงานเป็นแอปบนอุปกรณ์เคลื่อนที่ ทั้งนักพัฒนาและผู้ที่ใช้ซอฟต์แวร์ของตนมักคิดว่าโมดูลทั้งหมดนี้เป็นส่วนหนึ่งของแอปเดียว

การใช้งาน OAuth 2.0 ของ Google สนับสนุนมุมมองของโลกนี้ ในการใช้บริการที่ใช้ OAuth2.0 คุณต้องตั้งค่าซอฟต์แวร์ของคุณใน Google API Console หน่วยขององค์กรใน API Console คือ "โครงการ" ซึ่งสามารถสอดคล้องกับแอปที่มีหลายองค์ประกอบ สำหรับแต่ละโปรเจ็กต์คุณสามารถให้ข้อมูลการสร้างแบรนด์และคุณต้องระบุว่าแอปจะเข้าถึง API ใด แต่ละองค์ประกอบของแอปแบบหลายองค์ประกอบถูกระบุโดย รหัสไคลเอ็นต์ ซึ่งเป็นสตริงเฉพาะที่สร้างขึ้นใน API Console

เป้าหมายการอนุญาตข้ามลูกค้า

เมื่อแอปใช้ OAuth 2.0 ในการให้สิทธิ์แอปจะดำเนินการในนามของผู้ใช้เพื่อขอโทเค็นการเข้าถึง OAuth 2.0 สำหรับการเข้าถึงทรัพยากรซึ่งแอปจะระบุด้วยสตริงขอบเขตอย่างน้อยหนึ่งรายการ โดยปกติผู้ใช้จะถูกขอให้อนุมัติการเข้าถึง

เมื่อผู้ใช้ให้สิทธิ์เข้าถึงแอปของคุณสำหรับขอบเขตเฉพาะผู้ใช้จะดูที่หน้าจอคำยินยอมของผู้ใช้ซึ่งรวมถึงการสร้างแบรนด์ผลิตภัณฑ์ระดับโครงการที่คุณตั้งค่าไว้ใน Google API Console ดังนั้น Google จึงพิจารณาว่าเมื่อผู้ใช้ให้สิทธิ์เข้าถึงขอบเขตเฉพาะสำหรับรหัสไคลเอ็นต์ใด ๆ ในโปรเจ็กต์การให้สิทธิ์จะบ่งบอกถึงความไว้วางใจของผู้ใช้ในแอปพลิเคชันทั้งหมดสำหรับขอบเขตนั้น

ผลกระทบคือผู้ใช้ไม่ควรได้รับแจ้งให้อนุมัติการเข้าถึงทรัพยากรใด ๆ มากกว่าหนึ่งครั้งสำหรับแอปพลิเคชันเชิงตรรกะเดียวกันเมื่อใดก็ตามที่ส่วนประกอบของแอปพลิเคชันสามารถตรวจสอบได้อย่างน่าเชื่อถือโดยโครงสร้างพื้นฐานการอนุญาตของ Google ซึ่งในปัจจุบันรวมถึงเว็บแอปแอป Android Chrome แอพแอพ iOS แอพเดสก์ท็อปเนทีฟและอุปกรณ์อินพุต จำกัด

โทเค็นการเข้าถึงข้ามไคลเอนต์

ซอฟต์แวร์สามารถรับโทเค็นการเข้าถึง OAuth 2.0 ได้หลายวิธีขึ้นอยู่กับแพลตฟอร์มที่โค้ดกำลังทำงานอยู่ โปรดดูรายละเอียดใน การใช้ OAuth 2.0 เพื่อเข้าถึง Google API โดยปกติต้องมีการอนุมัติผู้ใช้เมื่อให้โทเค็นการเข้าถึง

โชคดีที่โครงสร้างพื้นฐานการอนุญาตของ Google สามารถใช้ข้อมูลเกี่ยวกับการอนุมัติผู้ใช้สำหรับรหัสไคลเอ็นต์ภายในโครงการที่กำหนดเมื่อประเมินว่าจะให้สิทธิ์ผู้อื่นในโครงการเดียวกันหรือไม่

ผลกระทบคือหากแอป Android ร้องขอโทเค็นการเข้าถึงสำหรับขอบเขตเฉพาะและผู้ใช้ที่ร้องขอได้ให้การอนุมัติเว็บแอปพลิเคชันในโครงการเดียวกันสำหรับขอบเขตเดียวกันแล้วผู้ใช้จะไม่ถูกขอให้อนุมัติอีก วิธีนี้ใช้ได้ทั้งสองวิธี: หากมีการให้สิทธิ์การเข้าถึงขอบเขตในแอป Android ของคุณจะไม่มีการเรียกร้องจากไคลเอนต์อื่นในโครงการเดียวกันเช่นเว็บแอปพลิเคชันอีก