aws凭证(一)凭证存储

AWS 凭证用于验证身份,并授权对 DynamoDB 等等 AWS 服务的访问。配置了aws凭证后,才可以通过编程方式或从AWS CLI连接访问AWS资源。凭证存储在哪里呢?有以下几个方法:

一、使用文件存储

1、介绍

文件存储适用于长期和多账户配置。AWS SDK 也会自动读取配置文件中的凭证。且默认读取: ~/.aws/credentials ,对应 Windows 上的 %UserProfile%\.aws\credentials 路径下。示例:

[default]
aws_access_key_id = your_access_key_id
aws_secret_access_key = your_secret_access_key
aws_session_token = your_session_token  # 如果使用临时凭证时需要配置此项[profile_name]
aws_access_key_id = your_access_key_id
aws_secret_access_key = your_secret_access_key
aws_session_token = your_session_token  # 如果使用临时凭证时需要配置此项

如果凭证文件放在非aws默认的目录下,如何获取???

2、文件生成方法

文件是怎么来的,有两种方法,可以使用aws cli配置,也可以手动编辑。

(1) aws cli命令生成

在自动在系统目录(windows在C:\Users\用户名\.aws)下生成两个文件,config和credentials

(2)手动生成

手动创建上述的两个文件,并手动编辑内容。

二、使用环境变量

 适用于本地开发和临时凭证。通过设置环境变量来传递 AWS 凭证。设置这些环境变量后,AWS SDK 会自动读取并使用它们来执行请求。常用的环境变量:

AWS_ACCESS_KEY_ID:你的 AWS 访问密钥 ID
AWS_SECRET_ACCESS_KEY:你的 AWS 密钥访问密钥
AWS_SESSION_TOKEN:如果使用临时凭证,需要设置此环境变量。

 如windows设置命令:

set AWS_ACCESS_KEY_ID=your_access_key_id
set AWS_SECRET_ACCESS_KEY=your_secret_access_key
set AWS_SESSION_TOKEN=your_session_token  # 如果使用临时凭证

三、硬编码

 在代码中写死。适用于动态设置凭证的场景。以dynamo为例:

