企业SSO服务-WorkOS

企业SSO服务-WorkOS

专用API
服务商 服务商: WorkOS
【更新时间: 2024.09.01】 提供一体化单点登录(SSO)解决方案,使企业应用能轻松集成多种身份提供商的登录功能。开发者能快速添加企业级SSO支持,用户通过SAML和OpenID Connect协议无缝登录,减少开发时间,并提升企业应用的适用性。
$ 125 每个连接 / 月 去服务商官网采购>
服务星级:6星
⭐ ⭐ ⭐ ⭐ ⭐ ⭐ 🌟
调用次数
0
集成人数
0
商用人数
0
! SLA: N/A
! 响应: N/A
! 适用于个人&企业
收藏
×
完成
取消
×
书签名称
确定
<
产品介绍
>

什么是WorkOS的企业SSO服务?

企业SSO服务-WorkOS是一种专为企业级应用设计的单点登录解决方案,旨在简化多身份提供商集成的复杂性。通过提供一个统一的API接口,WorkOS支持与20多个身份提供商的集成,包括流行的SAML和OpenID Connect协议。它允许企业用户使用其现有的企业凭据访问各种应用,减少了多重登录的需求,并提高了安全性和用户体验。WorkOS还支持开发者自定义用户体验和数据库管理,使其能够轻松融入现有的应用架构中。

什么是WorkOS的企业SSO服务?

由服务使用方的应用程序发起,以Restful风格为主、通过公网HTTP协议调用WorkOS的企业SSO服务,从而实现程序的自动化交互,提高服务效率。

WorkOS的企业SSO服务有哪些核心功能?

  1. 支持SAML和OpenID Connect协议:为使用这些协议的任何身份提供者提供SSO。
  2. 快速集成:在几天内支持您的第一位企业客户。
  3. 支持20+身份提供者:包括Google和Microsoft等流行的OAuth提供商。
  4. 持久导航状态:编码有用的信息以帮助在重定向之间恢复应用程序状态。
  5. 多种编程语言支持:包括Node.js、Ruby、Python、PHP和Java。
  6. Magic Link无密码登录:提供简单的登录选项,同时保障账户安全。

WorkOS的企业SSO服务的技术原理是什么?

WorkOS的企业SSO服务的核心优势是什么?

  1. 99.99% 正常运行时间:为企业客户保证正常运行时间 SLA
  2. 高级支持:专家指导的集成支持和响应时间 SLA
  3. 定制企业计划:根据您的业务需求量身定制的基于合同的计划
  4. 简化集成:通过单一API同时支持SAML和OpenID Connect协议,实现快速而简便的身份验证集成。
  5. 广泛支持:支持20多个主流身份提供商,确保企业可以灵活选择和整合各种身份验证服务。

在哪些场景会用到WorkOS的企业SSO服务?

1. 企业级应用开发:在开发需要与多个企业身份提供商集成的应用时,WorkOS简化了SSO的实现过程,使开发者无需手动处理复杂的SAML和OpenID Connect协议集成,节省了开发时间并提高了安全性。

 

 

2. 增强企业安全性:对于需要加强登录安全的企业,WorkOS允许用户通过现有的企业身份验证系统登录应用,减少了管理多个凭据的复杂性,并提高了整体系统的安全性和一致性。

 

 

3. 用户管理优化:在需要为企业用户提供个性化体验的场景中,WorkOS支持自定义登录流程和数据管理,使开发者能够创建符合企业需求的用户界面,同时保持对数据的完全控制。

 

<
产品价格
>

<
使用指南
>

1.将 SSO 添加到您的应用程序
让我们将 SSO 身份验证工作流程构建到您的应用程序中。
安装 WorkOS SDK
WorkOS 提供多种流行编程语言的本机 SDK。选择下面的语言以查看使用您的应用程序语言的说明。

设定密钥
要调用 WorkOS,请提供 API 密钥,在某些情况下还需要提供客户端 ID。将这些值存储为托管机密,例如WORKOS_API_KEY和WORKOS_CLIENT_ID ,并将它们作为环境变量或根据您的首选项直接传递到应用程序的配置中。

环境变量
WORKOS_API_KEY='sk_example_123456789'
WORKOS_CLIENT_ID='client_123456789'

添加端点以启动 SSO
通过 WorkOS API 启动 SSO 的端点负责将身份验证工作流程的其余部分移交给 WorkOS。下面显示了几个配置选项。

您可以使用可选的state参数对任意信息进行编码,以帮助恢复重定向之间的应用程序状态。

添加端点以启动 SSO
通过 WorkOS API 启动 SSO 的端点负责将身份验证工作流程的其余部分移交给 WorkOS。下面显示了几个配置选项。

