SSO 单点登录 概念 单点登录(英语:Single sign-on,缩写为 SSO),又译为单一签入,一种对于许多相互关连,但是又是各自独立的软件系统,提供存取控制的属性。当拥有这项属性时,当用户登录时,就可以获取所有系统的存取权限,不用对每个单一系统都逐一登录。这项功能通常是以轻型目录访问协议(LDAP)来实现,在服务器上会将用户信息存储到LDAP数据库中。相同的,单一退出(single sign-off)就是 2023-07-17 程序 #程序 #代码 #认证 #授权 #登录 #SSO
Java 规划引擎 - OptaPlanner 初窥门径 前言前一段时间接了一个单子,主要的需求内容是:对工厂车间中人员、设备、资源的规划和安排进行分析,产出一个类似甘特图状的排产排程结果,可以根据人员和资源的情况进行合理规划,最后我们选用了OptaPlanner这个规划引擎来做这事。这个引擎功能感觉比较强大,但是中文的相关资料信息和讨论都不是很多,所以就有了写本篇文章的想法。 文章的前面部分主要是对于这个引擎概念上的讲解,最后一部分是本人在使用过程中的 2023-03-11 程序 #程序 #代码 #Java #规划引擎
计算机中的会话(Session) 前言首先明确,这里主要论述的Session并不是指具体的各个语言的实现,而是单指Session(会话)的技术。 定义标准HTTP协议请求本身是无状态的,也就是说,用户A和B同时向服务器发送了一个请求,服务器是无法判断这两个请求分别是来自于A还是B还是C。 为了实现有状态的HTTP请求,即在业务上服务端需要知道每一个请求分别来自于谁,就需要在HTTP的基础上,在应用业务上实现这么一个功能来维持用户的 2022-05-05 信息安全 #Web #Session #Cookie #信息安全 #认证
编码算法 前言严格来说,编码并不算在信息安全里,只是将信息使用另一个形式进行传输或者是表面上的不可阅读而已。 算法Base64网上说的最多的就是Base64。“用Base64加密一下“,这种说法是不严谨的,因为它只能够实现肉眼上的不可读。Base64算法是一种编码算法,将二进制数据使用64个ASKII字符表达,主要用于解决二进制数据在不同端的不兼容问题。一些特殊的二进制流在不同的设备、系统中可能表示的意义不 2022-01-27 算法相关 #算法 #编码 #Base64
关于数据结构的一些想法 前言写这篇文章的动机呢,其实是洗澡的时候突然想到,并结合平时中的一些感受所产生的:大多数学数据结构的人,总是给我一种为了学数据结构而学的感觉。 问题数据结构和算法,这两个好兄弟不论是在本科的课程里还是在面试中,都是最基础的考察项目。但是大多数人,在刚刚入门的时候,比如刚学习完一门语言的语法,准备深入学习的时候,就会有人告诉说:该学数据结构了。然后从天而降一个链表让你学,学会了用就完事了,迷迷糊糊学 2021-07-18 数据结构-算法 > 闲聊 #程序 #代码 #数据结构
Vue项目在Nginx非root目录下部署的问题 错误排查最近在部署Vue项目时,出现如下错误: 一开始以为是常见的无限路由导致的爆栈这类基础问题,但是考虑到在本地调试时一切正常,并且在本次版本更新前生产环境也正常运行。于是直接被整懵,一度怀疑是更新了依赖包版本导致的问题。在尝试了调整路由配置、依赖包版本回退、项目回退均无果后,换了台服务器进行部署测试,结果正常运行。 比较后发现,在项目部署的原服务器上,还运行着一个用户端项目,路径如下: 1 2020-10-21 程序 > Web #程序 #代码 #Web
编程的乐趣 编程为什么有趣?作为回报,它的从业者期望得到什么样的快乐? 首先是一种创建事物的纯粹快乐。如同小孩在玩泥巴时感到愉快一样,成年人喜欢创建事物,特别是自己进行设计。我想这种快乐是上帝创造世界的折射,一种呈现在每片独特、崭新的树叶和雪花上的喜悦。 其次,快乐来自于开发对其他人有用的东西。内心深处,我们期望其他人使用我们的劳动成果,并能对他们有所帮助。从这个方面,这同小孩用粘土为 “爸爸办公室” 捏制 2020-06-23 程序 > 闲聊 #程序 #代码
关于计算机的 Boot boot是bootstrap的简写形式,当然这里的bootstrap不是指web框架的bootstrap,而是指计算机的“引导”。 bootstrap原意是靴子,但是这跟计算机有什么关系呢? 这源于一句谚语: pull oneself up by one’s bootstraps 拽着鞋带把自己拉起来 这个句子很有意思,就像左脚踩右脚不断交替就能上天一样。 工程师把这个用来比喻计算机启动的过程 2020-04-16 程序 > 闲聊 #程序 #代码
SQL根据不同的条件查询count 在一条语句中根据不同的条件count对应的数据。 1select count(if(条件, true, null)), count(if(条件, true, null)) from table; 以上语句可以根据两个不同的条件一次计算出对应的count值,很明显的用到的是IF函数。IF( expr1, expr2, expr3)。 以下来自官方文档的说明 If expr1 is TRUE (e 2020-04-15 程序 > Sql #程序 #代码 #Sql
Sqlite Attach和Detach sqlite是基于文件的数据库,正常使用sql语句操作一般都是同一个数据库,即同一个文件。若要同时操作多个sqlite数据库呢,这时候就可以用Attach和Detach语法。 Attach 附加数据库,将一个数据库文件附加到当前连接上。 Detach 分离数据库,跟Attach相反,即分离附加的数据库。 假设现在有两个数据库文件,”Main.db”和”Main_Bak.db”。 Main数据库中有 2020-03-19 程序 > Sql #程序 #代码 #Sql