国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Camunda8微服務(wù)流程引擎搭建實(shí)戰(zhàn) -- camunda-identity接入keycloak,使用mysql數(shù)據(jù)庫(kù)以O(shè)penID Connect的方式實(shí)現(xiàn)用戶的權(quán)限管理

這篇具有很好參考價(jià)值的文章主要介紹了Camunda8微服務(wù)流程引擎搭建實(shí)戰(zhàn) -- camunda-identity接入keycloak,使用mysql數(shù)據(jù)庫(kù)以O(shè)penID Connect的方式實(shí)現(xiàn)用戶的權(quán)限管理。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

準(zhǔn)備需要:

docker最新版,camunda官方建議使用容器且最好能使用k8s,而且jar包啟動(dòng)失敗時(shí)不能停止
mysql8.0+,keycloak默認(rèn)使用postgresql,我不會(huì)
提前啟動(dòng)好其他組件,es,tasklis,operate,zeebe,偷個(gè)懶,我使用的jar包運(yùn)行,也可以容器
組件下載地址,版本8.3.4
因?yàn)槿萜魍ㄐ诺膯?wèn)題(應(yīng)該是通信/網(wǎng)絡(luò)的問(wèn)題),我使用了局域網(wǎng)ip,而非localhost

identity是什么?

Identity是Camunda8部署負(fù)責(zé)身份驗(yàn)證和授權(quán)的標(biāo)識(shí)組件,可以管理的有:

- Applications 
- APIs
- Permissions
- Roles

Identity不是comunda8必要的6個(gè)組件(官網(wǎng)列出來(lái)的,但是如果使用Self-Managed也那就是8個(gè)組件),我搭建身份認(rèn)證系統(tǒng)是因?yàn)槭褂胾ser-service創(chuàng)建表單時(shí)看到了用戶授權(quán)的字段

什么是keycloak?

keycloak是一款開(kāi)源的功能豐富、易用且靈活的身份和訪問(wèn)管理軟件,為開(kāi)發(fā)人員提供了快速集成身份認(rèn)證、授權(quán)和用戶管理的解決方案

特點(diǎn)和功能
  1. 單點(diǎn)登錄(Single Sign-On,SSO):Keycloak支持SSO,用戶只需登錄一次,即可訪問(wèn)多個(gè)通過(guò)Keycloak保護(hù)的應(yīng)用程序。
  2. 集中式身份認(rèn)證和授權(quán):Keycloak充當(dāng)一個(gè)認(rèn)證和授權(quán)服務(wù)器,負(fù)責(zé)在不同應(yīng)用程序間驗(yàn)證用戶身份和授權(quán)訪問(wèn)權(quán)限。
  3. 多種身份驗(yàn)證方式:Keycloak支持多種身份驗(yàn)證方式,如用戶名/密碼、LDAP、Active Directory、社交登錄(Google、Facebook等)、OpenID Connect等。
  4. 用戶管理和組織結(jié)構(gòu):Keycloak提供了用戶管理和組織結(jié)構(gòu)管理功能,包括用戶創(chuàng)建、更新、刪除,以及組織結(jié)構(gòu)的定義和管理。
  5. 多因素身份驗(yàn)證(Multi-Factor Authentication,MFA):Keycloak支持多因素身份驗(yàn)證,增加了額外的安全層,如短信驗(yàn)證碼、電子郵件驗(yàn)證碼等。
  6. 客戶端適配器:Keycloak提供了各種客戶端適配器,使得應(yīng)用程序能夠與Keycloak進(jìn)行無(wú)縫集成,實(shí)現(xiàn)身份認(rèn)證和授權(quán)。
  7. 客戶端角色和權(quán)限管理:Keycloak允許定義和管理客戶端角色和權(quán)限,精確控制用戶對(duì)特定資源的訪問(wèn)權(quán)限。
  8. 基于標(biāo)準(zhǔn)的協(xié)議支持:Keycloak支持OpenID Connect、OAuth 2.0、SAML2.0等開(kāi)放標(biāo)準(zhǔn)協(xié)議,與其他標(biāo)準(zhǔn)兼容的應(yīng)用程序進(jìn)行集成。

準(zhǔn)備需要

camunda8版本對(duì)照,要求keycloak為21.x, 22.x,我用過(guò)的版本為22.0.5

Camunda8微服務(wù)流程引擎搭建實(shí)戰(zhàn) -- camunda-identity接入keycloak,使用mysql數(shù)據(jù)庫(kù)以O(shè)penID Connect的方式實(shí)現(xiàn)用戶的權(quán)限管理,中間件,后端,低代碼

