• Secret Vault
  • การจัดเก็บโทเค็น
  • บริการบุคคลที่สาม
  • Google

ปกป้องการเข้าถึง Google API อย่างปลอดภัยด้วยการอนุญาต OAuth และการจัดเก็บโทเค็น

เรียนรู้วิธีสร้างแอปเพิ่มประสิทธิภาพอัจฉริยะ (เช่น AI agent) ที่ผสานรวมกับ Google API โดยใช้ Logto Secret Vault เพื่อเข้าถึง API ได้อย่างปลอดภัยและจัดเก็บรีเฟรชโทเค็น การอนุญาตแบบเพิ่มทีละส่วน และผสานรวมกับ OIDC/OAuth 2.0 อย่างไร้รอยต่อ

Ran
Ran
Product & Design

หยุดเสียเวลาเป็นสัปดาห์กับการยืนยันตัวตนผู้ใช้
เปิดตัวแอปที่ปลอดภัยเร็วขึ้นด้วย Logto ผสานการยืนยันตัวตนผู้ใช้ภายในไม่กี่นาทีและมุ่งเน้นที่ผลิตภัณฑ์หลักของคุณ
เริ่มต้นใช้งาน
Product screenshot

ในยุคดิจิทัลที่เชื่อมต่อถึงกันในปัจจุบัน แอปพลิเคชันที่สามารถผสานรวมกับบริการของบุคคลที่สามได้อย่างง่ายดายช่วยสร้างประสบการณ์ที่ยอดเยี่ยมให้กับผู้ใช้ ไม่ว่าคุณจะกำลังสร้างชุดแอปเพิ่มประสิทธิภาพ agent AI หรือแพลตฟอร์มร่วมมือจัดการเอกสาร ความสามารถในการเข้าถึงและใช้ API ของบริการต่าง ๆ เช่น Google, GitHub, Facebook หรือบริการอื่น ๆ ได้อย่างปลอดภัย จะยกระดับแอปของคุณให้ไปไกลกว่าความธรรมดา

ในวันนี้ เราจะมาเรียนรู้การใช้งานฟีเจอร์ Secret Vault และ Social Connector ของ Logto ในการสร้างแอปเพิ่มประสิทธิภาพอัจฉริยะที่ผสานรวมกับ Google API ได้อย่างปลอดภัย เราจะแสดงวิธีการจัดเก็บโทเค็น การเรียก access token สำหรับ AI, การอนุญาตแบบ incremental และการเชื่อมต่อกับบริการภายนอกแบบไร้รอยต่อ

ความท้าทาย: สร้าง Smart Calendar Assistant

ลองนึกภาพว่าคุณกำลังพัฒนา "Smart Calendar Assistant" หรือผู้ช่วยปฏิทินอัจฉริยะ ที่ช่วยให้ผู้ใช้จัดการตารางชีวิตของตนอย่างชาญฉลาด นี่คือภารกิจของแอปของคุณ:

  1. การยืนยันตัวตนพื้นฐาน: ให้ผู้ใช้ลงชื่อเข้าใช้ด้วยบัญชี Google เพื่อเข้าใช้งานแอป
  2. การจัดการโปรไฟล์: แสดงข้อมูลโปรไฟล์ขั้นพื้นฐานของผู้ใช้
  3. ผสานรวมปฏิทิน: อ่านกิจกรรมในปฏิทินเพื่อให้ข้อมูลเชิงลึกเกี่ยวกับตารางเวลา
  4. ฟีเจอร์ขั้นสูง: สร้างกิจกรรมในปฏิทิน ส่งคำเชิญการประชุมผ่าน Gmail และจัดการเอกสาร Google Drive แต่เฉพาะเมื่อผู้ใช้ร้องขอฟีเจอร์พรีเมียมเหล่านี้โดยเจตนา

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

ทางออก: การอนุญาตแบบ incremental ด้วย Logto Secret Vault

แนวทางของ Logto ช่วยแก้ปัญหานี้ได้อย่างลงตัวโดย:

  • ขอสิทธิ์ขั้นต่ำในตอนแรก: ขอแค่สิทธิ์จำเป็นเมื่อผู้ใช้ลงชื่อเข้าใช้
  • ขอสิทธิ์เพิ่มเติมแบบ incremental: ขอขอบเขตเพิ่มเติมเมื่อผู้ใช้ต้องการฟีเจอร์พรีเมียม
  • จัดเก็บโทเค็นอย่างปลอดภัย: เก็บและจัดการ access/refresh token ไว้ใน Secret Vault ที่เข้ารหัส
  • รีเฟรชโทเค็นอัตโนมัติ: จัดการหมดอายุของโทเค็นโดยอัตโนมัติ

