diff --git a/docs/download.md b/docs/download.md index 82f8f7bb5..ce17d2768 100644 --- a/docs/download.md +++ b/docs/download.md @@ -1,4 +1,4 @@ -
<form method="post" action="/login">
<input type="text" name="username" required>
diff --git a/docs/protocols/jwtintros.md b/docs/protocols/jwtintros.md
index 62aacba12..1aa2df4bb 100644
--- a/docs/protocols/jwtintros.md
+++ b/docs/protocols/jwtintros.md
@@ -1,10 +1,10 @@
-JSON Web Token介绍
+1JSON Web Token介绍
JSON Web Token (JWT)是一个开放标准(RFC 7519),它定义了一种紧凑且自包含的方式,用于在各方之间安全地将信息作为JSON对象传输。由于此信息是经过数字签名的,因此可以被验证和信任。可以使用秘密(使用HMAC算法)或使用RSA或ECDSA的公用/专用密钥对对JWT进行签名。
尽管可以对JWT进行加密以在各方之间提供保密性,但我们将重点关注已签名的令牌。签名的令牌可以验证其中包含的声明的完整性,而加密的令牌则将这些声明隐藏在其他方的面前。当使用公钥/私钥对对令牌进行签名时,签名还证明只有持有私钥的一方才是对其进行签名的一方。
-什么时候使用JSON Web Token
+2什么时候使用JSON Web Token
以下是JSON Web令牌有用的一些情况:
@@ -12,7 +12,7 @@ JSON Web Token (JWT)是一个开放标准(
-JSON Web Token工作机制
+4JSON Web Token工作机制
在身份验证中,当用户使用其凭据成功登录时,将返回JSON Web令牌。由于令牌是凭据,因此必须格外小心以防止安全问题。通常,令牌的保留时间不应超过要求的时间。
@@ -111,7 +111,7 @@ JSON Web令牌如何工作
该应用程序使用访问令牌来访问受保护的资源(例如API)。
请注意,使用签名的令牌,令牌中包含的所有信息都会暴露给用户或其他方,即使他们无法更改它。这意味着您不应将机密信息放入令牌中。
-如何使用JSON Web Token
+5如何使用JSON Web Token
让我们谈谈与Simple Web Tokens(SWT)和Security Assertion Markup Language Tokens安全性声明标记语言令牌(SAML)相比,JSON Web Tokens(JWT)的优势。
diff --git a/docs/protocols/oauth2.md b/docs/protocols/oauth2.md
index e8ce0b698..c184995f8 100644
--- a/docs/protocols/oauth2.md
+++ b/docs/protocols/oauth2.md
@@ -1,4 +1,4 @@
-1.什么是OAuth2
+1什么是OAuth2
OAuth: OAuth(开放授权)是一个开放标准,允许用户授权第三方网站访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方网站或分享他们数据的所有内容。
@@ -10,7 +10,7 @@ Tips:
如果您想对OAuth2.0开放标准进行扩展阅读,请参看:OAuth标准(英文) | OAuth维基百科(中文)
-2.应用场景
+2应用场景
第三方应用授权登录:在APP或者网页接入一些第三方应用时,时长会需要用户登录另一个合作平台,比如QQ,微博,微信的授权登录。
@@ -19,7 +19,7 @@ Tips:
前后端分离单页面应用(spa):前后端分离框架,前端请求后台数据,需要进行oauth2安全认证,比如使用vue、react后者h5开发的app。
-3.名词定义
+3名词定义
(1) Third-party application:第三方应用程序,本文中又称"客户端"(client),比如打开知乎,使用第三方登录,选择qq登录,这时候知乎就是客户端。
@@ -33,7 +33,7 @@ Tips:
(6)Resource server:资源服务器,即服务提供商存放用户生成的资源的服务器。它与认证服务器,可以是同一台服务器,也可以是不同的服务器。
-4.运行流程
+4运行流程
@@ -49,7 +49,7 @@ Tips:
(F)资源服务器确认令牌无误,同意向客户端开放资源。
-5.四种授权模式
+5四种授权模式
授权码模式(authorization code)
@@ -59,7 +59,7 @@ Tips:
客户端模式(client credentials)
-5.1.授权码模式
+5.1授权码模式
授权码模式(authorization code)是功能最完整、流程最严密的授权模式。
@@ -71,7 +71,7 @@ Tips:
(3)认证服务器核对了授权码和重定向URI,确认无误后,向客户端发送访问令牌(access token)和更新令牌(refresh token)。POST /oauth/token?response_type=authorization_code&code=SplxlOBeZQQYbYS6WxSbIA&redirect_uri=重定向页面链接。请求成功返回access Token和refresh Token。
-5.2.简化模式Implicit
+5.2简化模式Implicit
适用于公开的浏览器单页应用
@@ -85,7 +85,7 @@ Access Token直接从授权服务器返回(只有前端渠道)
最容易受安全攻击
-5.3.用户名密码 Resource Owner Credentials
+5.3用户名密码 Resource Owner Credentials
使用用户名密码登录的应用,例如桌面App
@@ -97,7 +97,7 @@ Access Token直接从授权服务器返回(只有前端渠道)
假定资源拥有者和公开客户子啊相同设备上
-5.4.客户端凭证 Client Credentials
+5.4客户端凭证 Client Credentials
适用于服务器见通信场景,机密客户代表它自己或者一个用户
diff --git a/docs/protocols/openid.md b/docs/protocols/openid.md
index 1cd479ca3..a4c8bb7b8 100644
--- a/docs/protocols/openid.md
+++ b/docs/protocols/openid.md
@@ -1,4 +1,4 @@
-1. OpenID Connect简介
+1 OpenID Connect简介
OpenID Connect是基于OAuth 2.0规范族的可互操作的身份验证协议。它使用简单的REST / JSON消息流来实现,和之前任何一种身份认证协议相比,开发者可以轻松集成。
OpenID Connect允许开发者验证跨网站和应用的用户,而无需拥有和管理密码文件。OpenID Connect允许所有类型的客户,包括基于浏览器的JavaScript和本机移动应用程序,启动登录流动和接收可验证断言对登录用户的身份。
@@ -6,12 +6,12 @@ OpenID Connect允许开发者验证跨网站和应用的用户,而无需拥有
如果您想对OpenID Connect开放标准进行扩展阅读,请参看:官方技术说明Connect标准(英文) | OpenID Connect维基百科(en)
-2. OpenID的历史是什么?
+2 OpenID的历史是什么?
OpenID Connect是OpenID的第三代技术。首先是原始的OpenID,它不是商业应用,但让行业领导者思考什么是可能的。OpenID 2.0设计更为完善,提供良好的安全性保证。然而,其自身存在一些设计上的局限性,最致命的是其中依赖方必须是网页,但不能是本机应用程序;此外它还要依赖XML,这些都会导致一些应用问题。
OpenID Connect的目标是让更多的开发者使用,并扩大其使用范围。幸运的是,这个目标并不遥远,现在有很好的商业和开源库来帮助实现身份验证机制。
-3. OIDC基础
+3OIDC基础
简要而言,OIDC是一种安全机制,用于应用连接到身份认证服务器(Identity Service)获取用户信息,并将这些信息以安全可靠的方法返回给应用。
在最初,因为OpenID1/2经常和OAuth协议(一种授权协议)一起提及,所以二者经常被搞混。
@@ -28,7 +28,7 @@ OpenID Connect是“认证”和“授权”的结合,因为其基于OAuth协
在OAuth中,这些授权被称为scope。OpenID-Connect也有自己特殊的scope--openid ,它必须在第一次请求“身份鉴别服务器”(Identity Provider,简称IDP)时发送过去。
-4. OIDC流程
+4 OIDC流程
OAuth2提供了Access Token来解决授权第三方客户端访问受保护资源的问题;相似的,OIDC在这个基础上提供了ID Token来解决第三方客户端标识用户身份认证的问题。OIDC的核心在于在OAuth2的授权流程中,一并提供用户的身份认证信息(ID-Token)给到第三方客户端,ID-Token使用JWT格式来包装,得益于JWT(JSON Web Token)的自包含性,紧凑性以及防篡改机制,使得ID-Token可以安全的传递给第三方客户端程序并且容易被验证。应有服务器,在验证ID-Token正确只有,使用Access-Token向UserInfo的接口换取用户的更多的信息。
有上述可知,OIDC是遵循OAuth协议流程,在申请Access-Token的同时,也返回了ID-Token来验证用户身份。
diff --git a/docs/protocols/saml.md b/docs/protocols/saml.md
index 0aa66d35e..3170b5604 100644
--- a/docs/protocols/saml.md
+++ b/docs/protocols/saml.md
@@ -1,4 +1,4 @@
-1、SAML 介绍
+1SAML 介绍
SAML即安全断言标记语言,英文全称是Security Assertion Markup Language。它是一个基于XML的标准,用于在不同的安全域(security domain)之间用户身份验证和授权数据交换。在SAML标准定义了身份提供者(identity provider)和服务提供者(service provider),这两者构成了前面所说的不同的安全域。 SAML是OASIS组织安全服务技术委员会(Security Services Technical Committee)的产品。官方技术说明可参看OASIS Security Services (SAML) TC.
@@ -48,7 +48,7 @@ IDP和SP预先完成证书的互信配置,SAML认证基于断言,断言基
如果您想对SAML 2.0开放标准进行扩展阅读,请参看:官方技术说明SAML标准(英文) | SAML维基百科(中文)
-2、SP-Init SSO流程
+2SP-Init SSO流程
用户试图访问IDP的合作伙伴应用。
@@ -69,7 +69,7 @@ IDP SAML响应和RelayState参数进行编码,并将该信息返回到用户
用户被重定向的目标URL,并记录在合作伙伴应用程序。
-3、IDP-Init SSO流程
+3IDP-Init SSO流程
IDP的用户进行身份验证。IDP可以通过要求有效的登录凭据,或通过检查有效的会话对用户进行身份验证。
diff --git a/docs/protocols/tokenbased.md b/docs/protocols/tokenbased.md
index b057368d6..8e645cf3a 100644
--- a/docs/protocols/tokenbased.md
+++ b/docs/protocols/tokenbased.md
@@ -1,8 +1,8 @@
-1、TokenBased介绍
+1TokenBased介绍
TokenBased(基于令牌)的认证,是一种简单的令牌的认证,即认证中心和应用共享凭证或者数字证书,认证中心使用HTTP POST的方式提交令牌到应用系统,应用系统并随后进行身份验证;
-2、交互概要
+2交互概要
该技术的实现步骤是:
@@ -14,14 +14,14 @@ TokenBased(基于令牌)的认证,是一种简单的令牌的认证,即认
- 应用系统完成系统登录。
-2.1、令牌加密或者签名方式
+2.1令牌加密或者签名方式
- 加密方式:DES、DESede、AES、Blowfish,默认采用DES。
- 签名方式:服务端使用RSA数字证书私钥加密,客户端使用RSA数字证书公钥验证。
-2.2、令牌格式
+2.2令牌格式
{
@@ -44,13 +44,13 @@ at是当前认证的时间
expires是过期的间隔
其他的字段可在管理控制台配置
-3、简单令牌
+3简单令牌
认证用户名@@认证时间(UTC时间),例如:
testUser@2010-01-01T01:01:01.001Z
-3.1、令牌加密
+3.1令牌加密
加密步骤:
@@ -64,20 +64,20 @@ testUser@2010-01-01T01:01:01.001Z
Y00jv2TCCuk365uB2-nDCUdboygeYFoUfETC7BNXr73dQWwFNRrfYltczDQ5iWg8NTO-GsP--VlR6L-JyNhZSg
-3.2、令牌签名
+3.2令牌签名
token的签名格式:BASE64URL(UTF8(data)).BASE64URL(UTF8(signature)),中间用"."分开,前半部分是数据,后半部分是签名书数据,例如:
eyJpc3MiOiJqb2UiLA0KICJleHAiOjEzMDA4MTkzODAsDQogImh0dHA6Ly9leGFtcGxlLmNvbS9pc19yb290Ijp0cnVlfQ.dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk
-4、LTPA介绍
+4LTPA介绍
LTPA是Lightweight ThirdParty Authentication简称,轻量级第三方认证,支持在一个因特网域中的一组 Web 服务器之间使用单一登录的认证框架,即通过cookie来传输Token。
当服务器配置LTPA认证方式,用户通过浏览器成功登录,服务器会自动发送一个session cookie给浏览器,此cookie中包含一个加密和签名Security Token信息,应用服务器根据Security Token解析得到登录用户信息自动完成应用系统认证。
-4.1、交互概要
+4.1交互概要
该技术的实现步骤是:
diff --git a/docs/ui.md b/docs/ui.md
new file mode 100644
index 000000000..ea5c80335
--- /dev/null
+++ b/docs/ui.md
@@ -0,0 +1,19 @@
+界面
+MaxKey
+
+登录界面
+
+
+
+主界面
+
+
+MaxKey管理界面
+
+用户管理界面
+
+
+
+应用管理界面
+
+
\ No newline at end of file