成人免费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

2010-11-22 10:31:17

Sencha touc

2011-05-30 15:12:10

App Invento 初體驗

2015-01-13 10:01:03

AWS市場亞馬遜云平臺

2022-02-18 08:34:33

JavaSa-Token項目

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

2009-11-30 10:09:02

谷歌Chrome OS

2022-02-21 10:17:33

Rancher開源云原生

2017-09-05 05:55:24

AWS ES集群大數據
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 2一3sex性hd | 日韩精品一区二区三区在线播放 | 久久一区二区av | 国产精品国产三级国产aⅴ无密码 | 九九热热九九 | 国产精品久久久久久久免费大片 | 日韩一级 | 久久久久久久国产精品影院 | 欧美网址在线观看 | 五月天国产在线 | 亚洲精品三级 | 日韩视频在线免费观看 | 久久草在线视频 | 黄色网址在线免费播放 | 亚洲网站在线观看 | 91在线视频免费观看 | 欧美黑人体内she精在线观看 | 欧美久久久久久久 | 欧美精品a∨在线观看不卡 国产精品久久国产精品 | 91精品国产高清一区二区三区 | 中文字幕日本一区二区 | 97视频成人 | 亚洲精品电影网在线观看 | 日本一区二区不卡视频 | 国产一区二区视频在线 | 午夜精品一区二区三区在线观看 | 色姑娘综合网 | 亚洲成av人片在线观看无码 | 喷潮网站 | 国产视频久久久 | 日韩高清成人 | 琪琪午夜伦伦电影福利片 | 久久99精品久久久 | 欧洲精品久久久久毛片完整版 | 国产91丝袜| 国产在线观看一区二区三区 | 国产成人精品在线 | 精品一区在线 | 欧美一级电影免费 | 亚洲国产精品激情在线观看 | 国产色片在线 |