ตั้งค่า JWT

Token ที่สร้างแล้ว

ผลลัพธ์ JWT

สร้าง token เพื่อดูผลลัพธ์ที่นี่

ตัวอย่างส่วนที่ถูกเข้ารหัส

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwicm9sZSI6ImFkbWluIiwiaWF0IjoxNzE2MjM5MDIyLCJleHAiOjE3MTYyNDI2MjJ9.signature

Header

{
  "alg": "HS256",
  "typ": "JWT"
}

Payload

{
  "sub": "1234567890",
  "name": "John Doe",
  "role": "admin",
  "iat": 1716239022,
  "exp": 1716242622
}

ให้ความสำคัญกับความเป็นส่วนตัว

Token ถูกสร้างทั้งหมดในเบราว์เซอร์ของคุณด้วย Web Crypto API ไม่มีการส่ง header, payload หรือ secret key ไปยังเซิร์ฟเวอร์ใดๆ

วิธีใช้งาน

  1. เลือกอัลกอริทึมสำหรับการเซ็น token
  2. ใส่ secret key สำหรับอัลกอริทึม HMAC
  3. แก้ไข JSON ใน header และ payload
  4. กด Generate JWT แล้วคัดลอก token ที่ได้

คู่มือการสร้าง JWT

เครื่องมือสร้าง JWT นี้ทำอะไรได้บ้าง

เครื่องมือนี้สร้าง JSON Web Token (JWT) ในเบราว์เซอร์ของคุณโดยตรง คุณสามารถปรับ JSON ของ header และ payload เลือกอัลกอริทึมการเซ็น และสร้าง token สำหรับทดสอบระบบ authentication และ authorization ได้อย่างรวดเร็ว

อัลกอริทึมที่รองรับ

HS256

HMAC กับ SHA-256 นิยมใช้สำหรับการเซ็น JWT ระดับแอปด้วย shared secret

HS384

HMAC กับ SHA-384 เหมาะเมื่อคุณต้องการ hash ที่แข็งแรงกว่า HS256

HS512

HMAC กับ SHA-512 ให้ signature ที่ยาวกว่า และมักใช้ในงานที่ต้องการความปลอดภัยสูงขึ้น

none

token แบบไม่เซ็นสำหรับทดสอบในเครื่องเท่านั้น ห้ามใช้กับระบบ authentication จริงบนโปรดักชัน

JWT claims ที่มักเพิ่มใน payload

  • iss: ตัวระบุผู้ออก token หรือระบบที่สร้าง token
  • sub: ตัวระบุ subject โดยมากคือ user ID
  • aud: ผู้รับที่ token นี้ตั้งใจให้ใช้ เช่น API, service หรือ app
  • exp: เวลาหมดอายุในรูปแบบ Unix seconds
  • iat: เวลาที่ออก token
  • nbf: เวลาที่ token เริ่มใช้งานได้
  • jti: รหัส token ที่ไม่ซ้ำ สำหรับช่วยป้องกัน replay

แนวทางที่ดีในการสร้าง JWT

  • ใช้ secret ที่แข็งแรงและมี entropy สูงสำหรับการเซ็นแบบ HMAC
  • กำหนดอายุ token ให้สั้น เช่น 15 นาที
  • หลีกเลี่ยงการใส่ข้อมูลอ่อนไหวใน payload claims
  • ตรวจ signature, issuer, audience และวันหมดอายุบนเซิร์ฟเวอร์เสมอ
  • ส่ง token ผ่าน HTTPS ทุกครั้ง

ความเป็นส่วนตัวและการประมวลผลในเครื่อง

การสร้าง token ทั้งหมดทำงานในเบราว์เซอร์ของคุณด้วย Web Crypto API ข้อมูล header, payload และ secret key จะไม่ถูกส่งไปยังเซิร์ฟเวอร์ของเรา

เข้าใจ JWT ก่อนเริ่มสร้าง token

ต้องการปูพื้นอย่างรวดเร็วก่อนใช้งานไหม? คู่มือนี้อธิบายว่า JWT คืออะไร ส่วนต่างๆ ของ token ทำงานอย่างไร และควรระวังปัญหาความปลอดภัยแบบไหน

อ่าน: JWT คืออะไร?

เครื่องมือด้านความปลอดภัยที่เกี่ยวข้อง