企業(yè)SSO服務(wù)-WorkOS

企業(yè)SSO服務(wù)-WorkOS

專用API
服務(wù)商 服務(wù)商: WorkOS
【更新時間: 2024.09.01】 提供一體化單點登錄(SSO)解決方案,使企業(yè)應(yīng)用能輕松集成多種身份提供商的登錄功能。開發(fā)者能快速添加企業(yè)級SSO支持,用戶通過SAML和OpenID Connect協(xié)議無縫登錄,減少開發(fā)時間,并提升企業(yè)應(yīng)用的適用性。
$ 125 每個連接 / 月 去服務(wù)商官網(wǎng)采購>
瀏覽次數(shù)
32
采購人數(shù)
0
試用次數(shù)
0
! SLA: N/A
! 響應(yīng): N/A
! 適用于個人&企業(yè)
收藏
×
完成
取消
×
書簽名稱
確定
<
產(chǎn)品介紹
>

什么是WorkOS的企業(yè)SSO服務(wù)?

企業(yè)SSO服務(wù)-WorkOS是一種專為企業(yè)級應(yīng)用設(shè)計的單點登錄解決方案,旨在簡化多身份提供商集成的復(fù)雜性。通過提供一個統(tǒng)一的API接口,WorkOS支持與20多個身份提供商的集成,包括流行的SAML和OpenID Connect協(xié)議。它允許企業(yè)用戶使用其現(xiàn)有的企業(yè)憑據(jù)訪問各種應(yīng)用,減少了多重登錄的需求,并提高了安全性和用戶體驗。WorkOS還支持開發(fā)者自定義用戶體驗和數(shù)據(jù)庫管理,使其能夠輕松融入現(xiàn)有的應(yīng)用架構(gòu)中。

什么是WorkOS的企業(yè)SSO服務(wù)接口?

由服務(wù)使用方的應(yīng)用程序發(fā)起,以Restful風(fēng)格為主、通過公網(wǎng)HTTP協(xié)議調(diào)用WorkOS的企業(yè)SSO服務(wù),從而實現(xiàn)程序的自動化交互,提高服務(wù)效率。

WorkOS的企業(yè)SSO服務(wù)有哪些核心功能?

  1. 支持SAML和OpenID Connect協(xié)議:為使用這些協(xié)議的任何身份提供者提供SSO。
  2. 快速集成:在幾天內(nèi)支持您的第一位企業(yè)客戶。
  3. 支持20+身份提供者:包括Google和Microsoft等流行的OAuth提供商。
  4. 持久導(dǎo)航狀態(tài):編碼有用的信息以幫助在重定向之間恢復(fù)應(yīng)用程序狀態(tài)。
  5. 多種編程語言支持:包括Node.js、Ruby、Python、PHP和Java。
  6. Magic Link無密碼登錄:提供簡單的登錄選項,同時保障賬戶安全。

WorkOS的企業(yè)SSO服務(wù)的技術(shù)原理是什么?

WorkOS的企業(yè)SSO服務(wù)的核心優(yōu)勢是什么?

  1. 99.99% 正常運行時間:為企業(yè)客戶保證正常運行時間 SLA
  2. 高級支持:專家指導(dǎo)的集成支持和響應(yīng)時間 SLA
  3. 定制企業(yè)計劃:根據(jù)您的業(yè)務(wù)需求量身定制的基于合同的計劃
  4. 簡化集成:通過單一API同時支持SAML和OpenID Connect協(xié)議,實現(xiàn)快速而簡便的身份驗證集成。
  5. 廣泛支持:支持20多個主流身份提供商,確保企業(yè)可以靈活選擇和整合各種身份驗證服務(wù)。

在哪些場景會用到WorkOS的企業(yè)SSO服務(wù)?

1. 企業(yè)級應(yīng)用開發(fā):在開發(fā)需要與多個企業(yè)身份提供商集成的應(yīng)用時,WorkOS簡化了SSO的實現(xiàn)過程,使開發(fā)者無需手動處理復(fù)雜的SAML和OpenID Connect協(xié)議集成,節(jié)省了開發(fā)時間并提高了安全性。

 

 

2. 增強(qiáng)企業(yè)安全性:對于需要加強(qiáng)登錄安全的企業(yè),WorkOS允許用戶通過現(xiàn)有的企業(yè)身份驗證系統(tǒng)登錄應(yīng)用,減少了管理多個憑據(jù)的復(fù)雜性,并提高了整體系統(tǒng)的安全性和一致性。

 

 

