[英]How to get token_id and access_token values from Angular Session object
[英]Get client session id from Keycloak access token
在參考Keycloak的帳戶鏈接文檔時 ,我需要從訪問令牌中獲取用戶會話ID和客戶端會話ID 。
但是,我只能通過查看他們的javascript適配器源代碼找到他們在令牌上調用session_state
東西,這顯然與sessionId
相同。
我估計這是他們所指的用戶會話ID ? 如果是這樣,我在哪里可以找到這個所謂的客戶會話ID ?
原來它是客戶端ID。 所以像這樣的東西應該工作:
從訪問令牌中提取用戶會話ID和客戶端會話ID(“aud”是客戶端ID):
const { session_state, aud } = JSON.parse(decodeURIComponent(escape(atob(accessToken.split('.') [1]))))
創建base64哈希:
Base64.stringify(sha256(nonce + session_state + aud + 'facebookOrWhatever'))
您還需要使得生成的base64編碼哈希url友好(即'+'和'/'替換為' - ','_'也刪除任何尾隨'='字符)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.