0

尝试使用 Salesforce 身份将 GCIP 配置为 IDP。尝试配置基于 OIDC 的集成。请注意,没有为基于 OIDC 的配置提供 (sfdc) 客户端密码的字段。此外,从 GCIP 端调用 response_type=id_token。我们想使用授权码流(response_type=code)与 SFDC 集成。可能吗?

在此处输入图像描述

4

1 回答 1

1

GCIP 后端支持 OIDC 提供程序的代码流。它只是尚未在 Cloud Console 或 Admin SDK 中公开。

请注意,它记录在REST API中。

您将需要设置{code: true}

这是 Node.js 中的一个片段(未经测试):

// https://cloud.google.com/identity-platform/docs/reference/rest/v2/projects.oauthIdpConfigs/patch
return new Promise((resolve, reject) => {
  request({
      headers: {
        'Authorization': `Bearer ${accessToken}`,
        'Content-Type': 'application/json',
      },
      url: `https://identitytoolkit.googleapis.com/admin/v2/projects` +
          `/${projectId}/oauthIdpConfigs/${oidcProviderId}?updateMask=responseType`,
      method: 'PATCH',
      body: JSON.stringify({
        responseType: {
          idToken: true,
          code: true,
        }
      }),
    }, (error, response) => {
      if (!error && response.statusCode === 200) {
        resolve();
      } else {
        reject(error);
      }
    });
  });
});
于 2020-12-22T22:35:21.717 回答