3. 用戶管理優(yōu)化:在需要為企業(yè)用戶提供個性化體驗的場景中,WorkOS支持自定義登錄流程和數(shù)據(jù)管理,使開發(fā)者能夠創(chuàng)建符合企業(yè)需求的用戶界面,同時保持對數(shù)據(jù)的完全控制。

 

<
產(chǎn)品價格
>

<
使用指南
>

1.將 SSO 添加到您的應(yīng)用程序
讓我們將 SSO 身份驗證工作流程構(gòu)建到您的應(yīng)用程序中。
安裝 WorkOS SDK
WorkOS 提供多種流行編程語言的本機(jī) SDK。選擇下面的語言以查看使用您的應(yīng)用程序語言的說明。

設(shè)定密鑰
要調(diào)用 WorkOS,請?zhí)峁?API 密鑰,在某些情況下還需要提供客戶端 ID。將這些值存儲為托管機(jī)密,例如WORKOS_API_KEY和WORKOS_CLIENT_ID ,并將它們作為環(huán)境變量或根據(jù)您的首選項直接傳遞到應(yīng)用程序的配置中。

環(huán)境變量
WORKOS_API_KEY='sk_example_123456789'
WORKOS_CLIENT_ID='client_123456789'

添加端點以啟動 SSO
通過 WorkOS API 啟動 SSO 的端點負(fù)責(zé)將身份驗證工作流程的其余部分移交給 WorkOS。下面顯示了幾個配置選項。

您可以使用可選的state參數(shù)對任意信息進(jìn)行編碼,以幫助恢復(fù)重定向之間的應(yīng)用程序狀態(tài)。

添加端點以啟動 SSO
通過 WorkOS API 啟動 SSO 的端點負(fù)責(zé)將身份驗證工作流程的其余部分移交給 WorkOS。下面顯示了幾個配置選項。

您可以使用可選的state參數(shù)對任意信息進(jìn)行編碼,以幫助恢復(fù)重定向之間的應(yīng)用程序狀態(tài)。

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);
});

添加回調(diào)端點
接下來,我們添加重定向端點,該端點將在用戶通過其身份提供商進(jìn)行身份驗證后處理來自 WorkOS 的回調(diào)。此端點應(yīng)將 WorkOS 返回的授權(quán)代碼與經(jīng)過身份驗證的用戶的配置文件進(jìn)行交換。授權(quán)碼的有效期為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
轉(zhuǎn)到重定向儀表板中的頁面來配置允許的重定向 URI。這是您在上一節(jié)中使用的回調(diào)端點。

多租戶應(yīng)用程序通常會指定一個重定向 URI。您可以為單租戶應(yīng)用程序設(shè)置多個重定向 URI。您需要確保指定在 WorkOS 客戶端調(diào)用中使用哪個重定向 URI 來獲取授權(quán) URL。

身份提供商發(fā)起的 SSO
通常,您在 WorkOS 儀表板中配置的默認(rèn)重定向 URI 將用于所有身份提供商發(fā)起的 SSO 會話。這是因為 WorkOS 客戶端不用于啟動身份驗證流程。

但是,您的客戶可以指定一個單獨的重定向 URI,作為其 SAML 設(shè)置中的RelayState參數(shù),用于所有 IdP 發(fā)起的會話。

3.端到端測試
如果您按照本指南操作,則可以使用暫存環(huán)境中可用的測試組織來啟動 SSO。這樣,您就可以端到端地測試您的集成了。

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

 

<
產(chǎn)品問答
>
?
最終用戶數(shù)量會影響定價嗎?
不會,WorkOS 上的每個連接都按相同的方式計費,無論使用的身份提供商 (IdP)、目錄服務(wù)或最終用戶總數(shù)如何。
?
我可以在付費之前試用 WorkOS 嗎?
WorkOS 可以免費開始使用,您甚至不需要添加信用卡,直到您將連接從沙盒轉(zhuǎn)移到生產(chǎn)環(huán)境。WorkOS 可以免費開始使用,您甚至不需要添加信用卡,直到您將連接從沙盒轉(zhuǎn)移到生產(chǎn)環(huán)境。
?
暫存和生產(chǎn)之間有什么區(qū)別?
暫存環(huán)境用于測試集成,而生產(chǎn)環(huán)境是為使用真實客戶數(shù)據(jù)的實時應(yīng)用程序構(gòu)建的。
?
我可以在不進(jìn)行自定義的情況下使用管理門戶嗎?
是的,管理門戶功能齊全,無需自定義,并且包含在所有 WorkOS 帳戶中??梢陨暾堊远x品牌和自定義域,但需支付額外的月費。
?
100萬免費用戶是怎么算的?
WorkOS 用戶管理對每月最多 100 萬活躍用戶免費。如果用戶在日歷月內(nèi)執(zhí)行任何用戶操作(例如:注冊、登錄或個人資料更新),則被視為活躍用戶。聯(lián)系我們以了解有關(guān)批量定價的更多信息。
<
關(guān)于我們
>
WorkOS
企業(yè)
WorkOS是一家提供企業(yè)級身份認(rèn)證和用戶管理解決方案的公司。通過其平臺,企業(yè)能夠快速集成單點登錄(SSO)、用戶目錄同步、多因素認(rèn)證等功能,簡化了企業(yè)應(yīng)用的開發(fā)過程。WorkOS支持多種身份提供商和編程語言,提供現(xiàn)代化的API和SDK,幫助企業(yè)輕松擴(kuò)展市場,滿足IT管理員的需求。其客戶包括Vercel、Webflow、Prefect等知名企業(yè)。
聯(lián)系信息
服務(wù)時間: 7*24
網(wǎng)頁在線客服: 咨詢

