初创企业如何借助Auth0的B2B能力
作为构建B2B SaaS产品的创始人,您正忙于打造下一个伟大产品,并已决定利用Auth0作为您应用程序的完整身份验证解决方案。通过Auth0 for Startups项目,您可以获得为期一年的B2B专业版功能使用权,让您的用户能够更安全地访问所需内容。初创计划包含:每月最多100,000名活跃用户、访问Organizations功能、入站SCIM等等。
拥有这些功能后,您如何让您的企业客户更安全地访问和使用您的应用程序?我们将探讨构建B2B SaaS应用时由Auth0解决的四个核心组成部分:
- 多租户架构
- 自定义开发体验
- 定制化的最终用户体验
- 对企业客户的委托访问
构建B2B SaaS应用程序的多租户架构
多租户是将用户管理融入B2B应用的核心。这意味着每个企业客户使用的应用程序实例都独立于其他企业客户的实例,包括独立的用户管理、授权、多因素认证设置、品牌形象等。这可以通过Auth0的以下功能实现:
- Organizations
- 单点登录(以及各种身份提供商)
- 多租户定制品牌
您可以使用Auth0的Organizations功能构建多租户用户管理,并为您的每个企业客户个性化登录和用户管理体验。
单点登录现在已成为许多大型企业的硬性要求。您的应用程序可以支持常见的企业联合身份验证场景,例如Active Directory、轻量级目录访问协议、PingFederate、安全断言标记语言或OpenID Connect。
默认情况下,通用登录的品牌颜色可以更新以匹配您应用程序的品牌颜色。然而,对于每个企业,您可能希望进一步定制登录体验。这些定制允许您添加与每个组织相关的特定细节——他们的徽标、品牌颜色、其他元数据等——这可以通过页面模板实现。
对于更深度的定制,通用登录高级定制允许您为通用登录中的每个屏幕构建自定义的客户端渲染界面。
自定义开发体验
用户身份旅程是一个动态的体验。在任何时候,您的应用程序可能需要收集有关用户的信息,评估其登录是否安全,或者将数据从Auth0发送到第三方开发工具。Auth0提供了多种开发体验功能来实现这些需求:
- Actions
- 市场集成
- API和SDK
借助Actions,您可以在Auth0内部编写自定义的Node.js函数来定制用户旅程。您可以在Auth0的流程中选择一个触发器(例如用户注册前或用户注册后),并选择一个在该触发器被调用时运行的Action。
Actions模板页面包含了常见的用例。这些可以在您的Auth0仪表板中找到:Actions > 库 > 创建Action > 选择模板。
如果您不想自己编写代码呢?另一种构建Actions的方式是使用Forms,这是一个位于仪表板Actions下的可视化(拖放式)工具。您可以选择一个预构建的模板并更新它,或者从头开始创建新的。这个功能对于更复杂的用例非常有用,例如渐进式分析,您需要审查用户数据并在后续的多次登录中提示他们提供更多信息。
在市场内,您可以搜索Auth0提供的所有集成,包括SSO连接和外部工具,这样您就不必自己构建这些集成。这些集成也直接在Auth0仪表板中提供,以便更快地访问。
根据您的技术栈和用例的复杂性,您可能需要更多地依赖Auth0的API和SDK。主要有三种API:身份验证API、管理API和MyAccount API。管理API可以为B2B应用解锁关键能力,例如让您的企业客户能够管理他们自己的组织和用户。
定制化用户体验
您的用户在访问应用时可能需要额外的支持,您可以提供选项来帮助解决潜在的账户相关问题或完全预防它们:
- 灵活的成员资格管理
- 账户关联
设置好登录体验后,用户需要访问特定的组织。这可能是每个组织的特定用户列表,也可能是基于他们的电子邮件域自动分配。您如何管理每个组织的成员资格?您可以通过电子邮件邀请用户或授予自动成员资格。
邀请用户并分配其组织可以通过Auth0仪表板手动完成,也可以通过管理API以编程方式完成。
在某些情况下,您可能希望启用自动成员资格,这将允许任何拥有已验证连接的用户访问某个组织。您还可以在此基础上进行扩展,通过组织域来限制具有特定电子邮件域的用户自动加入。用户身份验证和组织分配的更多途径在此有详细记录。
另一方面,您还需要处理拥有多个身份标识的单个用户。
账户关联是一个非常常见的用例,我们都经历过。想象一下,您第一次访问一个应用程序时,决定使用电子邮件和密码登录,因为这似乎是最快的方式。然而,下次访问该应用程序时,您不记得上次是怎么登录的了。您知道使用了哪个电子邮件地址,但您是手动输入的还是通过谷歌登录的?谷歌SSO是最快的选项,所以您自然使用该方法登录,却突然看到了一个全新的账户。
在后端,两个账户关联的电子邮件是相同的,但用户却因使用的方法不同而被困在两个独立的账户中——因此他们必须联系支持团队来合并账户。这时用户账户关联功能就派上用场了。该功能默认是禁用的,因为Auth0默认将所有身份视为独立的。然而,一旦启用,用户就可以将另一个账户链接到其当前账户,从而能够使用多种方法登录应用。
对企业客户的委托访问
对于某些用例,您的客户可能需要对他们的组织拥有更直接的控制权,无论是管理用户、MFA和SSO设置还是其他方面。在这些情况下,您需要通过以下方式安全地与客户共享适量的访问权限:
- 委托管理访问权限
- 自助服务SSO
委托管理访问权限可以帮助您为客户提供管理权限,使他们能够自定义自己用户的组织设置。通过管理API,您可以委托访问权限来邀请或删除用户、管理角色和权限、更新其组织名称和品牌形象等。SaaStart是一个使用管理API构建的开源应用程序,展示了其中一些功能。
某些客户的SSO要求可能非常具体。自助服务SSO允许您将SSO设置委托给这些企业客户,为客户提供更多自主权,并使入职过程更加顺畅和简单。这包括一个SSO设置助手,引导您的企业客户管理员完成配置SSO、可选地验证其域,以及在他们需要时配置用户预配置的过程。
Auth0还能如何支持初创企业?
Auth0提供了一整套专门帮助开发者构建B2B应用程序并管理其身份验证需求的功能。SaaS应用程序可能变得复杂,并且通常不仅需要对人类进行授权,还需要对机器和其他工具进行授权。组织的机器对机器访问允许您控制M2M应用程序可以访问哪些组织。
如果您想了解作为Auth0 for Startups项目的一部分,您还可以获得哪些其他功能和能力,可以在定价页面查看B2B专业版计划的权益说明。