keycloak版本要求22.0.5,對(duì)應(yīng)數(shù)據(jù)庫(kù)版本,mysql8.0

Camunda8微服務(wù)流程引擎搭建實(shí)戰(zhàn) -- camunda-identity接入keycloak,使用mysql數(shù)據(jù)庫(kù)以O(shè)penID Connect的方式實(shí)現(xiàn)用戶的權(quán)限管理,中間件,后端,低代碼

開(kāi)始集成

keyclock
  • 拉取keycloak鏡像

    docker pull keycloak/keycloak:22.0.5
    
  • 創(chuàng)建數(shù)據(jù)庫(kù)
    這里要注意,我使用的是mysql,因?yàn)樽址团判蛞?guī)則的問(wèn)題,需要設(shè)置為utf8/utf8_unicode_ci,否則會(huì)因?yàn)?行"字段長(zhǎng)度過(guò)長(zhǎng),注意,是"行"字段長(zhǎng)度問(wèn)題
    不需要?jiǎng)?chuàng)建表,keycloak第一次啟動(dòng)時(shí)會(huì)自己創(chuàng)建表

  • 啟動(dòng)命令

    docker run -d -p 18080:8080 \
    --name keycloak -p 18443:8443 \
    -e KEYCLOAK_ADMIN=admin \
    -e KEYCLOAK_ADMIN_PASSWORD=admin \
    -e KC_HTTP_PORT=8080 \
    -e KEYCLOAK_DATABASE_VENDOR=mysql \
    -e KC_DB=mysql \
    -e KC_DB_DRIVER=com.mysql.cj.jdbc.Driver \
    -e KC_TRANSACTION_XA_ENABLED=false \
    -e KC_DB_USERNAME=root \
    -e KC_DB_PASSWORD=12345678 \
    -e KC_DB_URL='jdbc:mysql://192.168.2.205:3306/keycloak?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=UTF-8&useSSL=false&allowPublicKeyRetrieval=true&autoReconnect=true' \
    keycloak/keycloak:22.0.5 start-dev \
    
  • 注意事項(xiàng)
    18080是對(duì)外暴露的端口,給identity使用
    然后默認(rèn)管理員密碼
    設(shè)置mysql數(shù)據(jù)庫(kù),驅(qū)動(dòng),關(guān)閉 XA 事務(wù)(分布式事務(wù))

    數(shù)據(jù)庫(kù)配置鏈接
    https://www.keycloak.org/server/db

  • 配置權(quán)限
    camunda添加已存在keycloak服務(wù)的地址
    https://docs.camunda.io/docs/self-managed/identity/user-guide/configuration/connect-to-an-existing-keycloak/
    說(shuō)明一下,identity官網(wǎng)的配置有問(wèn)題,只能作為參考

    1. 首先創(chuàng)建一個(gè)名為camunda-platform的realm,realm可以看做是機(jī)構(gòu)或者"工作空間"
      Camunda8微服務(wù)流程引擎搭建實(shí)戰(zhàn) -- camunda-identity接入keycloak,使用mysql數(shù)據(jù)庫(kù)以O(shè)penID Connect的方式實(shí)現(xiàn)用戶的權(quán)限管理,中間件,后端,低代碼

    2. 創(chuàng)建名為camunda-identity的client,下一步
      Camunda8微服務(wù)流程引擎搭建實(shí)戰(zhàn) -- camunda-identity接入keycloak,使用mysql數(shù)據(jù)庫(kù)以O(shè)penID Connect的方式實(shí)現(xiàn)用戶的權(quán)限管理,中間件,后端,低代碼

    3. 啟用Client authentication,選擇 Service accounts roles,下一步
      Camunda8微服務(wù)流程引擎搭建實(shí)戰(zhàn) -- camunda-identity接入keycloak,使用mysql數(shù)據(jù)庫(kù)以O(shè)penID Connect的方式實(shí)現(xiàn)用戶的權(quán)限管理,中間件,后端,低代碼

    4. 配置root url,也就是identity的地址,保存
      就配置一個(gè)就可以了,其他信息會(huì)有默認(rèn)信息的,等到identity啟動(dòng)后會(huì)創(chuàng)建一些列的權(quán)限和配置
      Camunda8微服務(wù)流程引擎搭建實(shí)戰(zhàn) -- camunda-identity接入keycloak,使用mysql數(shù)據(jù)庫(kù)以O(shè)penID Connect的方式實(shí)現(xiàn)用戶的權(quán)限管理,中間件,后端,低代碼

    5. 選擇Service account roles選項(xiàng)卡,點(diǎn)擊Assign role ,在彈窗中修改Fileter by roles為Filter by clients,選中manage-realm,manage-users,manage-clients, 點(diǎn)擊Assign
      Camunda8微服務(wù)流程引擎搭建實(shí)戰(zhàn) -- camunda-identity接入keycloak,使用mysql數(shù)據(jù)庫(kù)以O(shè)penID Connect的方式實(shí)現(xiàn)用戶的權(quán)限管理,中間件,后端,低代碼

    6. 點(diǎn)擊Credentials,復(fù)制保存IDENTITY_CLIENT_SECRET,在下邊啟動(dòng)identity使用
      坑人的部分來(lái)了,官網(wǎng)沒(méi)有提到的地方,這個(gè)步驟可以在identity啟動(dòng)后設(shè)置

    7. 創(chuàng)建用戶,這個(gè)是作為identity的管理用戶,否則啟動(dòng)identity后沒(méi)有用戶進(jìn)入不了
      我默認(rèn)為camunda了,選擇role mapping選項(xiàng)卡,根據(jù)client分配角色
      這里有個(gè)問(wèn)題,可能有的權(quán)限還沒(méi)有,這個(gè)可以在identity啟動(dòng)后再設(shè)置
      Camunda8微服務(wù)流程引擎搭建實(shí)戰(zhàn) -- camunda-identity接入keycloak,使用mysql數(shù)據(jù)庫(kù)以O(shè)penID Connect的方式實(shí)現(xiàn)用戶的權(quán)限管理,中間件,后端,低代碼

    8. 添加identity providers(這個(gè)也是沒(méi)有提到的地方)

       選擇Keycloak OpenID Connect 或者OpenID Connect
       Discovery endpoint:
       http://192.168.2.106:18080/realms/camunda-platform/.well-known/openid-configuration
       Client ID: camunda-identity
       Client Secret: 這個(gè)就是上邊保存的秘鑰
      
