在云环境中添加用户或SSH密钥后,SSH访问被拒绝

在连接到云基础架构环境上的Adobe Commerce时,即使在授予访问权限或添加SSH密钥后,SSH访问也会失败。 在部署成功完成之前,环境不会反映更新的访问或SSH密钥更改。 要解决此问题,请重新部署环境以应用访问和SSH更新。

描述 description

环境

云基础架构上的Adobe Commerce(所有受支持的版本)

问题/症状

  • 即使在授予对项目或环境的访问权限后,云基础架构环境上的特定Adobe Commerce的SSH连接也会失败。

  • 在帐户中添加或更新SSH公钥后,SSH连接失败。

  • 在SSH尝试过程中出现以下错误:

    code language-none
    The service doesn't exist or you do not have access to it.      Permission denied (publickey).
    
  • SSH连接适用于一个环境,但无法用于同一项目中的另一个环境。

根本原因

在云基础架构上的Adobe Commerce中,添加用户或更改SSH公钥不会自动应用更改。 要安装新的SSH访问配置,必须成功重新部署目标环境。 如果在访问或SSH密钥更改后未成功重新部署目标环境,则SSH访问会失败,并出现权限被拒绝(publickey)错误。

解决方法 resolution

请按照以下步骤解决问题:

  1. 要求项目管理员确认用户具有目标环境所需的访问级别。

  2. 确认用户已在云基础架构帐户上向其Adobe Commerce添加了正确的SSH公钥。

  3. 如果在项目上启用了MFA进行SSH访问,请确认用户已完成所需的MFA/TFA设置。

  4. 要求项目管理员查看Cloud Console中受影响环境的部署历史记录。

    • 如果最近授予或更改了用户访问权限,请要求项目管理员重新部署受影响的环境,以应用访问权限更改。
    • 如果最近添加或更新了SSH公钥,请重新部署所有活动环境,以便安装密钥。
  5. 等待重新部署成功完成。

  6. 在Cloud Console中,使用针对该环境显示的确切SSH命令重试SSH连接。

  7. 如果SSH仍然失败,请验证本地计算机使用的私钥是否与上载到帐户的公钥匹配。

如果SSH在成功重新部署后仍然失败:

  • 验证您是否在Cloud Console中使用针对该环境显示的SSH命令。
  • 验证本地系统是否使用与配置的SSH公钥关联的匹配私钥。

使用magento-cloud CLI验证访问

如果您无法在Cloud Console中确认访问权限,请使用magento-cloud CLI验证您的角色分配。 安装CLI并登录后,run magento-cloud user:get.

如果您与多个项目相关联,请在出现提示时选择所需的项目。 也可以从本地项目目录运行命令,以便CLI自动使用当前项目。 该命令会返回您的项目角色和环境类型角色。 例如:

Current role(s) of User (user@example.com) on Project Name (project_id):Project role: viewerRole on environment type development: [ none] Role on environment type production: [ none] Role on environment type staging: [ none]

在此输出中:

  • Project role: viewer indicates view-only project access.
  • Role on environment type ...: [ none]表示对这些环境类型没有访问权限。
  • 通过这种组合,用户无法执行环境操作或对这些环境类型使用SSH。

对于云基础架构上的Adobe Commerce,只有 管理员参与者 角色提供SSH访问。 查看者和无权访问。

如果输出显示访问权限不足,请联系项目管理员以请求所需的环境权限。

相关阅读

recommendation-more-help
experience-cloud-kcs-help-kbarticles