Logto 产品更新
Logto v1.46.0 已发布。此次更新带来了 OIDC 阶段性提升认证、以太坊登录、保留 iOS 保存密码提示、自助式个人访问令牌,以及一轮安全加固。
Logto v1.46.0 已发布。此次更新带来了 OIDC 阶段性提升认证、以太坊登录、保留 iOS 保存密码提示、自助式个人访问令牌,以及一轮安全加固。
Logto v1.46.0 推出了用于敏感操作的 OIDC 阶段性提升认证、以太坊登录、保留 iOS "保存密码" 提示的方法、Account Center 的自助式个人访问令牌,以及极验验证码、SAML 静态属性和一轮安全加固。以下是此次更新的新内容。
应用现在可以要求在执行敏感操作前进行最近或更高强度的登录,使用标准 OIDC 参数。
acr_values 和 max_age,然后从 ID 令牌、访问令牌和自省响应中读取 acr、amr 和 auth_time。支持的 ACR 值会在发现文档中公布。max_age 请求更短窗口。设置和详情见 阶段性提升认证指南。
全新的以太坊钱包社交连接器(@logto/connector-siwe)允许用户用 EVM 钱包登录。拥有浏览器钱包(注入的 EIP-1193 提供方)的用户无需离开登录页即可签署一次性的以太坊登录(EIP-4361)消息。一个地址适用于所有支持的 EVM 链,管理员可以限制允许的链 ID。
在 iOS 上,ASWebAuthenticationSession 一旦检测到应用的回调 URL 就会关闭,这会导致系统的“保存密码”提示在密码登录后立刻消失。
传递新的登录参数 confirm_redirect_policy=password,用户输入密码后会出现“继续”页面。只有用户点击“继续”后才会返回至应用,因此提示会一直保留在屏幕上。不传递该参数,Logto 会像以前一样立刻跳转回去。
控制台中的 Swift 集成指南展示了具体用法。详见 保留 iOS 保存密码提示。
启用 Account Center 的个人访问令牌后,用户可在 Account Center 的 安全 页面创建、重命名和撤销自己的令牌。每个令牌只在创建时展示一次,并在 365 天内过期。
同样的操作可通过 Account API /api/my-account/personal-access-tokens 完成,需新 scope urn:logto:scope:personal_access_tokens。
mfa.required。无论组织级 MFA 策略如何,用户下次登录时必须设置 MFA。Legacy 密码算法导入携带 SHA-crypt($5$ 与 $6$)哈希的用户密码。access_denied:取消同意页或直接登录失败时,现在会带 access_denied 返回用户至客户端应用。自定义登录体验也可通过 POST /api/experience/abort 以同样方式终止交互。login_hint:为 Account Center 的任意 URL 添加 login_hint,以便在需要用户登录时预填用户标识。staticAttributes 字段。same-origin-allow-popups 或 same-origin。默认不发送头部,因此以弹窗打开登录的应用依旧正常工作。GET /api/users 接受可重复的 customData 查询参数,例如 customData={"customId":114514}。GET /api/organizations 接受 jitEmailDomain 查询参数,返回具有该邮箱域的用户会被预配到的组织。hasPassword:GET /api/organizations/:id/users 现在会显示每个成员是否设置了密码。deliveryId:每个 webhook 负载现在都会携带一个在重试时保持不变的 deliveryId,可确保每份推送只处理一次。同时也是该推送的审计日志 ID。本次版本在 MFA、多种社交与企业登录、Account API 及 Logto Tunnel 等方面加强了安全性。
Range 请求。详情请参考 v1.46.0 发布说明。
502 connector.social_provider_unreachable,授权被拒绝返回 401 connector.authorization_failed,且连接器错误会显示实际的服务方信息而不再是 {}。scope 值:像 OpenAI Codex 这样在刷新令牌请求中发送前导空格的 scope 的客户端不再因 invalid_scope 失败,用户登录状态保持。customClientMetadata 键将被拒绝,像 refreshTokenTtlInDay 这样的拼写错误不会再悄然通过。o365role 的映射属性将带上用户的实际值,而不是字面占位符。expires_in 为字符串、scope 为数组,Patreon 连接器迁移至 Patreon API v2,Patreon 登录重新可用。Cannot find 'client' in scope 错误。(感谢 @timokoethe)logto db alteration deploy)再启动新版本。/console 的请求未命中任何已配置管理端口时记录警告,以帮助你发现配置错误的 ADMIN_ENDPOINT。感谢以下社区成员在本次发行所作贡献:
deliveryId (#9882),组织成员的 hasPassword (#9883),即时预配域组织筛选 (#9912),customClientMetadata 键校验 (#9931),更清晰的社交登录错误 (#9879, #9880),数据库连接重试 (#9881, #9928) 和连接器请求错误处理 (#9849)ADMIN_ENDPOINT 不匹配警告 (#9408)准备升级了吗?请查阅我们的 升级指南 获取分步流程。
完整变更列表见 GitHub 发布页。