MaxKey本地运行实战指南

MaxKey 本地运行总结

  • 概述
  • 开发环境准备

在这里插入图片描述

主页传送门 : 📀 传送


概述


MaxKey单点登录认证系统,谐音为马克思的钥匙寓意是最大钥匙,是业界领先的IAM-IDaas身份管理和认证产品;支持OAuth 2.x/OpenID Connect、SAML 2.0、JWT、CAS、SCIM等标准协议;提供安全、标准和开放的用户身份管理(IDM)、身份认证(AM)、单点登录(SSO)、资源管理和权限管理等。

开发环境准备


image.png
官网上虽然是这么写的 但是根据实测,最新版的v4.0.2中 node版本最好用node20以上的版本,要不可能会遇到各种比较诡异的情况。。

从https://github.com/dromara/MaxKey或者https://github.com/dromara/MaxKey 下载下来代码

配置mysql环境 推荐Windows下载解压缩版本8.0.3以上 具体配置很简单 网上随便一搜就能找到,这里就不再赘述了。

配置jdk环境 需要注意jdk版本得是17以上。

配置gradle 因为项目是基于gradle构建的 所以需要配置gradle Gradle 推荐8.0以上。 不知道如何配置的阔以参考这篇,里边写的还是挺详细的,按照操作配置就好了。https://blog.csdn.net/qq_57756904/article/details/131565569

配置hosts

hosts配置文件目录

C:\Windows\System32\drivers\etc\hosts

这里比较怪的是 我的电脑没有找到hosts文件 查看隐藏文件夹也没有
所以直接用命令复制一个出来

for /f %P in ('dir %windir%\WinSxS\hosts /b /s') do copy %P %windir%\System32\drivers\etc & echo %P & Notepad %P

自动打出hosts文件并且命令行出现“已复制 1 个文件”。再次刷新,应该就会出来了

在hosts 文件新增下面内容

127.0.0.1  sso.maxkey.top
127.0.0.1  mgt.maxkey.top
127.0.0.1  tokenbased.demo.maxkey.top
127.0.0.1  cas.demo.maxkey.top
127.0.0.1  oauth.demo.maxkey.top

至此,环境准备就基本OK了。
接下来就是构建项目启动项目了。
需要注意的是
使用Spring boot 基于gradle构建需用

release_cnf_jar.bat

构建配置

在构建之前需要先配置jdk和gradle的环境变量

setEnvVars.bat
set JAVA_HOME=jdk安装位置\jdk
set GRADLE_HOME=gradle安装位置\gradle-8.0.2

修改数据库连接 把application-maxkey.propertiesapplication-maxkey-mgt.properties
的账号密码还有连接地址替换为自己的。

image.png

接下来按着文档要求一步步构建就可以了。

构建完之后出现

image.png
这四项就证明构建成功了
接下来启动MaxKeyApplicationMaxKeyMgtApplication后端就启动起来了。

启动这俩项的时候可能会报太长无法启动按照上图选择Shorten command line:为 JAR manifest 再重新启动即可。

maxkey官网文档:
maxkey文档

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/846765.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

13.3 包-创建自己的包

除了使用标准库和第三方提供的包以外,有时还需要自己创建包,以提高程序代码的模块化程度和可复用性。 创建包目录。 项目自用的包,在项目目录下创建包目录,跨项目的公共包,在[GOPATH]/src下创建包目录。 设置包名称。…

记一次线上数据库连接超时异常问题

最近其他团队的开发人员告知我,我们项目有个feign接口调用失败了。我查看日志发现,其原因是尝试数据库连接超时,30秒内都没有连接成功。 我首先判断可能是网络不稳定,在一定时间内连接不上数据库。我登录到服务器环境看&#xff0…

德克萨斯大学奥斯汀分校自然语言处理硕士课程汉化版(第五周) - Transformer

Transformer 1. 注意力机制 在语言建模中,注意力(attention)是一个关键机制,用于在给定上下文中访问相关信息以进行预测。注意力机制允许模型根据输入上下文中的重要信息来加权关注不同的部分,并根据其重要性来决定对不同部分的关注程度。 …

Android基础-UI布局

在Android开发中,UI布局是构建用户界面(User Interface)的基础。不同的布局方式可以适应不同的界面需求,实现多样化的界面效果。下面将详细阐述Android中几种常见的UI布局方式,包括它们的功能、优势和劣势,…

【工具】探索 MOU:每用户通话时长

缘分让我们相遇乱世以外 命运却要我们危难中相爱 也许未来遥远在光年之外 我愿守候未知里为你等待 我没想到为了你我能疯狂到 山崩海啸没有你根本不想逃 我的大脑为了你已经疯狂到 脉搏心跳没有你根本不重要 🎵 邓紫棋《光年之外》 什么是 MOU…

discuz点微同城源码34.7+全套插件+小程序前端

discuz点微同城源码34.7全套插件小程序前后端 模板挺好看的 带全套插件 自己耐心点配置一下插件 可以H5可以小程序

深入理解Linux网络总结