ลองดูขั้นตอนการติดตั้งแบบทีละขั้น

ขั้นตอนที่ 1: ตั้งค่า Google connector ด้วยขอบเขตพื้นฐาน

ก่อนอื่น สร้างและตั้งค่า Google connector ของคุณผ่าน Logto Console ระหว่างการตั้งค่าเบื้องต้น ให้กำหนดขอบเขตขั้นต่ำสำหรับการยืนยันตัวตนพื้นฐาน:

ดู คลัง Google API และ OAuth 2.0 scopes documentation เพื่อค้นหาขอบเขตที่แอปของคุณต้องใช้

ขั้นตอนสำคัญในการตั้งค่า:

  1. สร้าง Google OAuth client ใน Google Cloud Console ตรวจสอบขอบเขตทั้งหมดที่จำเป็นสำหรับแอปของคุณ
  2. ตั้งค่า Logto Google connector ด้วยข้อมูล client ของคุณ เพิ่มขอบเขตขั้นต่ำด้านบนในช่อง Scopes
  3. เปิดใช้งาน Store tokens for persistent API access ในหน้าตั้งค่าคอนเนคเตอร์
  4. ตั้งค่า Prompts ให้มี consent และเปิด Offline Access เพื่อรับ refresh token

อ่านรายละเอียดเต็มในเอกสารของ Logto ที่หัวข้อ การตั้งค่า Google connector

การตั้งค่านี้จะอนุญาตให้ผู้ใช้ลงชื่อเข้าใช้และให้สิทธิ์แอปของคุณในการอ่านกิจกรรมปฏิทิน เหมาะสำหรับให้ข้อมูลเชิงลึกเบื้องต้นเกี่ยวกับตารางนัดหมาย

ขั้นตอนที่ 2: สร้างขั้นตอนการลงชื่อเข้าใช้

ไปที่ Logto > ประสบการณ์ลงชื่อเข้าใช้ > ลงทะเบียนและลงชื่อเข้าใช้ แล้วเพิ่ม Google connector ในส่วน Social sign-in เพื่ออนุญาตให้ผู้ใช้ยืนยันตัวตนด้วย Google

เมื่อผู้ใช้ลงชื่อเข้าผ่าน Google, Logto จะ:

  • ยืนยันผู้ใช้ตามขอบเขตที่ตั้งไว้
  • เก็บ access และ refresh token อย่างปลอดภัยใน Secret Vault
  • ส่งข้อมูลโปรไฟล์ผู้ใช้กลับไปยังแอปของคุณ

ขณะนี้โทเค็นทั้งหมดถูกเก็บอย่างปลอดภัยและผูกกับไอดี Google ของผู้ใช้ สามารถใช้กับการเรียก API ได้ทันที

ขั้นตอนที่ 3: เข้าถึง Google API ด้วยโทเค็นที่จัดเก็บไว้

เมื่อต้องการอ่านกิจกรรมในปฏิทินของผู้ใช้ ให้ดึงโทเค็นจาก Secret Vault แล้วเรียก Google Calendar API:

Logto จะรีเฟรช token อัตโนมัติเมื่อ access token หมดอายุหากมี refresh token เหลืออยู่ โดยไม่ให้ผู้ใช้ต้องทำอะไรเพิ่ม

ขั้นตอนที่ 4: การขออนุญาตเพิ่มเติมแบบ incremental สำหรับฟีเจอร์พรีเมียม

เมื่อผู้ใช้ต้องการใช้ฟีเจอร์พรีเมียม (เช่น สร้างกิจกรรม/ส่งอีเมล Gmail) ให้ใช้ Social Verification API ของ Logto เพื่อขอตัว scopes เพิ่มเติม:

หลังจากผู้ใช้อนุญาตสิทธิ์เพิ่มเติม ให้ทำขั้นตอนยืนยันและอัปเดต token ที่จัดเก็บไว้:

ตอนนี้แอปของคุณสามารถสร้างกิจกรรมในปฏิทินหรือส่งอีเมลผ่าน Google API ด้วย token ที่ครอบคลุมขอบเขตเพิ่มเติมได้แล้ว

ขั้นตอนที่ 5: จัดการสถานะโทเค็น

