mirror of
https://gitee.com/dromara/sa-token.git
synced 2025-05-03 12:17:57 +08:00
docs: 文档新增 “登录参数” 章节
This commit is contained in:
parent
5352e973e3
commit
2b8489dff7
@ -69,7 +69,7 @@ public class SaLoginParameter {
|
||||
/**
|
||||
* 指定此次登录 token 有效期,单位:秒 (如未指定,自动取全局配置的 timeout 值)
|
||||
*/
|
||||
private Long timeout;
|
||||
private long timeout;
|
||||
|
||||
/**
|
||||
* 指定此次登录 token 最低活跃频率,单位:秒(如未指定,则使用全局配置的 activeTimeout 值)
|
||||
@ -293,7 +293,7 @@ public class SaLoginParameter {
|
||||
/**
|
||||
* @return 指定此次登录 token 有效期,单位:秒
|
||||
*/
|
||||
public Long getTimeout() {
|
||||
public long getTimeout() {
|
||||
return timeout;
|
||||
}
|
||||
|
||||
|
@ -16,6 +16,7 @@ public class SaTokenApplication {
|
||||
public static void main(String[] args) {
|
||||
SpringApplication.run(SaTokenApplication.class, args);
|
||||
System.out.println("\n启动成功:Sa-Token配置如下:" + SaManager.getConfig());
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -22,10 +22,11 @@
|
||||
- [前后端分离](/up/not-cookie)
|
||||
- [自定义 Token 风格](/up/token-style)
|
||||
- [自定义 Token 前缀](/up/token-prefix)
|
||||
- [同端互斥登录](/up/mutex-login)
|
||||
- [记住我模式](/up/remember-me)
|
||||
- [登录参数](/up/login-parameter)
|
||||
- [二级认证](/up/safe-auth)
|
||||
- [模拟他人 & 身份切换](/up/mock-person)
|
||||
- [同端互斥登录](/up/mutex-login)
|
||||
- [账号封禁](/up/disable)
|
||||
- [密码加密](/up/password-secure)
|
||||
- [会话查询](/up/search-session)
|
||||
|
@ -13,15 +13,15 @@ Sa-Token 内置防火墙组件 `SaFirewallStrategy`,用于拦截一些可能
|
||||
- `SaFirewallCheckHookForWhitePath`:请求 path 白名单放行。
|
||||
- `SaFirewallCheckHookForBlackPath`:请求 path 黑名单校验。
|
||||
- `SaFirewallCheckHookForPathDangerCharacter`:请求 path 危险字符校。
|
||||
- `SaFirewallCheckHookForPathBannedCharacter`:请求 path 禁止字符校验
|
||||
- `SaFirewallCheckHookForDirectoryTraversal`:请求 path 目录遍历符检测
|
||||
- `SaFirewallCheckHookForPathBannedCharacter`:请求 path 禁止字符校验。
|
||||
- `SaFirewallCheckHookForDirectoryTraversal`:请求 path 目录遍历符检测。
|
||||
- `SaFirewallCheckHookForHost`:Host 检测。
|
||||
- `SaFirewallCheckHookForHttpMethod`:请求 Method 检测。
|
||||
- `SaFirewallCheckHookForHeader`:请求头检测。
|
||||
- `SaFirewallCheckHookForParameter`:请求参数检测。
|
||||
|
||||
|
||||
### 默认 hook 配置:
|
||||
### 1、默认 hook 配置:
|
||||
|
||||
假设我们想要增加请求 path 黑名单,可以使用如下代码:
|
||||
|
||||
@ -45,7 +45,7 @@ public class SaTokenConfigure {
|
||||
除了 `SaFirewallCheckHookForBlackPath` 以外,其它所有 hook 均可通过此方式重载配置,在此暂不冗余演示。
|
||||
|
||||
|
||||
### 注册新的 hook 规则:
|
||||
### 2、注册新的 hook 规则:
|
||||
你可以使用如下代码注册新的 hook 规则:
|
||||
|
||||
``` java
|
||||
@ -68,7 +68,7 @@ SaFirewallStrategy.instance.removeHook(SaFirewallCheckHookForHost.class);
|
||||
```
|
||||
|
||||
|
||||
### 指定异常处理:
|
||||
### 3、指定异常处理:
|
||||
|
||||
被防火墙拦截的请求不会做出格式化响应,因为通常这些请求为非正常业务请求,只需阻断即可,无需前端依照响应做出页面提示。
|
||||
|
||||
|
35
sa-token-doc/up/login-parameter.md
Normal file
35
sa-token-doc/up/login-parameter.md
Normal file
@ -0,0 +1,35 @@
|
||||
# 登录参数
|
||||
|
||||
在之前的章节我们提到,通过 `StpUtil.login(xxx)` 可以完成指定账号登录,同时你可以指定第二个参数来扩展登录信息,比如:
|
||||
|
||||
``` java
|
||||
// 指定`账号id`和`设备类型`进行登录
|
||||
StpUtil.login(10001, "PC");
|
||||
|
||||
// 设置登录账号 id 为 10001,并指定是否为 “记住我” 模式
|
||||
StpUtil.login(10001, false);
|
||||
```
|
||||
|
||||
除了以上内容,第二个参数你还可以指定一个 `SaLoginParameter`,来详细控制登录的多个细节,例如:
|
||||
|
||||
``` java
|
||||
StpUtil.login(10001, new SaLoginParameter()
|
||||
.setDeviceType("PC") // 此次登录的客户端设备类型, 一般用于完成 [同端互斥登录] 功能
|
||||
.setDeviceId("xxxxxxxxx") // 此次登录的客户端设备ID, 登录成功后该设备将标记为可信任设备
|
||||
.setIsLastingCookie(true) // 是否为持久Cookie(临时Cookie在浏览器关闭时会自动删除,持久Cookie在重新打开后依然存在)
|
||||
.setTimeout(60 * 60 * 24 * 7) // 指定此次登录 token 的有效期, 单位:秒,-1=永久有效
|
||||
.setActiveTimeout(60 * 60 * 24 * 7) // 指定此次登录 token 的最低活跃频率, 单位:秒,-1=不进行活跃检查
|
||||
.setIsConcurrent(true) // 是否允许同一账号多地同时登录 (为 true 时允许一起登录, 为 false 时新登录挤掉旧登录)
|
||||
.setIsShare(true) // 在多人登录同一账号时,是否共用一个 token (为 true 时所有登录共用一个token, 为 false 时每次登录新建一个 token)
|
||||
.setMaxLoginCount(12) // 同一账号最大登录数量,-1代表不限 (只有在 isConcurrent=true, isShare=false 时此配置项才有意义)
|
||||
.setMaxTryTimes(12) // 在每次创建 token 时的最高循环次数,用于保证 token 唯一性(-1=不循环尝试,直接使用)
|
||||
.setExtra("key", "value") // 记录在 Token 上的扩展参数(只在 jwt 模式下生效)
|
||||
.setToken("xxxx-xxxx-xxxx-xxxx") // 预定此次登录的生成的Token
|
||||
.setIsWriteHeader(false) // 是否在登录后将 Token 写入到响应头
|
||||
.setTerminalExtra("key", "value")// 本次登录挂载到 SaTerminalInfo 的自定义扩展数据
|
||||
);
|
||||
```
|
||||
|
||||
以上大部分参数在未指定时将使用全局配置作为默认值。
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user