1、内核如何接收网络包 1.1 RingBuffer到底是什么,RingBuffer为什么会丢包? 问:RingBuffer到底存在那一块,是如何被使用到的,真的就只是一个环形队列吗?RingBuffer内存是预先分配好的,还是随着…

YOLOv1深入解析与实战:目标检测算法原理

参考: https://zhuanlan.zhihu.com/p/667046384 https://blog.csdn.net/weixin_41424926/article/details/105383064 https://arxiv.org/pdf/1506.02640 1. 算法介绍 学习目标检测算法,yolov1是必看内容,不同于生成模型,没有特别…

C语言习题~day27

1.关于下面代码描述不正确的是: void GetMemory(char *p) {p (char *)malloc(100); } void Test(void) {char *str NULL;GetMemory(str);strcpy(str, "hello world");printf(str); } A.上面代码没问题 B.上面代码存在内存泄露 C.上面代码可能会崩溃…

Spring (35)OAuth2

OAuth 2.0 是一个开放标准,它允许用户授权第三方应用访问自己在某一网站上的私密资源(如个人信息、相册),而无需将用户名和密码提供给第三方应用。OAuth 2.0 主要用于授权(Authorization),而非认…

ECMAScript 详解:深入探索JavaScript的核心规范

在Web开发的世界里,JavaScript无疑是最为璀璨的明星之一,它赋予了网页动态交互的能力,让互联网变得更加生动有趣。而JavaScript的标准化规范——ECMAScript,则是这一切奇迹背后的基石。本文将深入探讨ECMAScript的基本概念、发展历…

CSAPP Lab07——Malloc Lab完成思路

完整代码见:CSAPP/malloclab-handout at main SnowLegend-star/CSAPP (github.com) Malloc Lab 按照惯例,我先是上来就把mm.c编译了一番,结果产生如下报错。搜索过后看样子应该是编译器的版本不匹配,得建立条软链接。 经过多番…

【TB作品】msp430g2553,读取SHT31,读取gy-30,显示到lcd12864,温度湿度光强

功能 msp430g2553,读取SHT31,读取gy-30,显示到lcd12864 硬件 /* 12864液晶串行显示测试程序P1.4模拟SID(接第5脚),P1.5模拟SCLK(接第6脚)4脚(CS信号)接高…

【数据结构】链式二叉树详解

个人主页~ 链式二叉树基本内容~ 链式二叉树详解 1、通过前序遍历的数组来构建二叉树2、二叉树的销毁3、二叉树节点个数4、二叉树叶子节点个数5、二叉树第k层节点个数6、二叉树查找7、前序遍历8、中序遍历9、后序遍历10、层序遍历与检查二叉树是否为完全二叉树Queue.hQueue.c层序…

WordPress子比内容同步插件

1.支持分类替换 将主站同步过来的文章分类进行替换 2.支持本地化文章图片 (使用储存桶可能会导致无法保存图片) 3.支持自定义文章作者(选择多个作者则同步到的文章作者将会随机分配) 4.支持将同步过来的文章自定义文章状态&…

Java | Leetcode Java题解之第128题最长连续序列

题目&#xff1a; 题解&#xff1a; class Solution {public int longestConsecutive(int[] nums) {Set<Integer> num_set new HashSet<Integer>();for (int num : nums) {num_set.add(num);}int longestStreak 0;for (int num : num_set) {if (!num_set.contai…

乡村振兴与文化传承:挖掘乡村历史文化资源,传承乡村优秀传统,打造具有地方特色的美丽乡村文化品牌

目录 一、引言 二、乡村历史文化资源的挖掘与保护 &#xff08;一&#xff09;乡村历史文化资源的内涵 &#xff08;二&#xff09;乡村历史文化资源的挖掘 &#xff08;三&#xff09;乡村历史文化资源的保护 三、乡村优秀传统的传承与创新 &#xff08;一&#xff09;…

4.基础纹理

纹理的目的&#xff1a;使用一张图片来控制模型的外观纹理映射技术&#xff1a;把一张图“黏”在模型表面&#xff0c;逐纹素&#xff08;与像素不同&#xff09;地控制模型颜色通常在建模软件中利用纹理展开技术实现&#xff0c;把纹理映射坐标存储在每个顶点上纹理映射坐标&a…

php--无回显情况下的命令执行

免责声明:本文仅做技术交流与学习... 目录 绕过模版: 1. 写入文件、二次返回: 2. DNS信道: 3.http信道: 4.反弹shell信道 -->公网IP 5.延时 sleep 3 建立通道(信道) --数据传输的路径 shell_exec 与 system 相比&#xff0c;shell_exec没有回显结果. 绕过模版:…

Java中的Instant

在Java中&#xff0c;Instant 是 java.time 包中的一个类&#xff0c;用于表示时间轴上的一个瞬时点&#xff0c;通常以纳秒精度表示。它通常用于表示机器可读的时间戳&#xff0c;而不是人类可读的时间表示&#xff08;如日期和时间&#xff09;。 Instant 主要用于时间计算和…