问题标签 [aws-credentials]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
apache-spark - 使用 Spark 读取 S3 文件时提供 AWS_PROFILE
我希望我的 Spark 应用程序(Scala)能够读取 S3 文件
在我的开发机器上,我可以使用 awscli 中的预配置配置文件访问 S3 文件~/.aws/config
,~/.aws/credentials
例如:
但是,当尝试从 Spark 读取这些文件时,将 aws_profile 作为环境变量 ( AWS_PROFILE ) 提供,我收到以下错误:
dosBucketExist on my-bucket-name:com.amazonaws.AmazonClientException:BasicAWSCredentialsProvider EnvironmentVariableCredentialsProvider SharedInstanceProfileCredentialsProvider 没有提供 AWS 凭证:com.amazonaws.SdkClientException:无法从服务端点加载凭证
还尝试将配置文件作为 JVM 选项 ( -Daws.profile=my-profile
) 提供,但没有成功。
谢谢阅读。
amazon-web-services - botocore.exceptions.ProfileNotFound - 将 AWS 凭证传递给 docker 映像
这似乎是很多人都面临的一个问题,但我尝试过的解决方案并没有解决它:
我有一个我 dockerized 的 python 应用程序,并且我想推送到 EC2 容器,但是,一旦 dockerized,该应用程序在(本地)访问我的 AWS 凭证时出现问题:
当试图以这种方式通过它们时:docker run -v $HOME/.aws/credentials:/home/app/.aws/credentials:ro ks/mz
我得到:
我的凭据文件看起来(有点)像这样,并且应用程序在不使用 docker 运行时正确连接:
为什么它可以 undockerized 但不能 dockerized,我该如何解决这个问题?
aws-transcribe - AWS transcribe 无法从链 AwsCredentialsProviderChain 中的任何提供商加载凭证
我正在运行一个使用 AWS TranscribeStreaming 的 java 程序。我已经创建(从 AWS 控制台)并下载了 AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY 然后设置环境变量。当我运行程序时,我收到错误消息:
无法从链 AwsCredentialsProviderChain 中的任何提供者加载凭证。
我不知道为什么,但在使用 Google SDK 进行语音识别时也会发生此错误。
这是我要运行的代码。
amazon-web-services - 来自 AWS S3 的 Kubeflow web-app ui 图像检索问题
目前,我在 kubeflow 管道 UI web-app的 web-app 上遇到了从 AWS S3 添加图像的问题。我现在遇到的问题与设计有关。根据此文档,我进行了初步尝试,但是,当我检查 kubeflow 页面的仪表板时,出现以下错误:
我认为错误可能来自我现在正在努力的两个部分。第一个是存储桶策略(我不确定是否需要根据我的情况配置存储桶策略或 IAM 用户策略,因为 Kubeflow 管道 UI 不与那个静态 html iframe 交互,我想我需要修改存储桶策略,如果我误解了什么,请纠正我)并且该政策将通过 terraform 完成。第二个和我设计的 AWS 凭证传递有关。由于我不想使用 AWS Cognito 来设置我的凭证(来自上面第二个链接的示例代码),我在这个文档中尝试了另一种方式,即硬编码方式,但我使用一种方式在我的python代码boto3
通过传递参数来避免暴露问题,如下所示,
但根据get_frozen_credentials
inboto3
代码/文档,它似乎会刷新,因此可能会过期。当我检查我的 html 页面时,我发现它access_key_id
与我的.aws/credentials
文件匹配,但secret_access_key
不匹配。有没有办法以编程方式获取永久密钥,.aws/credentials
以便它不会过期或刷新,以便我可以传入我的 js 代码:
或者在不使用 Cognito 凭证的情况下使用其他方式使其工作(因此可能使用 IAM 角色)。我认为上述错误可能是由两个问题之一引起的,如果可能的话,如果有人能提供我现在遇到的两个问题的解决方案,我将不胜感激,谢谢。
amazon-web-services - Cognito 的 AWS 凭证可以向其他区域发送请求吗?
我在一个区域中创建了一个用户池和一个身份池。
我可以使用身份池中的凭据(accessKeyId、secretAccessKey、securityToken)来访问另一个区域中的数据吗?
amazon-web-services - AWS Java SDK - 无效的安全令牌
我正在尝试在 EC2 机器上托管的应用程序上使用 AWS SNS Java SDK。对于 SNS SDK,提供凭证的方式不同于其他 SDK,如 S3。我没有指定任何凭据链机制,在我的本地机器上,它似乎默认从 .aws/credentials 文件中提取凭据。
我已从位于 ~/.aws/credentials 的 EC2 机器上更新了我的凭据。但是,在 EC2 上运行我的应用程序时,尝试将消息发布到 SNS 时出现以下错误:
software.amazon.awssdk.services.sns.model.SnsException:请求中包含的安全令牌无效。(服务:Sns,状态码:403,请求 ID:3177217e-e32d-5df5-ab2a-783f74fb6209,扩展请求 ID:null)
到目前为止我尝试过的事情:
- 我已授予 .aws 文件夹 777 权限。
- 检查 $HOME 变量,它输出:/home/ec2-user。对我来说这似乎没问题。
- 尝试从代码中硬编码 AWS 凭证,但 SDK 似乎不允许指定会话令牌。
- 我必须提到我在使用 S3 时遇到了同样的问题,但是 SDK 允许我从代码中完全指定凭据。
我已按如下方式导入了 SNS SDK:
pom.xml
最低限度的 SNS Java 代码:
你知道会发生什么吗?谢谢!
amazon-web-services - Pyspark - 从 Amazon S3 读取文件的安全问题
我正在尝试使用 pyspark 从 Amazon S3 存储桶中读取 csv 文件,但出现以下错误消息:
: java.lang.SecurityException: 类“com.amazonaws.auth.EnvironmentVariableCredentialsProvider”的签名者信息与同一包中其他类的签名者信息不匹配
我试图在 Internet 上查找,但没有发现重要的东西。
我试过的:
- 只需使用环境变量作为凭据
- 只需使用 .aws/credentials 作为凭据
- 只需使用 spark-defaults.conf 凭据
但这些都不起作用。
我使用 Spark 3.1.1 和 Pycharm 作为 IDE。
有没有人遇到过这种类型的问题?
asp.net - .NET Framework - 无法使用 credentialProfileStoreChain.TryGetAWSCredentials(AWSConfigs.AWSProfileName, out awsCredentials) 获取 aws 信用
在 .NET Framework 4.5 中 - 无法使用 credentialProfileStoreChain.TryGetAWSCredentials(AWSConfigs.AWSProfileName, out awsCredentials) 从 .aws\credentials 中创建的凭证文件获取 aws 凭证
我使用 saml2aws 创建登录。凭据文件是使用有效的配置文件和凭据创建的。但是,当我使用 credentialProfileStoreChain.TryGetAWSCredentials(AWSConfigs.AWSProfileName, out awsCredentials) 获取凭证时,它返回 false。
相同的代码适用于其他 .net 框架项目。
我将配置文件保存在 web.config 文件中
代码中的 AWSConfigs.AWSProfileName 值是正确的“配置文件”
amazon-web-services - 如何在访问公共 AWS S3 存储桶之前以编程方式禁用凭证检查?
我的 C++ 程序必须同时访问公共和私有 AWS 存储桶。公共存储桶不属于我,因此当程序尝试访问它们并且我的凭据可见时,我收到以下类型错误:
如果我像这样手动隐藏我的凭据
mv ~/.aws/credentials ~/.aws/credentials-hidden
在运行程序之前,我可以成功列出并获取公共对象。但是,该程序无法访问我的私人存储桶。
我已经搜索了一些选项来禁用S3Client
和ClientConfiguration
重新启用凭据检查,但没有找到它。
请告诉我这是如何做到的。
python - 如何从不同的文件名(在 .aws 中不称为凭据)读取 S3 凭据?
从位于 .aws 中的“凭证”读取时,我可以将一个对象从本地上传到我的云 S3 存储桶,但是为了这个问题,有一个与“凭证”格式相同的文件称为“tester”而且我无法从中读取它,即使它与凭据完全相同。
如果我这样做:
我应该在 ACCESS_KEY、SECRET_KEY、SESSION_TOKEN 中放入什么?我不想硬编码我的凭据,但我希望它不从 .aws 中的凭据中读取,而是从另一个名为“tester”的文件中读取,该文件具有相同的凭据。
注意:“tester”文件与我的 Mac 上的 python/Boto3 程序位于同一位置。