fbe80ad784
上线账号权限管理(后端): - 迁移 000032:users + user_sessions(token 只存 sha256,服务端可即时撤销) - bcrypt 密码、8 次失败锁 15 分钟、统一 401 错误防用户名枚举 - 三角色 viewer/engineer/admin;HttpOnly+SameSite=Lax 会话 cookie,滑动续期 - 强制改密锁定:must_change_password 会话只能走 auth 端点;首登 dobotai - bootstrap:users 表为空时创建 admin(初始密码 dobotai,强制改密) - 生产双闸授权/回滚/失败重试收敛为 admin 角色;AuthorizedBy 用会话身份 - 全部业务写端点删除手填 actor 字段(operator_ref/reviewer_ref/created_by/ sealed_by/confirmed_by),服务端从会话注入;auth 关闭的开发 socket 回退 system - 成员管理 API:列表/创建/改角色/启停/重置密码,最后一名 active admin 保护 - RBAC 矩阵纯函数契约测试 + 中间件行为测试(登录/锁定/角色/审计戳) - 附带修复:GET /api/v1/users 曾被 GET=viewer 规则误放行(测试抓到)
35 lines
1.5 KiB
Modula-2
35 lines
1.5 KiB
Modula-2
module knowledge-governance
|
|
|
|
go 1.26.0
|
|
|
|
require (
|
|
github.com/aws/aws-sdk-go-v2 v1.47.0
|
|
github.com/aws/aws-sdk-go-v2/config v1.33.4
|
|
github.com/aws/aws-sdk-go-v2/credentials v1.20.4
|
|
github.com/aws/aws-sdk-go-v2/service/s3 v1.101.0
|
|
github.com/jackc/pgx/v5 v5.9.2
|
|
golang.org/x/crypto v0.57.0
|
|
)
|
|
|
|
require (
|
|
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.10 // indirect
|
|
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.20.0 // indirect
|
|
github.com/aws/aws-sdk-go-v2/internal/configsources v1.5.3 // indirect
|
|
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.8.3 // indirect
|
|
github.com/aws/aws-sdk-go-v2/internal/v4a v1.5.3 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.19 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.15 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.14.3 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.23 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/signin v1.10.0 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/sso v1.38.0 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.43.0 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/sts v1.50.0 // indirect
|
|
github.com/aws/smithy-go v1.28.1 // indirect
|
|
github.com/jackc/pgpassfile v1.0.0 // indirect
|
|
github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 // indirect
|
|
github.com/jackc/puddle/v2 v2.2.2 // indirect
|
|
golang.org/x/sync v0.23.0 // indirect
|
|
golang.org/x/text v0.42.0 // indirect
|
|
)
|