providers/boxyhq-saml
BoxyHQSAMLProfile
繼承
Record
<string
,any
>
屬性
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。
請查看文件以取得更多詳細資訊。
在客戶端,您需要將額外的參數 tenant
和 product
傳遞給 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 提供者。
類型參數
類型參數 |
---|
P 擴展 BoxyHQSAMLProfile |
參數
參數 | 類型 |
---|---|
options | OAuthUserConfig <P > |
返回值
OAuthConfig
<P
>