實現(xiàn)平等進(jìn)入企業(yè)市場

WorkOS 致力于幫助每家軟件公司做好企業(yè)準(zhǔn)備。我們相信,任何軟件公司的應(yīng)用都可以被世界上最大的企業(yè)所接受。‍
網(wǎng)絡(luò)
解鎖了平等分配。WorkOS
解鎖了平等訪問。

 

 

 2019年成立
WorkOS 由 Michael Grinich 于 2019 年創(chuàng)立,他認(rèn)識到滿足企業(yè)的復(fù)雜需求對于為軟件公司創(chuàng)造可持續(xù)的長期增長至關(guān)重要。

帶著這種認(rèn)識,WorkOS 誕生了。
現(xiàn)代 API 用于授權(quán)和用戶身份
WorkOS 是一個現(xiàn)代 API 平臺,使任何開發(fā)人員能夠快速構(gòu)建和交付復(fù)雜的企業(yè)功能:用戶管理、單點登錄 (SAML) 、目錄同步 (SCIM)和管理門戶(企業(yè)入門) 。

WorkOS 加速了 SaaS 公司的企業(yè)就緒之旅,因此他們的應(yīng)用程序具有大型組織中“全面”采用的所有功能。

我們的客戶獲勝。他們的客戶獲勝。

 

<
最可能同場景使用的其他API
>
API接口列表
<
產(chǎn)品價格
>

<
使用指南
>

1.將 SSO 添加到您的應(yīng)用程序
讓我們將 SSO 身份驗證工作流程構(gòu)建到您的應(yīng)用程序中。
安裝 WorkOS SDK
WorkOS 提供多種流行編程語言的本機(jī) SDK。選擇下面的語言以查看使用您的應(yīng)用程序語言的說明。

設(shè)定密鑰
要調(diào)用 WorkOS,請?zhí)峁?API 密鑰,在某些情況下還需要提供客戶端 ID。將這些值存儲為托管機(jī)密,例如WORKOS_API_KEY和WORKOS_CLIENT_ID ,并將它們作為環(huán)境變量或根據(jù)您的首選項直接傳遞到應(yīng)用程序的配置中。

環(huán)境變量
WORKOS_API_KEY='sk_example_123456789'
WORKOS_CLIENT_ID='client_123456789'

添加端點以啟動 SSO
通過 WorkOS API 啟動 SSO 的端點負(fù)責(zé)將身份驗證工作流程的其余部分移交給 WorkOS。下面顯示了幾個配置選項。

您可以使用可選的state參數(shù)對任意信息進(jìn)行編碼,以幫助恢復(fù)重定向之間的應(yīng)用程序狀態(tài)。

添加端點以啟動 SSO
通過 WorkOS API 啟動 SSO 的端點負(fù)責(zé)將身份驗證工作流程的其余部分移交給 WorkOS。下面顯示了幾個配置選項。

您可以使用可選的state參數(shù)對任意信息進(jìn)行編碼,以幫助恢復(fù)重定向之間的應(yīng)用程序狀態(tài)。

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);
});

添加回調(diào)端點
接下來,我們添加重定向端點,該端點將在用戶通過其身份提供商進(jìn)行身份驗證后處理來自 WorkOS 的回調(diào)。此端點應(yīng)將 WorkOS 返回的授權(quán)代碼與經(jīng)過身份驗證的用戶的配置文件進(jìn)行交換。授權(quán)碼的有效期為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
轉(zhuǎn)到重定向儀表板中的頁面來配置允許的重定向 URI。這是您在上一節(jié)中使用的回調(diào)端點。

