跳至內容
從 NextAuth.js v4 遷移?請閱讀 我們的遷移指南.

providers/boxyhq-saml

內建的 BoxyHQ SAML 整合。

BoxyHQSAMLProfile

繼承

屬性

email

email: string;

firstName?

optional firstName: string;

id

id: string;

lastName?

optional lastName: string;

default()

default<P>(options): OAuthConfig<P>

在您的頁面中新增 BoxyHQ SAML 登入。

BoxyHQ SAML 是一個開源服務,可將 SAML SSO 登入流程作為 OAuth 2.0 流程處理,並抽象化 SAML 協定的所有複雜性。輕鬆在您的應用程式中啟用企業單一登入。

您可以將 BoxyHQ SAML 部署為獨立服務,或使用我們的 NPM 程式庫將其嵌入到您的應用程式中。查看文件以取得更多詳細資訊

設定

回調 URL

https://example.com/api/auth/callback/boxyhq-saml

組態

針對 OAuth 2.0 流程

import { Auth } from "@auth/core"
import BoxyHQ from "@auth/core/providers/boxyhq-saml"
 
const request = new Request(origin)
const response = await Auth(request, {
  providers: [
    BoxyHQ({
      authorization: { params: { scope: "" } }, // This is needed for OAuth 2.0 flow, otherwise default to openid
      clientId: BOXYHQ_SAML_CLIENT_ID,
      clientSecret: BOXYHQ_SAML_CLIENT_SECRET,
      issuer: BOXYHQ_SAML_ISSUER,
    }),
  ],
})

針對 OIDC 流程

import { Auth } from "@auth/core"
import BoxyHQ from "@auth/core/providers/boxyhq-saml"
 
const request = new Request(origin)
const response = await Auth(request, {
  providers: [
    BoxyHQ({
      clientId: BOXYHQ_SAML_CLIENT_ID,
      clientSecret: BOXYHQ_SAML_CLIENT_SECRET,
      issuer: BOXYHQ_SAML_ISSUER,
    }),
  ],
})

資源

組態

SAML 登入需要針對您的每個租戶進行組態。一種常見方法是使用電子郵件地址的網域來判斷他們屬於哪個租戶。您也可以使用來自後端的唯一租戶 ID(字串)來執行此操作,通常是某種類型的帳戶或組織 ID。

請查看文件以取得更多詳細資訊。

在客戶端,您需要將額外的參數 tenantproduct 傳遞給 signIn 函式。這將允許 BoxyHQL SAML 判斷正確的 SAML 組態,並將您的使用者帶到正確的 SAML 身分提供者登入。

import { signIn } from "auth";
...
 
  // Map your users's email to a tenant and product
  const tenant = email.split("@")[1];
  const product = 'my_awesome_product';
...
  <Button
    onClick={async (event) => {
      event.preventDefault();
 
      signIn("boxyhq-saml", {}, { tenant, product });
    }}>
...

注意事項

預設情況下,Auth.js 假設 BoxyHQ 提供者是基於 OAuth 2 規格。

💡

BoxyHQ 提供者隨附預設組態。若要覆寫您的使用案例的預設值,請查看自訂內建 OAuth 提供者

免責聲明 如果您認為在預設組態中發現錯誤,您可以開啟問題

Auth.js 嚴格遵守規格,並且無法為提供者對規格的任何偏離負責。您可以開啟問題,但如果問題是不符合規格,我們可能不會尋求解決方案。您可以在討論區中請求更多協助。

類型參數

類型參數
P 擴展 BoxyHQSAMLProfile

參數

參數類型
optionsOAuthUserConfig<P>

返回值

OAuthConfig<P>

Auth.js © Balázs Orbán 和團隊 -2024