更好的门户工作OS Auth 服务
WorkOS AuthKit提供商为"更好的门户"服务. 该服务将用户重定向到WorkOS,与WorkOS节点SDK交换回调码服务器侧面,发行了BetterPortal令牌,并刷新了WorkOS刷新令牌的BP令牌.
每个应用程序服务配置需要:
clientIdapiKey
可选配置 :
provider默认为authkitconnectionId, (中文(简体) ),organizationId, (中文(简体) ),domainHintscopesroleClaimPath默认为roles- 服务配置
workosStatePath默认为./workos-state.json; 将其设置为如/data/workos-state.json生产 - 服务配置
syncIntervalSeconds默认为21600并每6小时重复一次暂停许可/角色同步
书记官处 betterportal。 。 。 .
OAuth 登录状态被存储为 SHA-256 指定待处理文件 workosStatePath 在交换回调代码之前解剖掉。 保留此目录可写入 。 复制品应当共享相同的持续路径,这样回调可以在任何复制品上完成;一个没有发行状态的复制品拒绝回调. 过期的待处理文件在以后的登录开始期间被清理,每份复制件的待处理状态限制为一万.
登记后和登记后目的地为应用所有 app.auth.redirects 查看在 tenants & Apps 中配置的引用,而不是提供者添加字段.
角色同步将BP作为真理的许可来源. WorkOS许可弹片是服务拥有的短键, bp_<shortId>_<read|create|update|delete>,将完整的房客/服务/景色绘图储存在 workosStatePath. 角色由 WorkOS 角色 satters 的每个应用程序镜像到 BP 应用角色.
通过标准显示角色同步端点 auth.roles.sync.view, (中文(简体) ), auth.permissions.sync,以及 auth.roles.sync 操作角色。 消费者发现他们公布的路径,而不是依赖于WorkOS路由名称.
服务使用 @workos-inc/node 11 在节点24上(SDK需要节点22.11+). 它的AuthKit,用户/角色/许可和SSO集成保留了现有的合同;这一服务没有使用SDK的Pipes API在11版中被修改.
更新依赖性后验证 SDK 集成 :
npm run build -w @betterportal/auth-workos
npm run test -w @betterportal/auth-workos