IdentityCredential

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

IdentityCredential 介面是 聯合憑證管理 API (FedCM) 的一部分,用於表示成功聯合登入後產生的使用者身份憑證。

成功的 navigator.credentials.get() 呼叫,如果包含 `identity` 選項,則會以 IdentityCredential 例項的形式得到滿足(fulfilled)。

Credential IdentityCredential

例項屬性

繼承自其祖先 Credential 的屬性。

IdentityCredential.configURL 只讀 實驗性

一個字串,指定用於登入的 身份提供商 (IdP)配置檔案 URL。

IdentityCredential.isAutoSelected 只讀 實驗性

一個布林值,指示聯合登入是否透過 自動重新認證(即,無需使用者干預)進行,或者不是。

IdentityCredential.token 實驗性

返回用於驗證關聯登入的令牌。

靜態方法

IdentityCredential.disconnect() 實驗性

斷開用於獲取憑證的聯合登入賬戶。

示例

基本聯合登入

信賴方 (RP) 可以呼叫 `navigator.credentials.get()` 並附帶 `identity` 選項,來請求使用者透過身份提供商 (IdP) 進行聯合登入。一個典型的請求如下所示:

js
async function signIn() {
  const identityCredential = await navigator.credentials.get({
    identity: {
      providers: [
        {
          configURL: "https://accounts.idp.example/config.json",
          clientId: "********",
          nonce: "******",
        },
      ],
    },
  });
}

如果成功,此呼叫將以 IdentityCredential 例項得到滿足。從這裡,您可以返回 IdentityCredential.token 值,例如:

js
console.log(identityCredential.token);

有關此功能的更多詳細資訊,請檢視 聯合憑證管理 API (FedCM)。此呼叫將啟動 FedCM 登入流程 中所述的登入流程。

規範

規範
Federated Credential Management API
# browser-api-identity-credential-interface

瀏覽器相容性

另見