完整 OIDC 实现
Authorization Code Flow + PKCE,兼容 oidc-client-ts 等主流客户端,完整支持 Discovery 端点。
标准协议、安全默认、即插即用。
Authorization Code Flow + PKCE,兼容 oidc-client-ts 等主流客户端,完整支持 Discovery 端点。
所有 UG 子应用共享同一套身份体系,一次登录全线畅通,支持 Refresh Token Rotation。
私钥签发 Access Token,公钥通过 JWKS 端点分发,各下游服务独立验签无需回调。
标准 OpenID Connect 协议端点
| 方法 | 路径 |
|---|---|
| GET | /.well-known/openid-configuration |
| GET | /.well-known/jwks.json |
| GET | /api/oidc/authorize |
| POST | /api/oidc/token |
| GET | /api/oidc/userinfo |
| POST | /api/oidc/introspect |
| POST | /api/oidc/revoke |
| GET | /api/oidc/end-session |
几行代码即可对接 UG 鉴权中心。
import { UserManager } from 'oidc-client-ts'
const userManager = new UserManager({
authority: 'https://auth.ug666.top',
client_id: 'your_app_id',
redirect_uri: 'https://yourapp.com/callback',
scope: 'openid profile email',
response_type: 'code',
})
await userManager.signinRedirect()
const user = await userManager.signinRedirectCallback()import { createAuthMiddleware } from '@ug666/auth-sdk'
const authMiddleware = createAuthMiddleware({
issuer: 'https://auth.ug666.top',
audience: 'your_app_id',
})
export async function GET(req: Request) {
const user = await authMiddleware.verify(req)
if (!user) return Response.json({ error: 'Unauthorized' }, { status: 401 })
return Response.json({ userId: user.sub })
}