ใน Logto Console คุณสามารถจัดการโทเค็นได้อย่างครบถ้วน ไปที่ User Management > เลือกผู้ใช้ > Social Connections เพื่อดูข้อมูล:

  • สถานะโทเค็น: Active, Expired, Inactive หรือ Not Applicable
  • ข้อมูลเมทาดาต้าโทเค็น: วันเวลาสร้าง อัปเดต หมดอายุ และ scopes ที่ได้รับอนุญาต
  • จัดการการเชื่อมต่อ: ดูข้อมูลโปรไฟล์ที่ซิงค์จาก Google

ความสามารถนี้ช่วยแอดมินมองเห็นสถานะการเชื่อมต่อของผู้ใช้และแก้ไขปัญหาการใช้ token ได้ตรงจุด

ก้าวไปไกลกว่า Google: ผสานรวมกับบริการภายนอกอย่างครอบคลุม

คุณสามารถขยาย Smart Calendar Assistant ไปเชื่อมต่อกับบริการอื่น ๆ ได้อีก เช่น Google สำหรับยืนยันตัวตน ปฏิทิน และ Gmail, GitHub สำหรับรหัสและ issue management, Facebook สำหรับโซเชียลและการตลาด รวมถึงคอนเนคเตอร์อื่น ๆ ที่รองรับการจัดเก็บ token ได้ในอนาคต

หากต้องการผสานรวมแบบกำหนดเอง Logto ก็มีตัวเลือกยืดหยุ่นผ่านมาตรฐาน OIDC หรือ OAuth 2.0 ซึ่งครอบคลุมทุกบริการที่ใช้องค์กรของคุณ

ความปลอดภัยและแนวทางปฏิบัติที่ดี

Secret Vault ของ Logto ใช้มาตรฐานความปลอดภัยระดับองค์กร:

  • เข้ารหัสต่อ secret: ชุดโทเค็นแต่ละชุดใช้ Data Encryption Keys (DEK) เฉพาะของตน
  • Key wrapping: DEK จะถูกเข้ารหัสซ้ำด้วย Key Encryption Keys (KEK)
  • ลดการเปิดเผยขั้นต่ำ: โทเค็นจะถูกรันรหัสเฉพาะเวลาที่ต้องใช้เรียก API เท่านั้น
  • ลบอัตโนมัติ: โทเค็นจะถูกลบเมื่อผู้ใช้ยกเลิกบัญชีหรือถอดคอนเนคเตอร์ออก

สรุป

Logto คือแพลตฟอร์มยืนยันตัวตนที่ใช้งานง่ายสำหรับนักพัฒนา ใช้งานปลอดภัย และผสานบริการบุคคลที่สามได้อย่างครอบคลุม

ด้วยการอนุญาตแบบ incremental และการจัดเก็บโทเค็นอย่างปลอดภัยของ Logto, Smart Calendar Assistant ของคุณจะมอบประสบการณ์ใช้งานที่ราบรื่น สมดุลทั้งด้านฟังก์ชั่นและความปลอดภัย ผู้ใช้สามารถ onboard ได้เร็วผ่าน single sign-on ที่ขออนุญาตขั้นต่ำแค่ฟีเจอร์หลัก และค่อย ๆ ปลดล็อกฟีเจอร์พรีเมียมอย่างเป็นธรรมชาติเมื่อใช้งานต่อเนื่อง

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

พร้อมสร้างอินทิเกรตกับ API บุคคลที่สามไหม? เริ่มง่าย ๆ ดังนี้:

  1. ติดตั้ง Logto: สร้าง Logto tenant ของคุณและ ตั้งค่าคอนเนคเตอร์ social ตัวแรก
  2. เปิดการจัดเก็บโทเค็น: เปิด "Store tokens for persistent API access" ใน Settings ของคอนเนคเตอร์
  3. ใช้ incremental Auth: ใช้ Social Verification API สำหรับขอ scopes เพิ่มเติมแบบ on-demand
  4. สร้างและขยาย: ขยายไปยังผู้ให้บริการอื่น ๆ ด้วยคอนเนคเตอร์ของ Logto

อนาคตของแอปพลิเคชันคือการผสานบริการอย่างไร้รอยต่อ ด้วย Secret Vault และ Connectors ของ Logto คุณจะมีเครื่องมือสำหรับสร้างแอปที่ไม่เพียงแต่ใช้งานได้ แต่ยังเชื่อมต่อกับบริการที่ผู้ใช้ของคุณเชื่อถือใช้งานในทุกวัน

ต้องการดูตัวอย่างมากขึ้นไหม? เข้าไปดู คู่มือการเชื่อมต่อ แล้วเริ่มสร้างแอปพลิเคชันเชื่อมต่อถัดไปของคุณได้เลย