为什么无法显示已配置的服务绑定操作的详细信息?

通过控制台中的 "集成" 页面配置项目范围的设置时, Code Engine 会自动设置必需的凭证,以便 Code Engine 可以为您执行服务绑定操作。 有时,会配置服务绑定操作,但无法显示有关设置的详细信息。

成功配置服务绑定操作后,状态显示已配置; 但是,您会收到一条警告消息,指示无法显示当前服务绑定操作的详细信息。 在 项目设置 > 集成 > 服务绑定操作 页面 Cannot display details of the current configuration上会显示类似于以下文本的警告。

在特定 Code Engine 项目中创建第一个服务绑定时,或者运行 project update CLI 命令时, Code Engine 会为项目的服务绑定操作创建操作程序私钥 (ibmcloud-operator-secret)。 操作程序私钥是 Code Engine 生成的受管私钥,其中包含服务标识及其自动生成的 API 密钥。 Code Engine 使用服务标识代表用户执行绑定操作,而不是使用登录用户的身份。 服务标识为特定 IBM Cloud 服务实例创建凭证。 创建此操作程序私钥后, Code Engine 将此私钥用于服务绑定操作的项目生命周期。

但是,操作程序私钥可能不包含有关服务标识的必要信息,因此无法从项目范围设置的 "集成" 页面显示有关服务绑定配置的详细信息。

由于下列其中一个方案可能没有服务标识信息而创建的操作程序私钥。

  1. 如果使用 --binding-service-id 选项运行了 project update CLI 命令。

  2. 如果从控制台或使用 CLI 为 Code Engine 应用程序或作业 (在控制台中发布 项目范围设置之前创建的项目中) 创建了服务绑定,那么操作程序私钥不会引用服务标识。 请注意,对于在控制台中发布项目范围设置之后创建的项目,操作程序私钥包含有关服务标识的信息。 Code Engine 使用此信息来显示有关服务绑定操作的详细信息,包括有关操作程序私钥和服务标识的信息。

尝试其中一个解决方案。

  1. 如果您使用了使用 project update 命令创建和管理的定制服务标识,并且知道使用的特定服务标识,请执行以下步骤来重新配置服务绑定操作以使用您的定制服务标识。

    如果您不知道与 project update 命令一起使用的特定服务标识,请不要执行以下步骤。 对于这种情况,将配置服务绑定操作,以便您可以创建和管理服务绑定; 但是,系统无法从项目范围的 "集成" 页面显示服务绑定操作的详细信息,您将继续看到警告消息。

    1. 查看 IBM Cloud® Identity and Access Management (IAM) 中的服务标识列表,以帮助您确定与 project update 命令配合使用的定制服务标识。 从 IBM Cloud 控制台,转至 管理 > 访问权 (IAM),然后选择 服务标识
    2. 标识与 project update 命令一起使用的服务标识后,请使用 Code Engine 控制台将相同的定制服务标识分配给操作程序私钥。
    3. 转至控制台中的 "集成" 页面。 从 Code Engine 控制台中的 "项目" 页面中选择项目后,单击 项目设置 > 集成。 配置状态为 Configured
    4. 单击 除去配置。 此操作将除去现有操作程序私钥,并且配置状态为 Not Configured
    5. 单击 配置 以配置服务绑定操作,然后选择使用定制服务标识的选项。
    6. 从表中选择定制服务标识。 使用您在第一步中标识的定制服务标识。
    7. 单击 配置 以保存此配置。

使用定制服务标识配置服务绑定操作后,可以查看配置的详细信息。

  1. 如果您在 Code Engine 项目中为应用程序或作业创建了服务绑定,而该项目是在 控制台中的项目范围设置发布之前创建的,请忽略警告消息。 服务绑定操作将继续工作,因为先前已创建服务绑定。 请勿从控制台中的 "集成" 页面中除去和重新配置服务绑定操作配置,因为此操作不会删除原始服务标识,并且会导致安全风险。

有关使用服务绑定的更多信息,请参阅 使用服务绑定以将 IBM Cloud 服务与 Code Engine配置项目范围的服务绑定操作