会话配置
会话配置定义了租户级别的控制,用于确定 Logto 登录会话的有效时长以及如何执行与会话相关的访问策略。
本页内容包括:
- 会话 TTL 配置
- 每个应用的最大并发认证设备数
会话 TTL 配置
会话 TTL 决定了 Logto OIDC 登录会话的最长生命周期。 这是一个租户级别的设置:一旦配置,它将适用于该租户中的所有应用和认证 (Authentication) 流程。
默认行为
- 默认情况下,会话 TTL 为 14 天。
- 如果没有配置自定义 TTL,Logto 将继续使用此默认值。
通过 Logto Console 配置
你可以在 Console 中配置会话 TTL,路径为:
Console > Tenant > Settings > OIDC settings使用 Session maximum time to live 来更新该值。
Console 使用天作为输入和显示单位,而底层的 OIDC 会话配置 / API 使用秒。
通过 Management API 配置
使用以下端点读取和更新 OIDC 会话配置:
GET /api/configs/oidc/sessionPATCH /api/configs/oidc/session
示例(ttl 以秒为单位):
curl https://[tenant-id].logto.app/api/configs/oidc/session \
-H 'authorization: Bearer <management_api_access_token>'
curl -X PATCH https://[tenant-id].logto.app/api/configs/oidc/session \
-H 'authorization: Bearer <management_api_access_token>' \
-H 'content-type: application/json' \
--data-raw '{"ttl":1209600}'
1209600 秒 = 14 天。
对于 OSS 部署,在更改 logto-config 后重启服务实例,以便服务器可以获取最新的 OIDC 设置。
要在不重启服务的情况下自动应用 OIDC 配置更新,请启用中央 redis 缓存。
每个应用的最大并发认证设备数
每个应用的最大并发认证设备数是一个应用级别的控制,用于限制每个用户可以为特定应用保持的活动授权数量。
这是通过应用程序 customClientMetadata 中的 maxAllowedGrants 字段配置的。
在 应用程序数据结构 中了解更多。
行为
当设置了 maxAllowedGrants 时,Logto 会在每次成功授权时评估用户当前应用的活动授权。
如果活动授权数量超过限制,Logto 会优先撤销最早的授权。
如果未设置 maxAllowedGrants,则没有并发限制。
通过 Logto Console 配置
你可以在每个应用的详细信息页面下配置此项,路径为:
Console > Applications > Application details > Concurrent device limit
为当前应用设置每个用户的最大并发活动授权(设备)数量。
此设置不支持机器对机器应用、受保护应用和 SAML 应用。
相关资源
会话 管理用户会话 管理用户授权应用(授权)应用程序数据结构:maxAllowedGrants
与 Management API 交互