隨手扎
【用Keycloak學習身份驗證與授權26】User & Group
帳號(User)
基本訊息
接著來看看與帳號有關的設定。
在之前,已經建立過一帳號–bob
。過去學習實驗,也都以bob驗證身份。接著我們要來更新一下這個帳號。
首先看一下基本訊息:
來添加一些資訊:
- Email:
bob@fake.email
- First Name:
Bob
- Last Name:
Lee
- Email Verified:
ON
此外,可以要求使用者在必須做一些事情,譬如:驗證信箱、更新密碼、更新個人資訊等。
再次登入到應用–「快速開始」,可以看到有一些訊息也有些不同了。
帳號屬性
接著來添加一些額外屬性:
- birthdate:
2021/10/03
- gender:
man
- middleName:
J
- nickname:
小明
- picture:
https://cdn.pixabay.com/photo/2013/07/13/10/07/man-156584_960_720.png
- website:
https://bob.id
同樣可以在「快速開始」看到這些改變:
登入會話管理
接著到 Session 頁籤看看:
在這裏,可以強制將一些已經登入的設備、會話登出。
授權管理
在 Consents 頁籤,可以看到目前已經授權的應用(Client)。
群組(Group)
Group 在本系列之後並不會太常用,實際上能講的東西也不多。可以想象 User 代表個人, Group 代表社團。 個人可以加入多個社團,並且擁有一些社團的屬性。最重要的是,這意味著加入同一個社團的每個人,擁有一些相似的屬性。
建立Group
透過管理界面的左方 Groups 選項,然後按下「New」。
同樣只需要設定一個簡單的Group Name: Group A
接著頁面會有更多可以設定的
可以透過 Attributes 建立一些加入該Group的共同屬性。
將帳號加入群組
要將帳號加入帳號群組也不難。在帳號相關設定頁面的「Groups」頁籤,在 Available Groups 選擇「Grouop A」,然後按下「join」。如此就會將帳號加入可用的Group – Group A。
不但在帳號設定資訊上的 Group Membership 部門會顯式已加入的 Group - Group A 。在 Group A 的設定頁面的 Members 頁籤,同樣可以看到已經加入的帳號 – bob 。
帳號擁有者自行管理
在之前,也已經看過帳號擁有者自行管理帳號訊息的客戶端。這是在建立Realm後,Keycloak自動建立的Client,提供給帳號擁有者本身管理帳號。現在可以透過 http://localhost:8080/auth/realms/quick-start/account/ 這個URL使用這個應用。
更新基本資訊
首先,同樣來看看基本資訊。 點選「Personal Info」:
在這個部份可以字型更新Email、First Name和Last Name。
雙因子驗證(2FA)
此外,還可以設定2FA,在下次登入時,必須有二階段驗證。來建立OTP吧!
這次在「Account Security > Signing in」功能裡關於2FA的部分,點選「Set up Authenticator Application」。
在要求登入後,會顯式一個QR Code。你可以透過FreeOTP或是Google Authenticator等行動裝置的應用掃描QR Code。將QR Code裡所儲存的資訊加入到應用中,接著應用會顯示OTP,將這6個數字填入「One-time code」欄位。然後在「Device Name」填入自己可以識別行動裝置的名字。
最後頁面會呈現下面樣子:
同樣在帳號管理界面上,「Credentials」的頁籤同樣會出現otp的相關設定。