自訂

驗證時,您可以使用自訂的身分提供者。 您的身分提供者可以符合任何不是 IBM Cloud® App ID 特別支援的鑑別機制,其中包括專屬鑑別機制。

當 App ID 沒有提供特定身分提供者的直接支援時,您可以使用自訂身分流程,將鑑別通訊協定橋接至 App ID 的現有鑑別流程。 例如,您要使用 GitHub 或 LinkedIn 來容許使用者登入。 您可以使用身分提供者的現有 SDK 來協助使用者鑑別資訊,然後將其包裝並與 App ID 交換。 在許多企業情境中,舊式身分提供者可能使用自己的自訂鑑別通訊協定,但您仍想要運用 App ID 的功能。 對於這種類型的情境,自訂身分流程提供取消連結的方法,其可安全地鑑別使用者,而不公開其認證。

配置自訂身分

您可以使用下列步驟,將自訂身分提供者配置為使用 App ID。

開始之前

若要建立 App ID 與自訂身分提供者之間的信任,您必須具有長度下限為 2048 的 RSA PEM 金鑰組。 請務必安全地備份您在正式作業中使用的所有金鑰。

如何使用金鑰?

  • 您的私密金鑰用於應用程式或身分提供者,以簽署 JWT。
  • 您的公開金鑰是由 App ID 用來驗證包含使用者資訊的 JWT。

若要使用 Open SSL 來產生 RSA PEM 金鑰組,請執行下列指令:

openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
openssl rsa -pubout -in private_key.pem -out public_key.pem

使用 GUI 配置

  1. 登入您的 IBM Cloud 帳戶,然後導覽至您的 App ID 實例。

  2. 管理標籤中,將自訂身分提供者設為開啟

  3. 向 App ID 登錄您的公開金鑰。

    1. 導覽至自訂身分提供者標籤。
    2. 公開金鑰方框中貼上您的公開金鑰,然後按一下儲存

使用 API 進行配置

管理 API 端點提出 PUT 要求,以登錄您的金鑰。

Put <managementURI>/config/idps/custom
Content-Type: application/json
{
    isActive: true,
    config: {
        publicKey: Your newline separated (\n) PEM public key
    }
}

測試您的配置

在使用有效的公開金鑰配置 App ID 實例之後,您可以使用服務所提供的測試應用程式來驗證已正確設定您的配置。 在範例應用程式中,您可以看到在標準登入流程期間傳回的 App ID 存取和身分記號有效負載。

  1. 自訂身分提供者標籤中,按一下測試來開啟測試應用程式。

  2. 遵循自訂身分通訊協定,建立範例 JWT

  3. 將您的 JWT 貼至標示為 JSON Web 記號的方框中,然後按一下測試來執行範例鑑別。

如果成功,您現在可以看到已解碼的 App ID 身分及存取記號,而您的應用程式可在標準登入流程中使用這些記號。

下一步

既然已配置您的自訂身分提供者,請將它新增至您的應用程式