• encore
  • ปกป้อง api
  • api auth

วิธีใช้ Logto สำหรับแอปพลิเคชัน Encore ของคุณ

เรียนรู้วิธีการใช้ Logto สำหรับการตรวจสอบตัวตนของผู้ใช้ในแอปพลิเคชัน backend ของคุณด้วย Encore ในคู่มือนี้เราจะแสดงวิธีการรวม Go backend ของคุณกับ Logto

Yijun
Yijun
Developer

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

Encore เป็นแพลตฟอร์มพัฒนา backend ที่ทำให้การสร้าง API และไมโครเซอร์วิสพร้อมใช้งานในระดับผลิตง่ายขึ้น

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

คู่มือนี้จะแสดงวิธีการรวม Logto กับแอปพลิเคชัน Encore ของคุณเพื่อใช้งานการตรวจสอบตัวตนของผู้ใช้และปกป้อง API endpoints ของคุณ

การตั้งค่า Logto

ก่อนที่เราจะเริ่มรวมเข้ากับ Encore คุณจะต้องตั้งค่าบางอย่างใน Logto:

  1. สร้างบัญชีที่ Logto Cloud ถ้าคุณยังไม่มี

  2. สร้าง API Resource ใน Logto Console ซึ่งแสดงถึงบริการ Encore API ของคุณ

    • ไปที่ "API Resources" ใน Logto Console และสร้าง API ใหม่
    • ตั้งชื่อและ API identifier (เช่น https://api.encoreapp.com)
    • จด API identifier ในหน้ารายละเอียด API resource เพราะเราจะใช้มันในภายหลัง

Logto API Resource

  1. สร้างแอปพลิเคชันสำหรับแอปพลิเคชัน frontend ของคุณ
  • ไปที่ "Applications" ใน Logto Console
  • สร้างแอปพลิเคชันใหม่ตามกรอบงาน frontend ของคุณ (เราใช้ React เป็นตัวอย่าง แต่คุณสามารถสร้าง Single-Page Application (SPA) หรือแอป native ใด ๆ ก็ได้)
  • (ไม่บังคับ เราจะครอบคลุมในภายหลัง) รวม Logto กับแอปพลิเคชัน frontend ของคุณตามคู่มือใน Logto Console
  • จด application ID และ issuer URL ในหน้ารายละเอียดแอปพลิเคชันเพราะเราจะใช้พวกมันในภายหลัง

Logto application endpoints

ตั้งค่า auth handler สำหรับบริการ Encore API ของคุณ

ตอนนี้ให้เรานำการตรวจสอบตัวตนเข้ามาในแอปพลิเคชัน Encore ของคุณ เราจะใช้ auth handler ของ Encore ที่มีอยู่แล้ว เพื่อตรวจสอบความถูกต้องของโทเค็น JWT ของ Logto

เพิ่มโมดูลเหล่านี้สองตัวในแอปพลิเคชัน Encore ของคุณ:

สร้าง auth/auth.go และเพิ่มโค้ดต่อไปนี้:

จากนั้นคุณสามารถใช้ auth handler นี้เพื่อปกป้อง API endpoints ของคุณ:

Frontend

เราทำงานในบริการ Encore API เรียบร้อยแล้ว ตอนนี้เราจำเป็นต้องรวม Logto กับแอปพลิเคชัน frontend ของเรา

คุณสามารถเลือกกรอบงานที่คุณกำลังใช้งานในหน้าของ Logto Quick start เพื่อรวม Logto กับแอปพลิเคชัน frontend ของคุณ ในคู่มือนี้เราใช้ React เป็นตัวอย่าง

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

อันดับแรก อัปเดต LogtoConfig ของคุณโดยการเพิ่ม API resource ที่ใช้ในแอป Encore ของคุณไปยังฟิลด์ resources ซึ่งสื่อให้ Logto ทราบว่าเราจะร้องขอโทเค็นการเข้าถึงสำหรับ API resource นี้ (Encore API)

หลังจากอัปเดต LogtoConfig แล้ว หากผู้ใช้ได้ลงชื่อเข้าใช้แล้ว จำเป็นต้องออกจากระบบและลงชื่อเข้าใช้อีกครั้งเพื่อให้การตั้งค่า LogtoConfig ใหม่นี้มีผล

เมื่อผู้ใช้ได้ลงชื่อเข้าใช้แล้ว คุณสามารถใช้เมธอด getAccessToken ที่ให้โดย Logto React SDK เพื่อรับโทเค็นการเข้าถึงสำหรับการเข้าถึง API resources เฉพาะ เช่น เพื่อเข้าถึง Encore API เราใช้ https://api.encoreapp.com เป็นตัวระบุ API resource

จากนั้นเพิ่มโทเค็นการเข้าถึงนี้ในส่วนหัวของคำขอเป็นฟิลด์ Authorization ในคำขอต่อไปนี้

เสร็จเรียบร้อย คุณได้รวม Logto กับแอปพลิเคชัน Encore ของคุณเรียบร้อยแล้ว

สำรวจเพิ่มเติม

หากคุณต้องการใช้ฟีเจอร์ Logto เพิ่มเติมใน Encore คุณสามารถดูลิงก์ต่อไปนี้สำหรับข้อมูลเพิ่มเติม: