Azure B2C如何配置带最大会话限制的滚动会话?
Azure AD B2C 自定义会话策略实现方案
你提的会话规则需求完全可以通过 Azure AD B2C 自定义策略实现,组合使用滚动会话超时和绝对会话超时两套机制即可覆盖所有规则。
实现逻辑
两套超时规则同时生效,任意一个条件触发就会强制用户重新登录:
- 滚动会话超时:对应用户闲置超时规则,活跃时自动顺延有效期
- 绝对会话超时:对应最长会话上限规则,无论活跃与否到点强制失效
配置方法
你需要在自定义策略的依赖方(RelyingParty)文件中,修改 UserJourneyBehaviors 下的会话管理配置,示例如下:
<RelyingParty> <!-- 其他原有配置 --> <UserJourneyBehaviors> <!-- 配置滚动会话超时 --> <SessionExpiryType>Rolling</SessionExpiryType> <!-- 闲置1天超时,单位为秒,86400秒=1天 --> <SessionExpiryInSeconds>86400</SessionExpiryInSeconds> <!-- 配置绝对会话最长有效期,30天=2592000秒 --> <AbsoluteSessionLifetimeInSeconds>2592000</AbsoluteSessionLifetimeInSeconds> </UserJourneyBehaviors> </RelyingParty>
参数调整说明
如果需要实现「闲置1小时超时、最长1天有效期」的规则,仅需调整对应秒数即可:
- 1小时滚动超时:
SessionExpiryInSeconds设为3600 - 1天绝对上限:
AbsoluteSessionLifetimeInSeconds设为86400
内容的提问来源于stack exchange,提问作者davidx1
相关产品推荐
相关产品推荐

