什么是单点登录统一认证:假如某公司旗下有10个网站(比如各种管理网站:人事系统啊,财务系统啊,业绩系统啊等),我是该公司一管理员或者用户,按照传统网站模式是这样:我打开A网站 输入账号密码 然后进入到A网站办点事,办完之后,我有需要到B网站去办点事,这个时候又需要输入账号密码,假如你还要到C网站办点事,又再需要输入账号密码..... 为了解决这个问题,所以出现了单点登录统一认证:即 该改管理员 登录了其中一个网站得到了ids4的授权之后,他再登入该公司旗下其他网站的时候不需要在输入账号密码,能够…
前言 由于公司内部的系统越来越多,为了方便用户使用,通过django进行了单点登录和统一认证的尝试,目前实现了django项目的单点登录和非django项目的统一认证,中间波折挺多,涉及的技术包括django\memcache\ldap等,如果有时间的话,后边会逐步更新博客分开介绍实现过程. sso的实现相对复杂,期间也调研了如cas+ldap,最后采取了一种学习成本较低的方式,即通过mc共享session方式实现单点登录.有兴趣并且懂java的同学可以自行了解cas.应该是一种更成熟的sso解…
什么是单点登录 简单点说就是公司有A,B两个系统,我登录了A系统之后再跳转到B系统可以直接访问,而不需要再次登录B系统. 几种常见的单点登录实现方式 在讲解单点登录之前先讲解几个基本的概念: Cookie: Cookie是一段不超过4KB的小型文本数据,是保存在用户本地的,常见格式为: Expires属性:设置Cookie的生存期 Domain属性:指定了可以访问该 Cookie 的 Web 站点或域 比如图中的Domain:192.168.1.72这就表示只能只有1.72下的请求可以使用这个c…
参考网址: https://blog.csdn.net/zhurhyme/article/details/29349543 https://blog.csdn.net/shzy1988/article/details/50662462 cas 分为服务端,与客户端.那么客户端如何与服务端进行交互呢,或者说服务端发送的response报文客户端如何接收呢?这就要用到配置.cas client通过filter拦截与cas服务器进行交互.它的主要配置主要有以下几个filter: 1.Authentic…
在abp开发的系统后,需要使用这个系统作单点登录,及其他项目登录账号依靠abp开发的系统.在官方文档上只找到作为登录服务Identity Server Integration,但是host项目却无法使用登录服务生成的Token获取数据.所有的搜索结果包括abp的issue都是说去看identity server4的文档.我比较笨,文档看了还是不会.好在最后还是试出来了. 创建登录中心项目 到官网下载一个最新的模板项目,项目类型自选(我们项目用的vue,所以我选择的vue项目,.net core3…
1.新建项目并添加引用 新建一个asp .net core 2.0的项目引用IdentityServer4.AspNetIdentity 2.定义资源 新建Config.cs文件,定义Api资源与Identity资源资源分为身份资源(Identity resources)和API资源(API resources) (1)身份资源(Identity resources) 身份资源是用户的用户名,姓名或电子邮件地址等数据.身份资源具有唯一的名称,可以为其分配任意声明类型.然后,这些声明将被包含在用户…
以MvcClient项目为例 1.新建项目并添加引用 新建一个asp .net core 2.0的项目引用IdentityModel 2.配置 比之前的控制台客户端多这个步骤,需要配置这个客户端的ClientId,Secret,Scheme,作用范围等等,这些内容与IdentityServer的Client的内容对应 public void ConfigureServices(IServiceCollection services) { JwtSecurityTokenHandler.Defau…
组成 IdentityServer,Api和Client(客户端,asp .net core)本文以官方demo:https://github.com/IdentityServer/IdentityServer4.Samples/tree/release/Quickstarts/6_AspNetIdentity 作为模板进行讲解 流程   2 预设:IdentityServer配置各Api相关信息,Api配置IdentityServer相关信息1.用户访问客户端,客户端发现用户没有登录(授权)2…
安装 composer require laravel/passport=~4.0 notes: 1)确保系统安装unzip.zip等命令. 2)composer 安装出现 Authentication required (packagist.phpcomposer.com) 问题,修改composer.json 中的源,repositories.packagist.url = https://packagist.laravel-china.org . 注册服务提供者 在config/app.p…
前言 本节的内容为JDBC认证,查找数据库进行验证,其中包括: 密码加密策略(无密码,简单加密,加盐处理) 认证策略(jdbc) 一.业务需求 不同的公司,需求业务需求或者架构不一样导致我们实现验证的方式不一样,那么cas为我们提供了很多认证的模式(当然也可以自定义),其中常用的有: JDBC认证 LDAP认证 Basic认证 Shiro认证 Pac4j认证 MongoDB认证 Rest认证 IP黑白名单 还有可能交给第三方认证,例如:微信.QQ.新浪,github等等 当然也有一些公司或者企业…