identity
  • 拉取鏡像

    默認(rèn)最新版,或者自己指定版本也行
    docker pull camunda/identity
    

    這里默認(rèn)其他camundaz組件都是按照官方配置默認(rèn)接口啟動(dòng)的

  • 變量配置
    官方啟動(dòng)配置變量
    https://docs.camunda.io/docs/self-managed/identity/deployment/configuration-variables/
    這里要注意三個(gè)變量值,官網(wǎng)提供的有問(wèn)題,沒(méi)有/auth
    KEYCLOAK_URL
    IDENTITY_AUTH_PROVIDER_BACKEND_URL
    IDENTITY_AUTH_PROVIDER_ISSUER_URL

  • 啟動(dòng)命令

    docker run -d --name camunda-identity1 \
    -p 8080:8080 camunda/identity \
    java -jar /app/identity.jar \
    --KEYCLOAK_URL=http://192.168.2.106:18080 \
    --KEYCLOAK_REALM=camunda-platform \
    --KEYCLOAK_SETUP_CLIENT_ID=camunda-identity \
    --KEYCLOAK_SETUP_REALM=master \
    --KEYCLOAK_SETUP_USER=admin \
    --KEYCLOAK_SETUP_PASSWORD=admin \
    --IDENTITY_CLIENT_ID=camunda-identity \
    --IDENTITY_CLIENT_SECRET=3fZ15uFCODaMTiZbUx7vNfqz7FO6oDCV \
    --IDENTITY_DATABASE_HOST=192.168.2.205 \
    --IDENTITY_DATABASE_PORT=3306 \
    --IDENTITY_DATABASE_NAME=keycloak \
    --IDENTITY_DATABASE_USERNAME=root \
    --IDENTITY_DATABASE_PASSWORD=12345678 
    --IDENTITY_AUTH_PROVIDER_BACKEND_URL=http://192.168.2.106:18080/realms/camunda-platform \
    --IDENTITY_AUTH_PROVIDER_ISSUER_URL=http://192.168.2.106:18080/realms/camunda-platform \
    --IDENTITY_URL=http://192.168.2.106:8080
    

    注意:
    KEYCLOAK_REALM, 這個(gè)是realm的名字
    IDENTITY_CLIENT_ID, 這個(gè)是client的名字
    IDENTITY_CLIENT_SECRET, 這個(gè)是上邊的秘鑰
    IDENTITY_AUTH_PROVIDER_BACKEND_URL官方

  • 搞定
    訪問(wèn)identity,輸入賬號(hào)密碼就好了,如果這里登錄提示沒(méi)有賬號(hào)或密碼,那就是上邊的權(quán)限沒(méi)配好,重新創(chuàng)建一個(gè)用戶就好了

