成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

開源認證授權管理平臺Keycloak初體驗

開源
因為事先已經知道Keycloak提供了Spring Security的適配器。先獨立把Keycloak的核心概念弄清楚,然后再去研究它如何結合Spring Security的。

[[409672]]

 上一篇文章簡單介紹了Keycloak,反響不錯。看來大家都對這個東西感興趣,今天就來進一步的體驗Keycloak,讓我們對它有一個直觀的認識,然后逐步深入,把它的設計理念和概念各個擊破。

總體思路

因為事先已經知道Keycloak提供了Spring Security的適配器。先獨立把Keycloak的核心概念弄清楚,然后再去研究它如何結合Spring Security的。

安裝Keycloak

本文的Keycloak版本為 14.0.0。

我向來不喜歡在安裝上浪費時間,研究階段能用Docker來安裝是最省心的。

  1. docker run -d -p 8011:8080 --name keycloak-server  -e KEYCLOAK_USER=admin -e KEYCLOAK_PASSWORD=admin jboss/keycloak 

執行上述命令安裝Keycloak,成功后打開http://localhost:8011/auth/admin輸入賬號admin和密碼admin,就進入了管理控制臺。如果你感覺英文不爽可以根據下圖改成中文:

中文界面的修改

改完之后你隨便點點欄目了解一下,想象一下它們各自的功能和作用,這時候你要放輕松點不用想的太深就是了解一下全貌。

Realm

如果你接觸過知名安全框架Shiro相信對這個概念不會陌生。realm是管理用戶和對應應用的空間,有點租戶的味道,可以讓不同realm之間保持邏輯隔離的能力。

默認情況下,Keycloack提供了一個叫Master的realm,這個Master不承擔具體應用和用戶的管理,它只用來管理其它realm的生命周期。

Master域的管理職能示意圖

登入Master的realm創建一個自定義域felord.cn。

創建自定義域

User