您可以使用可选的state参数对任意信息进行编码,以帮助恢复重定向之间的应用程序状态。

import type { NextApiRequest, NextApiResponse } from 'next';
import { WorkOS } from '@workos-inc/node';

const workos = new WorkOS(process.env.WORKOS_API_KEY);
const clientId = process.env.WORKOS_CLIENT_ID;

export default (_req: NextApiRequest, res: NextApiResponse) => {
  // Use the Test Organization ID to get started. Replace it with
  // the user’s real organization ID when you finish the integration.
  const organization = 'org_test_idp';

  // The callback URI WorkOS should redirect to after the authentication
  const redirectUri = 'https://dashboard.my-app.com';

  const authorizationUrl = workos.sso.getAuthorizationUrl({
    organization,
    redirectUri,
    clientId,
  });

  res.redirect(authorizationUrl);
};
const express = require('express');
const { WorkOS } = require('@workos-inc/node');

const app = express();

const workos = new WorkOS(process.env.WORKOS_API_KEY);
const clientId = process.env.WORKOS_CLIENT_ID;

app.get('/auth', (_req, res) => {
  // Use the Test Organization ID to get started. Replace it with
  // the user’s real organization ID when you finish the integration.
  const organization = 'org_test_idp';

  // The callback URI WorkOS should redirect to after the authentication
  const redirectUri = 'https://dashboard.my-app.com';

  const authorizationUrl = workos.sso.getAuthorizationUrl({
    organization,
    redirectUri,
    clientId,
  });

  res.redirect(authorizationUrl);
});

添加回调端点
接下来,我们添加重定向端点,该端点将在用户通过其身份提供商进行身份验证后处理来自 WorkOS 的回调。此端点应将 WorkOS 返回的授权代码与经过身份验证的用户的配置文件进行交换。授权码的有效期为10分钟。

import type { NextApiRequest, NextApiResponse } from 'next';
import { WorkOS } from '@workos-inc/node';

const workos = new WorkOS(process.env.WORKOS_API_KEY);
const clientId = process.env.WORKOS_CLIENT_ID;

export default async (req: NextApiRequest, res: NextApiResponse) => {
  const { code } = req.query;

  const { profile } = await workos.sso.getProfileAndToken({
    code,
    clientId,
  });

  // Use the Test Organization ID to get started. Replace it with
  // the user’s real organization ID when you finish the integration.
  const organization = 'org_test_idp';

  // Validate that this profile belongs to the organization used for authentication
  if (profile.organizationId !== organization) {
    return res.status(401).send({
      message: 'Unauthorized',
    });
  }

  // Use the information in `profile` for further business logic.

  res.redirect('/');
};

2.配置重定向 URI
转到重定向仪表板中的页面来配置允许的重定向 URI。这是您在上一节中使用的回调端点。

多租户应用程序通常会指定一个重定向 URI。您可以为单租户应用程序设置多个重定向 URI。您需要确保指定在 WorkOS 客户端调用中使用哪个重定向 URI 来获取授权 URL。

身份提供商发起的 SSO
通常,您在 WorkOS 仪表板中配置的默认重定向 URI 将用于所有身份提供商发起的 SSO 会话。这是因为 WorkOS 客户端不用于启动身份验证流程。

但是,您的客户可以指定一个单独的重定向 URI,作为其 SAML 设置中的RelayState参数,用于所有 IdP 发起的会话。

3.端到端测试
如果您按照本指南操作,则可以使用暂存环境中可用的测试组织来启动 SSO。这样,您就可以端到端地测试您的集成了。

详情查看链接https://workos.com/docs/sso/1-add-sso-to-your-app/set-secrets

 

<
产品问答
>
?
最终用户数量会影响定价吗?
不会,WorkOS 上的每个连接都按相同的方式计费,无论使用的身份提供商 (IdP)、目录服务或最终用户总数如何。
?
我可以在付费之前试用 WorkOS 吗?
WorkOS 可以免费开始使用,您甚至不需要添加信用卡,直到您将连接从沙盒转移到生产环境。WorkOS 可以免费开始使用,您甚至不需要添加信用卡,直到您将连接从沙盒转移到生产环境。
?
暂存和生产之间有什么区别?
暂存环境用于测试集成,而生产环境是为使用真实客户数据的实时应用程序构建的。
?
我可以在不进行自定义的情况下使用管理门户吗?
是的,管理门户功能齐全,无需自定义,并且包含在所有 WorkOS 帐户中。可以申请自定义品牌和自定义域,但需支付额外的月费。
?
100万免费用户是怎么算的?
WorkOS 用户管理对每月最多 100 万活跃用户免费。如果用户在日历月内执行任何用户操作(例如:注册、登录或个人资料更新),则被视为活跃用户。联系我们以了解有关批量定价的更多信息。
<
关于我们
>
WorkOS
企业
WorkOS是一家提供企业级身份认证和用户管理解决方案的公司。通过其平台,企业能够快速集成单点登录(SSO)、用户目录同步、多因素认证等功能,简化了企业应用的开发过程。WorkOS支持多种身份提供商和编程语言,提供现代化的API和SDK,帮助企业轻松扩展市场,满足IT管理员的需求。其客户包括Vercel、Webflow、Prefect等知名企业。
联系信息
服务时间: 7*24
网页在线客服: 咨询