多租戶應(yīng)用程序通常會指定一個重定向 URI。您可以為單租戶應(yīng)用程序設(shè)置多個重定向 URI。您需要確保指定在 WorkOS 客戶端調(diào)用中使用哪個重定向 URI 來獲取授權(quán) URL。

身份提供商發(fā)起的 SSO
通常,您在 WorkOS 儀表板中配置的默認(rèn)重定向 URI 將用于所有身份提供商發(fā)起的 SSO 會話。這是因為 WorkOS 客戶端不用于啟動身份驗證流程。

但是,您的客戶可以指定一個單獨的重定向 URI,作為其 SAML 設(shè)置中的RelayState參數(shù),用于所有 IdP 發(fā)起的會話。

3.端到端測試
如果您按照本指南操作,則可以使用暫存環(huán)境中可用的測試組織來啟動 SSO。這樣,您就可以端到端地測試您的集成了。

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

 

<
依賴服務(wù)
>
<
產(chǎn)品問答
>
?
最終用戶數(shù)量會影響定價嗎?
不會,WorkOS 上的每個連接都按相同的方式計費,無論使用的身份提供商 (IdP)、目錄服務(wù)或最終用戶總數(shù)如何。
?
我可以在付費之前試用 WorkOS 嗎?
WorkOS 可以免費開始使用,您甚至不需要添加信用卡,直到您將連接從沙盒轉(zhuǎn)移到生產(chǎn)環(huán)境。WorkOS 可以免費開始使用,您甚至不需要添加信用卡,直到您將連接從沙盒轉(zhuǎn)移到生產(chǎn)環(huán)境。
?
暫存和生產(chǎn)之間有什么區(qū)別?
暫存環(huán)境用于測試集成,而生產(chǎn)環(huán)境是為使用真實客戶數(shù)據(jù)的實時應(yīng)用程序構(gòu)建的。
?
我可以在不進(jìn)行自定義的情況下使用管理門戶嗎?
是的,管理門戶功能齊全,無需自定義,并且包含在所有 WorkOS 帳戶中??梢陨暾堊远x品牌和自定義域,但需支付額外的月費。
?
100萬免費用戶是怎么算的?
WorkOS 用戶管理對每月最多 100 萬活躍用戶免費。如果用戶在日歷月內(nèi)執(zhí)行任何用戶操作(例如:注冊、登錄或個人資料更新),則被視為活躍用戶。聯(lián)系我們以了解有關(guān)批量定價的更多信息。
<
關(guān)于我們
>
WorkOS
企業(yè)
WorkOS是一家提供企業(yè)級身份認(rèn)證和用戶管理解決方案的公司。通過其平臺,企業(yè)能夠快速集成單點登錄(SSO)、用戶目錄同步、多因素認(rèn)證等功能,簡化了企業(yè)應(yīng)用的開發(fā)過程。WorkOS支持多種身份提供商和編程語言,提供現(xiàn)代化的API和SDK,幫助企業(yè)輕松擴(kuò)展市場,滿足IT管理員的需求。其客戶包括Vercel、Webflow、Prefect等知名企業(yè)。
聯(lián)系信息
服務(wù)時間: 7*24
網(wǎng)頁在線客服: 咨詢

實現(xiàn)平等進(jìn)入企業(yè)市場

WorkOS 致力于幫助每家軟件公司做好企業(yè)準(zhǔn)備。我們相信,任何軟件公司的應(yīng)用都可以被世界上最大的企業(yè)所接受。‍
網(wǎng)絡(luò)
解鎖了平等分配。WorkOS
解鎖了平等訪問。

 

 

 2019年成立
WorkOS 由 Michael Grinich 于 2019 年創(chuàng)立,他認(rèn)識到滿足企業(yè)的復(fù)雜需求對于為軟件公司創(chuàng)造可持續(xù)的長期增長至關(guān)重要。

帶著這種認(rèn)識,WorkOS 誕生了。
現(xiàn)代 API 用于授權(quán)和用戶身份
WorkOS 是一個現(xiàn)代 API 平臺,使任何開發(fā)人員能夠快速構(gòu)建和交付復(fù)雜的企業(yè)功能:用戶管理、單點登錄 (SAML) 、目錄同步 (SCIM)和管理門戶(企業(yè)入門) 。

WorkOS 加速了 SaaS 公司的企業(yè)就緒之旅,因此他們的應(yīng)用程序具有大型組織中“全面”采用的所有功能。

我們的客戶獲勝。他們的客戶獲勝。

 

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