อัปเดตผลิตภัณฑ์ Logto
Logto v1.38.0 มาแล้ว รุ่นนี้มาพร้อมกับการรองรับ OAuth 2.0 Device Authorization Grant, การลงชื่อเข้าใช้ด้วย passkey, Adaptive MFA, การจัดการ sessions และ grants ตลอดจนการตั้งค่า OIDC ที่ยืดหยุ่นมากขึ้นสำหรับการใช้งาน OSS
Logto v1.38.0 มาแล้ว รุ่นนี้มาพร้อมกับการรองรับ OAuth 2.0 Device Authorization Grant, การลงชื่อเข้าใช้ด้วย passkey, Adaptive MFA, การจัดการ sessions และ grants ตลอดจนการตั้งค่า OIDC ที่ยืดหยุ่นมากขึ้นสำหรับการใช้งาน OSS
เราตื่นเต้นที่จะประกาศเปิดตัว Logto v1.38.0 สำหรับเดือนมีนาคม 2026! อัปเดตนี้ได้นำ device flow สำหรับแอปที่จำกัดการป้อนข้อมูล, แนะนำการลงชื่อเข้าใช้ด้วย passkey และการปรับปรุง Adaptive MFA พร้อมทั้งขยายการควบคุม session, grant, และการตั้งค่าระดับ tenant ทั่วทั้ง Logto
หนึ่งในการอัปเดตสำคัญครั้งนี้คือการรองรับ OAuth 2.0 Device Authorization Grant ทำให้ง่ายขึ้นมากในการสร้าง flow การรับรองตัวตนสำหรับอุปกรณ์ที่ไม่มีคีย์บอร์ดหรือเบราว์เซอร์ครบถ้วน เช่น ทีวีอัจฉริยะ, เครื่องมือ CLI, คอนโซลเกม และอุปกรณ์ IoT
ด้วย device flow ผู้ใช้สามารถ:
เราเพิ่มการรองรับ Console เต็มรูปแบบสำหรับแอป Device flow แล้ว ขณะนี้คุณสามารถสร้างแอป Device flow ได้โดยเลือก Input-limited app / CLI ในกลุ่ม Native apps หรือเลือก Device flow เป็น authorization flow เมื่อสร้างแอปแบบกำหนดเอง หน้าการตั้งค่าแอปยังมีคู่มือและตัวอย่างแถมมาให้ด้วย เพื่อช่วยให้คุณเริ่มต้นใช้งานได้ง่ายขึ้น
รุ่นนี้นำเสนอการลงชื่อเข้าใช้ด้วย passkey อย่างเต็มรูปแบบเป็นหนึ่งในวิธีรับรองตัวตนของ Logto
การลงชื่อเข้าใช้ด้วย passkey ให้ประสบการณ์ที่เร็วขึ้นโดยไม่ต้องใช้รหัสผ่านสำหรับผู้ใช้ที่กลับมา พร้อมทั้งเพิ่มความปลอดภัยบัญชี สามารถใช้งานร่วมกับ Platform Authenticator ที่คุ้นเคยเช่น Face ID, Touch ID และ Windows Hello
เราได้รองรับเส้นทางสำหรับผู้ใช้ที่เน้น passkey หลายทาง:
ดูรายละเอียดเพิ่มเติมที่ เอกสารการลงชื่อเข้าใช้ด้วย passkey
รุ่นนี้ยังมุ่งเน้นการพัฒนา MFA สมัยใหม่ด้วยการปรับปรุงหลักสองข้อ
Adaptive MFA มีให้ใช้ใน Logto แล้ว เมื่อเปิดใช้งาน flow การลงชื่อเข้าใช้จะประเมินกฎ Adaptive MFA กับ context ปัจจุบันและร้องขอ MFA เมื่อเงื่อนไขถูกกระตุ้น
ประกอบด้วย:
context.interaction.signInContextPostSignInAdaptiveMfaTriggeredสำหรับผู้ใช้ที่ไม่ได้บังคับให้ต้องตั้งค่า MFA ตอนนี้ Logto สามารถแสดงหน้าสำหรับ onboarding หลังการยืนยัน credential แยกต่างหาก เพื่อสอบถามว่าต้องการเปิด MFA เพิ่มเพื่อความปลอดภัยหรือไม่
ฟีเจอร์นี้มีประโยชน์โดยเฉพาะเมื่อลงชื่อเข้าใช้ด้วย passkey ซึ่งผู้ใช้อาจเลือกใช้แค่ passkey โดยไม่เปิด MFA เสริมตอนนั้น
รุ่นนี้ได้เพิ่มการควบคุมบัญชีและผู้ดูแลระบบสำหรับ session ของผู้ใช้และแอปพลิเคชันที่ได้รับอนุญาต
Logto ขณะนี้รองรับการจัดการ session ทั้งบน account APIs และ management APIs สามารถดูรายการ sessions ที่ใช้งาน ตรวจสอบรายละเอียดแต่ละ session และยกเลิก session พร้อมทั้งเลือกยกเลิก grant ได้ด้วย
ยังมีการปรับปรุงด้าน:
session ใหม่ใน Account Center มีตัวเลือก off, readOnly และ editurn:logto:scope:sessions สำหรับใช้กับ session ใน account APIบนฝั่ง Console รายละเอียดผู้ใช้จะแสดงเซกชัน Active sessions และหน้ารายละเอียด session พร้อมปุ่มยกเลิก
Logto รองรับแสดงรายการและยกเลิก grant ของแอปพลิเคชันที่ได้รับอนุญาตของผู้ใช้แล้วทั้งทาง account และ management APIs
รุ่นนี้ยังมีเซกชัน Authorized third-party apps ใหม่บนหน้า user details ใน Console ผู้ดูแลสามารถดูการอนุญาตของแอปภายนอก, ตรวจดูเมตาดาต้า (ชื่อแอป เวลาสร้าง), และยกเลิกสิทธิ์จาก UI ได้โดยตรง
แอปพลิเคชันสามารถกำหนดค่า maxAllowedGrants ใน customClientMetadata เพื่อจำกัดจำนวน grant ที่ผู้ใช้สามารถมีในการใช้งานแอปได้ ถ้าเกินขีดจำกัดนี้ Logto จะยกเลิก grant ที่เก่าที่สุดโดยอัตโนมัติ
Console มีเซกชัน Concurrent device limit ในรายละเอียดแอป สามารถตั้งค่าผ่านหน้าจอได้
สำหรับผู้ใช้ OSS รุ่นนี้ทำให้ตั้งค่า OIDC ง่ายและยืดหยุ่นขึ้น
สามารถกำหนด oidc.session.ttl ใน logto-config เพื่อปรับอายุ session ของผู้ให้บริการ OIDC เป็นวินาที หากไม่ได้ตั้ง ค่าเริ่มต้นคือ 14 วัน
เรายังเพิ่ม:
GET /api/configs/oidc/sessionPATCH /api/configs/oidc/sessionบน Console ฝั่ง OSS มีหน้า Tenant -> Settings ใหม่ พร้อมแท็บ OIDC settings แทนหน้าคีย์เซ็นชื่อเก่า หน้าใหม่มีช่อง Session maximum time to live สำหรับปรับ TTL ของ session เป็นวัน
หากใช้งาน OSS อย่าลืมรีสตาร์ท service หลังปรับ config เพื่อโหลดค่า OIDC ใหม่ ถ้าอยากให้ config อัปเดตอัตโนมัติ ให้เปิดใช้งาน central Redis cache
Account Center ที่ใช้งานได้ทันทีนี้ได้รับการปรับปรุงหลายรายการเช่นกันในรุ่นนี้
ผู้ใช้สามารถ:
/authenticator-app/replaceidentifier ใน URL เพื่อเติมข้อมูล identifier ให้ล่วงหน้าui_localesเรายังปรับปรุงฟอร์มรหัสผ่านให้รองรับ browser autofill และ password manager ดียิ่งขึ้น
สำหรับทีมที่นำเข้าผู้ใช้สู่ Logto endpoint GET /users และ GET /users/:userId สามารถใส่ query parameter includePasswordHash ได้แล้ว เมื่อเปิดใช้งาน response จะมี passwordDigest และ passwordAlgorithm เหมาะกับ workflow migration ที่ต้องการ hash รหัสผ่านดิบ
เรายังเพิ่มการรองรับการแลกเปลี่ยน access token ในสถานการณ์ delegate ระหว่าง service Logto สามารถแลกเปลี่ยน access token แบบ opaque หรือ JWT เพื่อนำไปใช้กับ audience อื่น โดยใช้ token type มาตรฐาน urn:ietf:params:oauth:token-type:access_token
รุ่นนี้ยังมีการแก้ไขปัญหาเสถียรภาพและความเข้ากันได้หลายรายการ:
findByUid และ findByUserCode ตอนนี้ใช้ JSONB key แบบ literal เพื่อให้ index แสดงประสิทธิภาพดียิ่งขึ้นภายใต้ plan แบบ generichex: ตอนนำเข้าผู้ใช้To ถูกปรับให้รับกับหมายเลขที่ไม่ใช่ E.164 โดยต้องมี + นำหน้าเสมอรุ่นนี้มีการเปลี่ยนแปลง breaking change ต่อ connector toolkit
การ export mockSmsVerificationCodeFileName ซึ่งถูกเลิกใช้มานาน ถูกลบออกจาก @logto/connector-kit
เราได้อัปเดต path ที่ใช้เก็บข้อความ mock connector ดังนี้:
/tmp/logto_mock_email_record.txt -> /tmp/logto/mock_email_record.txt/tmp/logto_mock_sms_record.txt -> /tmp/logto/mock_sms_record.txtหาก workflow ของคุณ (ทั้ง local หรือ Docker) พึ่งพา path เก่าจะต้องอัปเดต path ตามนี้
ขอบคุณผู้ร่วมสมทบใหม่ทุกคนที่ช่วยพัฒนา Logto:
พร้อมอัปเกรดแล้วหรือยัง? อ่าน คู่มืออัปเกรด ของเราเพื่อดูขั้นตอนแบบละเอียด
ดูรายการเปลี่ยนแปลงทั้งหมดได้ที่ GitHub release page
มีคำถามหรือข้อเสนอแนะ? เข้าร่วมกับเราที่ Discord หรือเปิด issue ที่ GitHub