实现平等进入企业市场

WorkOS 致力于帮助每家软件公司做好企业准备。我们相信,任何软件公司的应用都可以被世界上最大的企业所接受。‍
网络
解锁了平等分配。WorkOS
解锁了平等访问。

 

 

 2019年成立
WorkOS 由 Michael Grinich 于 2019 年创立,他认识到满足企业的复杂需求对于为软件公司创造可持续的长期增长至关重要。

带着这种认识,WorkOS 诞生了。
现代 API 用于授权和用户身份
WorkOS 是一个现代 API 平台,使任何开发人员能够快速构建和交付复杂的企业功能:用户管理、单点登录 (SAML) 、目录同步 (SCIM)和管理门户(企业入门) 。

WorkOS 加速了 SaaS 公司的企业就绪之旅,因此他们的应用程序具有大型组织中“全面”采用的所有功能。

我们的客户获胜。他们的客户获胜。

 

<
最可能同场景使用的其他API
>
API接口列表
<
产品价格
>

<
使用指南
>

1.将 SSO 添加到您的应用程序
让我们将 SSO 身份验证工作流程构建到您的应用程序中。
安装 WorkOS SDK
WorkOS 提供多种流行编程语言的本机 SDK。选择下面的语言以查看使用您的应用程序语言的说明。

设定密钥
要调用 WorkOS,请提供 API 密钥,在某些情况下还需要提供客户端 ID。将这些值存储为托管机密,例如WORKOS_API_KEY和WORKOS_CLIENT_ID ,并将它们作为环境变量或根据您的首选项直接传递到应用程序的配置中。

环境变量
WORKOS_API_KEY='sk_example_123456789'
WORKOS_CLIENT_ID='client_123456789'

添加端点以启动 SSO
通过 WorkOS API 启动 SSO 的端点负责将身份验证工作流程的其余部分移交给 WorkOS。下面显示了几个配置选项。

您可以使用可选的state参数对任意信息进行编码,以帮助恢复重定向之间的应用程序状态。

添加端点以启动 SSO
通过 WorkOS API 启动 SSO 的端点负责将身份验证工作流程的其余部分移交给 WorkOS。下面显示了几个配置选项。

您可以使用可选的state参数对任意信息进行编码,以帮助恢复重定向之间的应用程序状态。

import type { NextApiRequest, NextApiResponse } from 'next';
import { WorkOS } from '@workos-inc/node';

const workos = new WorkOS(process.env.WORKOS_API_KEY);
const clientId = process.env.WORKOS_CLIENT_ID;

export default (_req: NextApiRequest, res: NextApiResponse) => {
  // Use the Test Organization ID to get started. Replace it with
  // the user’s real organization ID when you finish the integration.
  const organization = 'org_test_idp';

  // The callback URI WorkOS should redirect to after the authentication
  const redirectUri = 'https://dashboard.my-app.com';

  const authorizationUrl = workos.sso.getAuthorizationUrl({
    organization,
    redirectUri,
    clientId,
  });

  res.redirect(authorizationUrl);
};
const express = require('express');
const { WorkOS } = require('@workos-inc/node');

const app = express();

const workos = new WorkOS(process.env.WORKOS_API_KEY);
const clientId = process.env.WORKOS_CLIENT_ID;

app.get('/auth', (_req, res) => {
  // Use the Test Organization ID to get started. Replace it with
  // the user’s real organization ID when you finish the integration.
  const organization = 'org_test_idp';

  // The callback URI WorkOS should redirect to after the authentication
  const redirectUri = 'https://dashboard.my-app.com';

  const authorizationUrl = workos.sso.getAuthorizationUrl({
    organization,
    redirectUri,
    clientId,
  });

  res.redirect(authorizationUrl);
});