題外話

可以看看bitnami/keycloak,我一開(kāi)始配置的有問(wèn)題,一直以為是bitnami的問(wèn)題

相關(guān)地址:

docker地址
https://hub.docker.com/r/keycloak/keycloak
github地址
https://github.com/bitnami/containers/tree/main/bitnami/keycloak
keycloak官網(wǎng)數(shù)據(jù)庫(kù)配置
https://www.keycloak.org/server/db
keycloak啟動(dòng)docker
https://www.keycloak.org/getting-started/getting-started-docker
identity地址
https://docs.camunda.io/docs/self-managed/identity/what-is-identity/
identity添加keycloak獨(dú)立服務(wù)
https://docs.camunda.io/docs/self-managed/identity/user-guide/configuration/connect-to-an-existing-keycloak/文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-804603.html

到了這里,關(guān)于Camunda8微服務(wù)流程引擎搭建實(shí)戰(zhàn) -- camunda-identity接入keycloak,使用mysql數(shù)據(jù)庫(kù)以O(shè)penID Connect的方式實(shí)現(xiàn)用戶的權(quán)限管理的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Springboot整合Camunda工作流引擎實(shí)現(xiàn)審批流程實(shí)例

    Springboot整合Camunda工作流引擎實(shí)現(xiàn)審批流程實(shí)例

    環(huán)境:Spingboot2.6.14 + camunda-spring-boot-starter7.18.0 依賴配置 應(yīng)用程序配置 通過(guò)上面的配置后訪問(wèn)控制臺(tái): http://localhost:8100/workflow/ 默認(rèn)是沒(méi)有上面的tasks中的內(nèi)容,這里是我之前測(cè)試數(shù)據(jù) 環(huán)境準(zhǔn)備好后,接下來(lái)就可以設(shè)計(jì)工作流程。 上面的 camunda-bpm-spring-boot-starter-rest依賴中定義

    2024年02月09日
    瀏覽(16)
  • 基于Docker和Springboot兩種方式安裝與部署Camunda流程引擎

    基于Docker和Springboot兩種方式安裝與部署Camunda流程引擎

    Camunda 相對(duì)于其他流程引擎的優(yōu)勢(shì)在于開(kāi)源性、 BPMN 2.0 支持、可擴(kuò)展性、輕量級(jí)和高性能,以及可觀察性。并且 Camunda 支持獨(dú)立平臺(tái)的方式部署流程引擎,這更有利于分布式的項(xiàng)目。本文以 7.18.0 版本為例,介紹了: Docker Spring Boot 兩種安裝和部署 Camunda 流程引擎的方式。 D

    2024年03月16日
    瀏覽(25)
  • camunda工作流實(shí)戰(zhàn)項(xiàng)目(表單設(shè)計(jì)器+流程編輯器,零代碼創(chuàng)建流程)

    camunda工作流實(shí)戰(zhàn)項(xiàng)目(表單設(shè)計(jì)器+流程編輯器,零代碼創(chuàng)建流程)

    基于ruoyi平臺(tái)和camunda工作流開(kāi)發(fā)而成,結(jié)合bpmn.js流程編輯器和vform表單設(shè)計(jì)器,實(shí)現(xiàn)常規(guī)流程零代碼創(chuàng)建。 具備流程中心的能力,支持外部任務(wù),可協(xié)調(diào)多個(gè)業(yè)務(wù)系統(tǒng)協(xié)同工作 具備SaaS平臺(tái)的能力,支持多租戶,各業(yè)務(wù)系統(tǒng)可作為租戶,創(chuàng)建自己的流程,通過(guò)外部任務(wù)與自身

    2024年02月12日
    瀏覽(34)
  • springboot集成Camunda審核流程(二):Camunda Modeler設(shè)計(jì)器設(shè)置BPMN流程

    springboot集成Camunda審核流程(二):Camunda Modeler設(shè)計(jì)器設(shè)置BPMN流程

    ? Camunda Modeler -為流程設(shè)置器(建模工具),用來(lái)構(gòu)建我們的流程模型。Camunda Modeler流程繪圖工具,支持三種協(xié)議類型流程文件分別為:BPMN、DMN、Form。 ? Camunda Modeler下載地址:https://camunda.com/download/modeler/ 下載完成之后解壓之后,打開(kāi)Camunda Modeler.exe 即可使用。 下面分別簡(jiǎn)

    2024年02月03日
    瀏覽(19)
  • camunda撤銷流程

    2024年02月09日
    瀏覽(18)
  • 微服務(wù)流程引擎:簡(jiǎn)單又靈活,實(shí)現(xiàn)流程全生命周期管理!

    微服務(wù)流程引擎:簡(jiǎn)單又靈活,實(shí)現(xiàn)流程全生命周期管理!

    伴隨著日益激烈的市場(chǎng)競(jìng)爭(zhēng),傳統(tǒng)的辦公操作已經(jīng)無(wú)法滿足發(fā)展需要了。如果采用微服務(wù)流程引擎加油助力,就可以幫助企業(yè)更好地管理數(shù)據(jù)資源,高效做好各種表單制作,實(shí)現(xiàn)高效率辦公。流辰信息以市場(chǎng)為導(dǎo)向,用心鉆研低代碼技術(shù)平臺(tái)產(chǎn)品,幫助不同行業(yè)的客戶朋友做

    2024年02月12日
    瀏覽(36)
  • Spring Boot整合Camunda打造高效工作流程

    Spring Boot整合Camunda打造高效工作流程

    ????歡迎來(lái)到我的CSDN主頁(yè)!???? ??我是塵緣,一個(gè)在CSDN分享筆記的博主。???? ??點(diǎn)擊這里,就可以查看我的主頁(yè)啦!???? 塵緣的個(gè)人主頁(yè) ??如果感覺(jué)還不錯(cuò)的話請(qǐng)給我點(diǎn)贊吧!???? ??期待你的加入,一起學(xué)習(xí),一起進(jìn)步!???? 在現(xiàn)代的軟件開(kāi)發(fā)中,工作流管

    2024年04月13日
    瀏覽(42)
  • Camunda 7工作流引擎 API 以及與Springboot集成實(shí)現(xiàn)工作流配置全紀(jì)錄

    Camunda 7工作流引擎 API 以及與Springboot集成實(shí)現(xiàn)工作流配置全紀(jì)錄

    項(xiàng)目中需要用到工作流引擎來(lái)設(shè)計(jì)部分業(yè)務(wù)流程,框架選型最終選擇了 Camunda7,關(guān)于 Camunda以及 Activity 等其他工作流 引擎的介紹及對(duì)比不再介紹,這里只介紹與現(xiàn)有Springboot項(xiàng)目的集成以及具體使用及配置 流程(PROCESS): 通過(guò)工具建模最終生成的BPMN文件,里面有整個(gè)流程的定

    2024年02月10日
    瀏覽(45)
  • springboot集成Camunda,加前端bpmn頁(yè)面流程編輯器

    springboot集成Camunda,加前端bpmn頁(yè)面流程編輯器

    搭建流程引擎后端的時(shí)候,主要注意springboot版本和Camunda版本之間的兼容性。此次springboot版本2.6.4,Camunda版本7.18.0。pom文件內(nèi)容如下: pom文件配置好后,通過(guò)一般的注解入口@SpringBootApplication,即可啟動(dòng)Camunda流程引擎。 Camunda默認(rèn)使用的數(shù)據(jù)庫(kù)為自帶的h2內(nèi)存數(shù)據(jù)庫(kù),此時(shí)一般

    2023年04月18日
    瀏覽(18)
  • nodejs接口聯(lián)動(dòng)獲取req的各種類型數(shù)據(jù),搭建可視化流程引擎平臺(tái)

    nodejs接口聯(lián)動(dòng)獲取req的各種類型數(shù)據(jù),搭建可視化流程引擎平臺(tái)

    考慮跨域等性能,簡(jiǎn)易的工程化,采用express框架 接下來(lái)我們就來(lái)安裝 body-parser express的中間件 body-parser 解析客戶端請(qǐng)求的body中的內(nèi)容,JSON編碼處理和url編碼處理 文件上傳看我之前的博客內(nèi)容 http://localhost:8080/?age=1 http://localhost:8080/12/url 當(dāng)然也可以進(jìn)行組合發(fā)送 鏈接數(shù)據(jù)庫(kù)

    2024年02月11日
    瀏覽(21)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包