⚪JSON Web Token
Authentication
โดยปกติเวลาผู้ใชงาน User จะเข้าใช้งานระบบ Login จะมีการรักษาความปลอดภัย ว่าผู้ใช้งานนั้นมีสิทธิ์ในการเข้าถึงระบบจริง ซึ่งจะใช้การ Authentication จะอาศัย Parameter แบบ Post 2 ตัว ซึ่งก็คือ Username และ Password หรือจะใช้ Email กับ Password ก็ได้ เมื่อ Client ส่งค่า Parameter ไป ทาง Server ก็จะตอบ Response กลับมา
Session

หลังจากที่เราทำการ Authentication ครั้งแรก จะมีการสร้าง Session ของแต่ละ User ขึ้นมา เพื่อให้ผู้ใช้งานไม่ต้องทำการ Authentication อีก โดย Session จะเก็บอยู่บน Memory ของ Server ส่วน Cookie จะเก็บอยู่บน Browser ของ Client จนกว่าผู้ใช้งานจะทำการ Logout จึงจะทำลาย Session นั้นทิ้งไป หรือจนกว่า Session Expire ตามระยะเวลาที่ได้กำหนด
Token

JSON Web Token

JWT เป็นมาตรฐานในการส่งข้อมูลระหว่าง Parties ต่าง ๆ โดยจะมีขนาดกะทัดรัด Compact และก็บข้อมูลในตัว Self-Contained ซึ่งจะใช้ HMAC Algotithm ในการเข้ารหัส หรือจะใช้ Key Pair อย่าง RSA หรือ ECDSA ที่เป็น Public Key / Private Key ก็ได้ โดยจะประกอบไปด้วย 3 ส่วน คือ
เมื่อทำการ Encode แต่ะละส่วนด้วย Base64Url แล้วรวมทั้ง 3 ส่วนเข้าด้วยกัน จะได้รหัสขึ้นมาชุดหนึ่ง
xxxxx.yyyyy.zzzzz
JWT Debugger

Comparison
นอกจากการใช้ JWT แล้ว ยังมี Service ที่คล้ายกันได้แก่ Simple web Token ( SWT ) และ Security Assertion Markup Language Tokens ( SAML )
เราสามารถใช้ JWT Debugger ในการ Encode หรือ Decode ข้อมูล Header กับ Payload ได้ และยังสามารถใช้ในการตรวจสอบ Signature Verified ได้อีกด้วย
อ่านเพิ่มเติม : https://bit.ly/20I8XQq, https://bit.ly/2Zguf8J, https://bit.ly/31MyJ8A, https://bit.ly/31P0PjE, https://bit.ly/31LwDWp
Last updated
Was this helpful?