添加回调端点
接下来,我们添加重定向端点,该端点将在用户通过其身份提供商进行身份验证后处理来自 WorkOS 的回调。此端点应将 WorkOS 返回的授权代码与经过身份验证的用户的配置文件进行交换。授权码的有效期为10分钟。

import type { NextApiRequest, NextApiResponse } from 'next';
import { WorkOS } from '@workos-inc/node';

const workos = new WorkOS(process.env.WORKOS_API_KEY);
const clientId = process.env.WORKOS_CLIENT_ID;

export default async (req: NextApiRequest, res: NextApiResponse) => {
  const { code } = req.query;

  const { profile } = await workos.sso.getProfileAndToken({
    code,
    clientId,
  });

  // Use the Test Organization ID to get started. Replace it with
  // the user’s real organization ID when you finish the integration.
  const organization = 'org_test_idp';

  // Validate that this profile belongs to the organization used for authentication
  if (profile.organizationId !== organization) {
    return res.status(401).send({
      message: 'Unauthorized',
    });
  }

  // Use the information in `profile` for further business logic.

  res.redirect('/');
};

2.配置重定向 URI
转到重定向仪表板中的页面来配置允许的重定向 URI。这是您在上一节中使用的回调端点。

多租户应用程序通常会指定一个重定向 URI。您可以为单租户应用程序设置多个重定向 URI。您需要确保指定在 WorkOS 客户端调用中使用哪个重定向 URI 来获取授权 URL。

身份提供商发起的 SSO
通常,您在 WorkOS 仪表板中配置的默认重定向 URI 将用于所有身份提供商发起的 SSO 会话。这是因为 WorkOS 客户端不用于启动身份验证流程。

但是,您的客户可以指定一个单独的重定向 URI,作为其 SAML 设置中的RelayState参数,用于所有 IdP 发起的会话。

3.端到端测试
如果您按照本指南操作,则可以使用暂存环境中可用的测试组织来启动 SSO。这样,您就可以端到端地测试您的集成了。

详情查看链接https://workos.com/docs/sso/1-add-sso-to-your-app/set-secrets

 

<
依赖服务
>
<
产品问答
>
?
最终用户数量会影响定价吗?
不会,WorkOS 上的每个连接都按相同的方式计费,无论使用的身份提供商 (IdP)、目录服务或最终用户总数如何。
?
我可以在付费之前试用 WorkOS 吗?
WorkOS 可以免费开始使用,您甚至不需要添加信用卡,直到您将连接从沙盒转移到生产环境。WorkOS 可以免费开始使用,您甚至不需要添加信用卡,直到您将连接从沙盒转移到生产环境。
?
暂存和生产之间有什么区别?
暂存环境用于测试集成,而生产环境是为使用真实客户数据的实时应用程序构建的。
?
我可以在不进行自定义的情况下使用管理门户吗?
是的,管理门户功能齐全,无需自定义,并且包含在所有 WorkOS 帐户中。可以申请自定义品牌和自定义域,但需支付额外的月费。
?
100万免费用户是怎么算的?
WorkOS 用户管理对每月最多 100 万活跃用户免费。如果用户在日历月内执行任何用户操作(例如:注册、登录或个人资料更新),则被视为活跃用户。联系我们以了解有关批量定价的更多信息。
<
关于我们
>
WorkOS
企业
WorkOS是一家提供企业级身份认证和用户管理解决方案的公司。通过其平台,企业能够快速集成单点登录(SSO)、用户目录同步、多因素认证等功能,简化了企业应用的开发过程。WorkOS支持多种身份提供商和编程语言,提供现代化的API和SDK,帮助企业轻松扩展市场,满足IT管理员的需求。其客户包括Vercel、Webflow、Prefect等知名企业。
联系信息
服务时间: 7*24
网页在线客服: 咨询

实现平等进入企业市场

WorkOS 致力于帮助每家软件公司做好企业准备。我们相信,任何软件公司的应用都可以被世界上最大的企业所接受。‍
网络
解锁了平等分配。WorkOS
解锁了平等访问。

 

 

 2019年成立
WorkOS 由 Michael Grinich 于 2019 年创立,他认识到满足企业的复杂需求对于为软件公司创造可持续的长期增长至关重要。

带着这种认识,WorkOS 诞生了。
现代 API 用于授权和用户身份
WorkOS 是一个现代 API 平台,使任何开发人员能够快速构建和交付复杂的企业功能:用户管理、单点登录 (SAML) 、目录同步 (SCIM)和管理门户(企业入门) 。

WorkOS 加速了 SaaS 公司的企业就绪之旅,因此他们的应用程序具有大型组织中“全面”采用的所有功能。

我们的客户获胜。他们的客户获胜。

 

<
最可能同场景使用的其他API
>