User是能夠登錄到應用系統的實體,其實可以理解為賬戶。他們可以擁有與自己相關的屬性,例如電子郵件、用戶名、地址、電話號碼和生日。可以為他們分配組成員身份并為其分配特定的角色。Keycloak中的User都有他們從屬的realm。接下來在我上面的自定義域felord.cn中新建一個用戶,步驟為:

  • 菜單欄找到管理->用戶,然后打開添加用戶。
  • 鍵入唯一的必填項用戶名(username)。
  • 開啟(ON)郵件認證(Email Verified(,然后保存。
  • 點擊憑據(Credentials)選項卡為新用戶設置臨時密碼。此密碼是臨時的,用戶將需要在第一次登錄時更改它。如果您更喜歡創建永久密碼,請將臨時開關切換到關閉并單擊設置密碼。

然后注銷當前用戶admin并到http://localhost:8011/auth/realms/felord.cn/account以剛創建的用戶felord的身份登錄到felord.cn域。

有沒有發現登錄鏈接的特點?

到這里一個創建realm和賬戶的流程就熟悉完了,不過我相信大多數同學看到這里還是懵逼的。怎么就手動了呢?不要急后面會結合代碼來實現上述的流程以及更加符合應用場景的流程。

Keycloak的核心概念

接下來是我們在使用Keycloak時需要掌握的一些概念,上面已經提到了realm和user,這里就不再贅述了

authentication

識別和驗證用戶的過程。證明“你說的這個你就是你”。

authorization

授予用戶訪問權限的過程。表明“你可以干什么、不可以干什么”。

credentials

證明用戶身份的憑證。可能是密碼、一次性密碼、數字證書以及指紋。

roles

角色是RBAC的重要概念,用于表明用戶的身份類型。

user role mapping

用戶角色映射關系。通常一個用戶可能有多個角色,一個角色也可以對應不同的人。

composite roles

復合角色,聽起來很玄乎,其實就是角色的從屬關系或者說繼承關系。B角色從屬于A角色,那么你擁有了A角色就一定擁有B角色的權限。

groups

用戶組,你可以將一系列的角色賦予定義好的用戶組,一旦某用戶屬于該用戶組,那么該用戶將獲得對應組的所有角色權限。

clients

客戶端。通常指一些需要向Keycloack請求以認證一個用戶的應用或者服務,甚至可以說尋求Keycloack保護并在Keycloack上注冊的請求實體都是客戶端。

client adapters

Keycloack為了支持多語言和跨平臺而設計的適配器,比如適配Java的、適配Python的。有些是內置的實現,有些需要我們按照Keycloack的抽象定義來實現。后續我們主要和Spring Boot Adapter打交道。

identity provider

用來認證用戶的服務,簡稱IDP。Keycloack本身就是一個IDP。這個類似Spring Security中的AuthenticationProvider接口。

還有一些概念等遇到了會再補充,有點多,先消化消化。

總結

今天這一篇主要對Keycloack進行一個初步的體驗,搭建了一個開發環境供后續的學習,同時對Keycloack的一些核心概念進行了匯總。不過由于篇幅限制沒有完全的去梳理一些概念,不過學習都是循序漸進的,急不得。自定義realm和用戶都建好了,下一篇我將嘗試用Keycloack來保護Spring Boot應用。業余時間,碼字不易,還請多多關注,大力支持一下作者。

本文轉載自微信公眾號「碼農小胖哥」,可以通過以下二維碼關注。轉載本文請聯系碼農小胖哥公眾號。

 

責任編輯:武曉燕 來源: 碼農小胖哥
相關推薦

2021-07-06 07:21:16

Spring 安全平臺

2023-08-07 08:48:13

2021-08-03 22:51:05

Keycloak授權服務器

2009-08-01 09:06:35

UbuntuOneLinux開源操作系統

2009-03-09 15:12:39

XenServer安裝

2009-09-21 13:40:57

虛擬化管理微軟SCVMM

2023-07-15 08:01:38

2015-01-13 10:01:03

AWS市場亞馬遜云平臺

2010-11-22 10:31:17

Sencha touc

2011-05-30 15:12:10

App Invento 初體驗

2022-02-18 08:34:33

JavaSa-Token項目

2009-11-30 10:09:02

谷歌Chrome OS

2011-08-02 10:26:59

iOS 多線程 線程

2011-11-01 10:30:36

Node.js

2013-06-08 10:15:29

Outlook 201Outlook 201

2011-09-15 15:03:10

2010-12-13 11:39:39

2025-03-18 07:30:41

2022-02-21 10:17:33

Rancher開源云原生

2017-09-05 05:55:24

AWS ES集群大數據
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产美女h视频 | 欧美不卡| 羞羞视频网站免费看 | 国产精品69毛片高清亚洲 | 中文字幕第一页在线 | 国产免费一区二区三区免费视频 | 亚洲国产黄 | 国产精品久久久久一区二区三区 | 日本电影一区二区 | 在线免费小视频 | 国产精品久久久久久久一区二区 | 国产91久久久久久 | 国产精品九九九 | 国产一区 日韩 | 国产精品视频网 | 久草视| 中文字幕日韩一区 | 久久亚洲国产 | 一区二区三区日 | 狠狠涩 | 日日拍夜夜 | 久久久精品久久 | 欧美国产亚洲一区二区 | 日韩精品免费一区二区在线观看 | 日本电影韩国电影免费观看 | 日本淫视频| 91麻豆精品国产91久久久久久久久 | 激情国产| 亚洲精品区 | 亚洲精品9999久久久久 | 四虎永久免费影院 | 亚洲一区二区中文字幕在线观看 | 国产成人高清在线观看 | 久久久久久精 | 特级一级黄色片 | 九九免费视频 | 日韩欧美国产一区二区三区 | 久久精品国产一区二区电影 | 日韩欧美一区在线 | h视频免费在线观看 | 精品一区二区三区在线观看 |