import software.amazon.awssdk.auth.credentials.AwsBasicCredentials;
import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider;
import software.amazon.awssdk.services.dynamodb.DynamoDbClient;
import software.amazon.awssdk.regions.Region;public class DynamoDbWithCustomCredentials {public static void main(String[] args) {// 创建基本凭证AwsBasicCredentials credentials = AwsBasicCredentials.create("your_access_key_id","your_secret_access_key");// 使用这些凭证创建 DynamoDbClientDynamoDbClient dynamoDbClient = DynamoDbClient.builder().credentialsProvider(StaticCredentialsProvider.create(credentials)).region(Region.US_EAST_1)  // 替换为你的区域.build();// 使用 DynamoDbClient 执行操作System.out.println("DynamoDB Client created with custom credentials.");// 关闭客户端dynamoDbClient.close();}
}

如果你使用 STS(安全令牌服务) 获得了临时凭证(例如,通过 sts:assumeRole),你需要使用 Session Token 来配置凭证。临时凭证包括 Access Key IDSecret Access KeySession Token

import software.amazon.awssdk.auth.credentials.AwsSessionCredentials;
import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider;
import software.amazon.awssdk.services.dynamodb.DynamoDbClient;
import software.amazon.awssdk.regions.Region;public class DynamoDbWithTemporaryCredentials {public static void main(String[] args) {// 创建临时凭证AwsSessionCredentials sessionCredentials = AwsSessionCredentials.create("temporary_access_key_id","temporary_secret_access_key","temporary_session_token");// 使用临时凭证创建 DynamoDbClientDynamoDbClient dynamoDbClient = DynamoDbClient.builder().credentialsProvider(StaticCredentialsProvider.create(sessionCredentials)).region(Region.US_EAST_1)  // 替换为你的区域.build();// 使用 DynamoDbClient 执行操作System.out.println("DynamoDB Client created with temporary credentials.");// 关闭客户端dynamoDbClient.close();}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/61716.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux系统性能优化技巧

系统性能优化 在当今的信息技术领域,Linux系统的性能优化变得越来越重要。随着Linux操作系统的广泛应用,从桌面环境到大型服务器集群,性能优化不仅可以提升系统的响应速度和吞吐量,还能降低资源消耗,从而延长硬件使用…

力扣面试经典 150(上)

文章目录 数组/字符串1. 合并两个有序数组2. 移除元素3. 删除有序数组中的重复项4. 删除有序数组的重复项II5. 多数元素6. 轮转数组7. 买卖股票的最佳时机8. 买卖股票的最佳时机II9. 跳跃游戏10. 跳跃游戏II11. H 指数12. O(1)时间插入、删除和获取随机元素13. 除自身以外数组的…

二分排序

二分问题之前遇到很多次了,不过一直是手写完整二分,现在转变一下想法,直接使用函数lower_bound和upper_bound更方便 lower_bound 有序数组中 查找第一个不小于指定值的位置。 本质二分代码: int lower_bound_custom(int* arr, i…

apache、iis屏蔽限制ip访问(适用虚拟主机)

Linux下规则文件.htaccess(手工创建.htaccess文件到站点根目录) <IfModule mod_rewrite.c> RewriteEngine On #Block ip RewriteCond %{http:X-Forwarded-For} ^(8.8.4.4|8.8.8\.) [OR] RewriteCond %{REMOTE_ADDR} ^(8.8.4.4|8.8.8\.) [OR] RewriteCond %{http:X-Real-…

李春葆《数据结构》——图相关代码

邻接矩阵结构体&#xff1a; #define MAX<最大结点个数> #define INF 32765 //定义无穷 typedef struct{int no;//顶点的编号&#xff1b;InfoType info;//顶点的其他信息 }vertexType;//顶点的类型 typedef struct{int edges[MAX][Max];//邻接矩阵数组 int vertexTy…

经验笔记:Git 中的远程仓库链接及上下游关系管理

Git 中的远程仓库链接及上下游关系管理 1. 远程仓库的链接信息 当你克隆一个远程仓库时&#xff0c;Git 会在本地仓库中记录远程仓库的信息。这些信息包括远程仓库的 URL、默认的远程名称&#xff08;通常是 origin&#xff09;&#xff0c;以及远程仓库中的所有分支和标签。…

聚焦AI存储,联想凌拓全力奔赴

【全球存储观察 &#xff5c; 科技热点关注】 每一个时代&#xff0c;都有每一个时代的骄傲。 在信息化时代&#xff0c;NAS文件存储肩负着非结构化数据管理与存储的重任&#xff0c;NetApp以其创新实力&#xff0c;赢得了全球存储市场的极高声誉。 在数智化时代&#xff0c;…

JavaWeb后端开发知识储备2

目录 1.HttpClient 2.微信小程序开发 3.Spring Cache 1.HttpClient 简单来说&#xff0c;HttpClient可以通过编码的方式在Java中发送Http请求 2.微信小程序开发 微信小程序的开发本质上是前端开发&#xff0c;对于后端程序员来说了解即可 3.Spring Cache Spring Cache 是…

MySQL和ADSDB

ADSDB&#xff08;Aliyun Distributed SQL Database&#xff09; 和 MySQL 都是数据库系统&#xff0c;但它们在架构、用途和特点上有所不同。下面是这两者的主要区别&#xff1a; 1、数据库类型与设计架构 MySQL&#xff1a; 是一个 关系型数据库管理系统&#xff08;RDBMS&a…

基于CNN+RNNs(LSTM, GRU)的红点位置检测(pytorch)

1 项目背景 需要在图片精确识别三跟红线所在的位置&#xff0c;并输出这三个像素的位置。 其中&#xff0c;每跟红线占据不止一个像素&#xff0c;并且像素颜色也并不是饱和度和亮度极高的红黑配色&#xff0c;每个红线放大后可能是这样的。 而我们的目标是精确输出每个红点的…

【java】常用命令记录

1.java 2.jar 2.1 介绍 JAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包。(也可以用war包. jar cvf aa.war)当然也是有区别的,JAR包中有一个META-INF\MANIFEST.MF文件,当你找成JAR包时,它会自动生成。JAR包是由JDK安装目录\bin\jar.exe命令生成的&#xff0…

树莓派搭建NextCloud:给数据一个安全的家

前言 NAS有很多方案&#xff0c;常见的有 Nextcloud、Seafile、iStoreOS、Synology、ownCloud 和 OpenMediaVault &#xff0c;以下是他们的特点&#xff1a; 1. Nextcloud 优势&#xff1a; 功能全面&#xff1a;支持文件同步、共享、在线文档编辑、视频会议、日历、联系人…

数据集-目标检测系列- 花卉 鸡蛋花 检测数据集 frangipani >> DataBall

数据集-目标检测系列- 花卉 鸡蛋花 检测数据集 frangipani >> DataBall DataBall 助力快速掌握数据集的信息和使用方式&#xff0c;会员享有 百种数据集&#xff0c;持续增加中。 贵在坚持&#xff01; 数据样例项目地址&#xff1a; * 相关项目 1&#xff09;数据集…

初次体验加猜测信息安全管理与评估国赛阶段训练习

[第一部分] 网络安全事件响应 window操作系统服务器应急响应流程_windows 服务器应急响应靶场_云无迹的博客-CSDN博客 0、请提交攻击者攻击成功的第一时间&#xff0c;格式&#xff1a;YY:MM:DD hh:mm:ss1、请提交攻击者的浏览器版本2、请提交攻击者目录扫描所使用的工具名称…

Python Matplotlib 安装指南:使用 Miniconda 实现跨 Linux、macOS 和 Windows 平台安装

Python Matplotlib 安装指南&#xff1a;使用 Miniconda 实现跨 Linux、macOS 和 Windows 平台安装 Matplotlib是Python最常用的数据可视化工具之一&#xff0c;结合Miniconda可以轻松管理安装和依赖项。在这篇文章中&#xff0c;我们将详细介绍如何使用Miniconda在Linux、mac…

opencv-python 分离边缘粘连的物体(距离变换)

import cv2 import numpy as np# 读取图像&#xff0c;这里添加了判断图像是否读取成功的逻辑 img cv2.imread("./640.png") # 灰度图 gray cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 高斯模糊 gray cv2.GaussianBlur(gray, (5, 5), 0) # 二值化 ret, binary cv2…

KubeSphere内网环境实践GO项目流水线

KubeSphere内网环境实践GO项目流水线 kubesphere官方给出的流水线都是在公网环境下&#xff0c;并对接github、dockerhub等环境。本文在内网实践部署&#xff0c;代码库使用内网部署的gitlab&#xff0c;镜像仓库使用harbor。 1. 环境准备 1.1 部署kubesphere环境 参考官方…

MINES

MINES (m)6A (I)dentification Using (N)anopor(E) (S)equencing Tombo(v1.4) 命令在 MINES 之前执行&#xff1a; &#xff08;仅在 fast5 文件中尚未包含 fastq 时需要&#xff09; tombo preprocess annotate_raw_with_fastqs --fast5-basedir /fast5_dir/ --fastq-file…

UE5材质篇5 简易水面

不得不说&#xff0c;UE5里搞一个水面实在是相比要自己写各种反射来说太友好了&#xff0c;就主要是开启一堆开关&#xff0c;lumen相关的&#xff0c;然后稍微连一些蓝图就几乎有了 这里要改一个shading model&#xff0c;要这个 然后要增加一个这个node 并且不需要连接base …

浦语提示词工程实践(LangGPT版,服务器上部署internlm2-chat-1_8b,踩坑很多才完成的详细教程,)

首先&#xff0c;在InternStudio平台上创建开发机。 创建成功后点击进入开发机打开WebIDE。进入后在WebIDE的左上角有三个logo&#xff0c;依次表示JupyterLab、Terminal和Code Server&#xff0c;我们使用Terminal就行。&#xff08;JupyterLab可以直接看文件夹&#xff09;…