AM
TH
เริ่มต้นฟรี
เมนู
คุณสมบัติ

การเชื่อมต่อ Backend

การตรวจสอบโทเคนผ่าน JWKS และ OIDC discovery สำหรับบริการ backend ของคุณ

backend jwt jwks verification oidc

การเชื่อมต่อ Backend

AM เปิดเผย public key ผ่าน JWKS และคอนฟิกผ่าน OIDC discovery ซึ่งเป็นโปรโตคอลมาตรฐานที่ไลบรารี JWT ส่วนใหญ่รองรับ

ตรวจสอบโทเคนแบบ local เชื่อถือ claims และอนุญาตคำขอได้ทันที

ขั้นตอนการตรวจสอบโทเคน

AMแบ็กเอนด์ของคุณไคลเอนต์AMแบ็กเอนด์ของคุณไคลเอนต์GET /.well-known/jwks.json (cached)คีย์สาธารณะคำขอ + โทเค็น Bearerตรวจสอบลายเซ็น JWT ในเครื่องCheck exp, aud, scopeผลลัพธ์

Endpoints

Endpointวัตถุประสงค์
/.well-known/jwks.jsonกุญแจสาธารณะสำหรับลงลายเซ็น
/.well-known/openid-configurationเอกสาร OIDC discovery
/oauth2/introspectตรวจสอบ refresh token

JWKS

ดึง public key เพื่อใช้ตรวจสอบแบบ local:

GET /.well-known/jwks.json
{
  "keys": [
    {
      "kty": "RSA",
      "use": "sig",
      "kid": "key_...",
      "alg": "RS256",
      "n": "0vx7agoebG...",
      "e": "AQAB"
    }
  ]
}

ระหว่างการหมุนคีย์อาจมีหลายคีย์พร้อมกัน ให้จับคู่ด้วย claim kid ใน JWT header

OIDC Discovery

ตั้งค่าไคลเอนต์อัตโนมัติจาก discovery document:

GET /.well-known/openid-configuration

จะส่งคืน endpoints, algorithms ที่รองรับ และความสามารถต่าง ๆ ตามสเปก OpenID Connect Discovery

JWT Claims

โทเคนที่ตรวจสอบแล้วจะมีข้อมูล:

Claimคำอธิบาย
issURL ของผู้ออกโทเคน
subSubject (user ID หรือ client ID)
audกลุ่มเป้าหมายของโทเคน
expเวลาหมดอายุ (Unix timestamp)
iatเวลาออกโทเคน (Unix timestamp)
scopeสิทธิ์ที่ได้รับ
cidClient ID
appApplication ID
accCurrent account ID
uidUser ID (เมื่อเป็นผู้ใช้ที่ auth แล้ว)
roleบทบาทในบัญชีปัจจุบัน

แคช

  • แคชผลลัพธ์ JWKS (ใช้ ETag/If-None-Match)
  • รีเฟรชเมื่อการตรวจสอบลายเซ็นล้มเหลว (กรณีหมุนคีย์)
  • TTL ทั่วไป: 1 ชั่วโมง

Token Introspection

สำหรับ refresh token หรือกรณีที่ต้องการการตรวจสอบแบบ authoritative:

POST /oauth2/introspect
Content-Type: application/x-www-form-urlencoded

token=...&client_id=...&client_secret=...

ผลลัพธ์จะมี active: true/false และ claims ของโทเคน ส่วน access token เป็น JWT จึงควรตรวจสอบแบบ local ผ่าน JWKS เมื่อเป็นไปได้

ที่เกี่ยวข้อง

  • OAuth - การออกโทเคน
  • ไคลเอนต์ - การตั้งค่าไคลเอนต์
  • Client Key - คีย์สำหรับลงลายเซ็น