当前位置: 首页 > 面试题库 >

尝试从专用ECR提取图像时“没有基本身份验证凭据”

阎慈
2023-03-14
问题内容

我在Dockerfile的中间某处有以下行,以从我的私有ECR中检索图像。

FROM **********.dkr.ecr.ap-southeast-1.amazonaws.com/prod/*************:ff03401

这是我尝试构建此代码时在AWS Codebuild中遇到的错误:

步骤21/36:从*。dkr.ecr.ap-
southeast-1.amazonaws.com/prod/
*:ff03401获取https
://
*.dkr.ecr.ap-
southeast-1.amazonaws.com/prod/***/manifests/ff03401:基本认证凭证

如何以最安全的方式以及也可以terraform编辑的方式提供这些凭据?


问题答案:

有多种方法可以做到这一点。

使用aws访问和密钥。在其中您可以在ec2机器上设置aws凭证并运行ecr login命令。aws ecr get-login --no-include- email --registry-ids <some-id> --region eu-west-1然后码头工人拉应该工作。但这不是推荐的安全方法。

我更喜欢使用aws
iam角色。

假设您想将此图像拖到使用terraform生成的ec2机器上。利用IAM角色。

  • 手动或使用terraform iam资源创建一个iam角色。
  • 有关IAM策略的内容,请参阅此。
  • 在使用Terraform 实例资源带来ec2时,请使用iam_instance_profile属性,该属性的值应为您创建的iam角色的名称。

这应该足以以安全的方式自动从ECR中提取docker映像。

希望这可以帮助。



 类似资料:
  • 要求是实现一个登录表单,单击submit按钮时需要调用一个javascript,该javascript应该发布用户名/密码。 是否有方法从javascript向spring基本身份验证servlet传递凭据,使其验证请求。我们已经实现了AuthenticationProvider authenticate来执行验证。 http://java.sun.com/xml/ns/javaee/web-ap

  • 我对社交网络分析和twitter api是新手。我想收集关于特定主题的tweets。所以我写了下面的代码 在我的程序中,我需要在哪里提供凭据 谢谢

  • 问题内容: 从HttpClient 4.3开始,我一直在使用HttpClientBuilder。我正在连接到具有基本身份验证的REST服务。我将凭据设置如下: 但是,这不起作用(我正在使用的REST服务返回401)。怎么了? 问题答案: 从此处的 抢先身份验证 文档中: http://hc.apache.org/httpcomponents-client- ga/tutorial/html/aut

  • 在我的LaravelV5.4项目中,我有两个模型:用户和管理员。 在config/auth.php中,我向警卫和提供者添加了admin,如下所示: 现在在AdminController类中,我想使用Auth::true函数,但默认情况下它使用用户表。我可以在config/auth.php中更改默认值,如下所示,它可以工作,但在这种情况下,我不能为用户使用auth::trunt。 我想将用户设置为默

  • 问题内容: 我正在使用Django Rest Framework开发API。我试图列出或创建“订单”对象,但是当我尝试访问控制台时,出现此错误: 观看次数: 序列化器: 我的网址: 然后我在控制台中使用以下命令: 错误说: 问题答案: 通过在我的settings.py中添加“ DEFAULT_AUTHENTICATION_CLASSES”来解决

  • 目前我正在开发一个Java工具,它应该可以更新Confluence服务器页面。使用Curl一切都像一个符咒,但是当使用Postman或Java代码(HttpClient Java11)时,我得到了一个 HTTP状态401–未经授权 反应。 在下面的语句中使用curl curl--basic-u user:password-X PUT-H“内容类型:application/json”-d“@test