providers/microsoft-entra-id
MicrosoftEntraIDProfile
繼承
Record
<string
,any
>
屬性
email: string;
nickname
nickname: string;
picture
picture: string;
sub
sub: string;
default()
default(config): OIDCConfig<MicrosoftEntraIDProfile>
將 Microsoft Entra ID 登入新增至您的頁面。
設定
回調 URL
https://example.com/auth/callback/microsoft-entra-id
組態
參數
參數 | 類型 |
---|---|
config | OIDCUserConfig <MicrosoftEntraIDProfile > & { profilePhotoSize : | 64 | 48 | 96 | 120 | 240 | 360 | 432 | 504 | 648 ; } |
回傳
OIDCConfig
<MicrosoftEntraIDProfile
>
範例
import MicrosoftEntraID from "@auth/core/providers/microsoft-entra-id"
...
providers: [
MicrosoftEntraID({
clientId: env.AUTH_MICROSOFT_ENTRA_ID_ID,
clientSecret: env.AUTH_MICROSOFT_ENTRA_ID_SECRET,
}),
]
...
資源
允許特定 Active Directory 使用者存取:
預設情況下,Entra ID 提供者允許使用者使用任何 Microsoft 帳戶(個人、學校或工作帳戶)登入。
若要僅允許您組織的使用者登入,您除了用戶端 ID 和密碼之外,還需要設定 issuer
。
範例
import MicrosoftEntraID from "@auth/core/providers/microsoft-entra-id"
providers: [
MicrosoftEntraID({
clientId: env.AUTH_MICROSOFT_ENTRA_ID_ID,
clientSecret: env.AUTH_MICROSOFT_ENTRA_ID_SECRET,
issuer: env.AUTH_MICROSOFT_ENTRA_ID_TENANT_ID,
}),
]
注意事項
Microsoft Entra ID 會以 ArrayBuffer 的形式傳回個人資料圖片,而不是僅提供圖片的 URL,因此我們的提供者會將其轉換為 base64 編碼的圖片字串並傳回。請參閱:https://learn.microsoft.com/en-us/graph/api/profilephoto-get?view=graph-rest-1.0&tabs=http#examples。預設圖片大小為 48x48,以避免在會話儲存為 JWT 時用完空間。
預設情況下,Auth.js 假設 Microsoft Entra ID 提供者是基於 Open ID Connect 規格。
💡
Microsoft Entra ID 提供者具有預設組態。若要覆寫您的使用案例的預設值,請查看自訂內建 OAuth 提供者。