![[17.0.0.3 以及更新版本]](../ng_v17003plus.gif)
配置 MicroProfile JSON Web 記號
您可以配置 Liberty 伺服器,以接受 MicroProfile JSON Web 記號作為鑑別記號。
開始之前
關於這項作業
MicroProfile 1.2 定義了可交互作業的 JSON Web 記號 (MP-JWT) 標準,其中包含三部分:
- 記號格式和聲明
- org.eclipse.microprofile.jwt.JsonWebToken 介面,這是 java.security.Principal 介面的延伸,會透過 get style 存取元來提供這組聲明
- 將 JSON Web 記號和聲明對映至各種不同的 Java EE 儲存器應用程式設計介面 (API)
在 JWT RBAC for MicroProfile 尋找 MP-JWT 規格和 API。
任何授信方只要獲得 MP-JWT 記號,即可經由授權標頭傳送該記號,以利用該記號來存取 Liberty 中的相關聯資源。記號的發訊格式必須遵循 RFC 6750 規格 The OAuth 2.0 Authorization Framework: Bearer Token Usage,如下列範例所示:
GET /resource/1 HTTP/1.1
Host: example.com
Authorization: Bearer <MP-JWT token>
Liberty 資源伺服器會驗證 MP-JWT 記號,建立已鑑別的 JSON Web 記號,並透過 CDI 注入或 JAX-RS 安全環境定義,來提供
JSON Web 記號和記號聲明。如果要接受作為 MP-JWT 記號,JWT 記號必須包含聲明清單。下列範例顯示 MP-JWT 記號:
{
"typ": "JWT",
"alg": "RS256",
"kid": "abc-1234567890"
}
{
"iss": "https://server.example.com",
"aud": "s6BhdRkqt3",
"jti": "a-123",
"exp": 1311281970,
"iat": 1311280970,
"sub": "24400320",
"upn": "jdoe@server.example.com",
"groups": ["red-group", "green-group", "admin-group", "admin"],
}