跳转到主要内容
使用 InsForge 身份验证来处理您的应用程序的注册、登录、会话和身份。用户可以使用电子邮件和密码、魔法链接、一次性代码、OAuth 提供程序(Google、GitHub、Apple 等)或您自己的任何符合 OIDC 的身份提供程序进行登录。InsForge 在登录时发出 JSON Web Token,平台上的每个其他产品都使用相同的令牌。
InsForge 仪表盘身份验证方法显示电子邮件和密码、Google OAuth 和 GitHub OAuth
身份验证是检查用户是否就是他们所声称的人。授权是检查他们可以做什么。InsForge 直接处理前者,并通过读取身份验证 JWT 的 行级安全 策略来增强后者。

功能

电子邮件和密码

默认值。新用户使用电子邮件和密码注册,收到确认电子邮件,并在登录时接收会话 JWT。密码重置、电子邮件验证和暴力破解限制都是内置的。

魔法链接和一次性密码

向用户的电子邮件发送一次性链接或六位数代码。无密码登录、账户恢复和步进身份验证都使用相同的基础。

OAuth 提供程序

对 Google、GitHub、Apple、Microsoft、GitLab、Discord 等的一流支持。通过 URL 添加自定义 OAuth 2.0 / OIDC 提供程序(Keycloak、Okta、Auth0、您自己的 IdP),无需编写特定于提供程序的代码。

OAuth 服务器模式

将 InsForge 本身作为 OAuth 2.0 / OIDC 身份提供程序运行,用于您自己的下游应用程序。有关完整设置,请参阅 OAuth 服务器指南

行级安全

身份验证 JWT 自动流经每个 InsForge SDK 调用。Postgres RLS 策略从令牌读取声明,并逐行决定用户可以读取和写入的内容。无论请求命中数据库、存储还是实时通道,相同的身份和相同的策略都适用。

数据库中的 auth.users

用户状态存在于项目的 Postgres 数据库中的 auth 架构中。通过外键将 auth.users 连接到您的应用程序表,通过触发器对身份更改做出反应,并以与备份其他所有内容相同的方式备份整个事物。

使用它进行构建

TypeScript SDK

从 Node、浏览器和边缘注册、登录和管理会话。

Swift SDK

用于 iOS 和 macOS 的原生 Swift 身份验证客户端。

Kotlin SDK

用于 Android 和 JVM 的协程优先身份验证客户端。

REST API

普通 HTTP 身份验证端点,可从任何语言调用。

下一步