AWS SDK for Java 的使用(适用于 Java 的 AWS 开发工具包开发人员指南)之配置aws凭证

本文详细介绍了如何使用AWS SDK for Java,包括注册AWS账号、创建IAM用户、设置AWS凭证和区域,以及安装和配置AWS CLI的过程。适用于初学者快速上手。

今天接了个新项目,使用的AWS SDK for Java。例如:

      <dependency>
        <groupId>com.amazonaws</groupId>
        <artifactId>aws-java-sdk-bom</artifactId>
        <version>${aws.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
        ......
      <dependency>
         <groupId>com.amazonaws</groupId>
         <artifactId>aws-java-sdk-dynamodb</artifactId>
      </dependency>
        ......

问题就在于 使用aws的sdk需要获取aws凭证(aws credentials),也就是说你要有一个亚马逊的账号,并且购买他的套餐才可以使用。不过对于新用户是有12个月的免费套餐可选的。以下是教程。

 

AWS SDK for Java 的凭证获取及配置

本教程完全参照aws官网(中文版地址):https://docs.aws.amazon.com/zh_cn/sdk-for-java/v1/developer-guide/welcome.html

不过新手对于这个教程 还是会一头雾水,在此整理一下:

一、注册 AWS账号

  1. 打开 https://aws.amazon.com/ 并单击 Sign Up

  2. 按照屏幕上的说明进行操作。这一步需要填写一张信用卡,来预授权对超过免费套餐以外的费用的扣费,比如超过12个月后的续费,如果不继续使用请记住提前关闭。之后注册过程中,您会接到一个电话,需要您使用电话按键输入 PIN 码。

二、创建 IAM 用户

  1. 转到 IAM 控制台 (您可能需要首先登录 AWS)。

  2. 单击侧边栏中的 Users (用户)以查看您的 IAM 用户。

  3. 如果您未设置任何 IAM 用户,则单击 Create New Users(添加用户) 创建一个用户(按照提示操作)。

  4. 在列表中选择您将用来访问 AWS 的 IAM 用户。

  5. 打开 Security Credentials 选项卡,然后单击 Create Access Key

    注意:对于任何给定的 IAM 用户最多可以有两个活动访问密钥。如果您的 IAM 用户已经有两个访问密钥,您将需要先删除其中的一个访问密钥,然后再创建新密钥。

  6. 在所得到的对话框中,单击 Download Credentials 按钮以将凭证文件下载到您的计算机上,或者单击 Show User Security Credentials 以查看 IAM 用户的访问密钥 ID 和秘密访问密钥 (您可以复制和粘贴)。

    注意:在关闭该对话框之后,就无法获取密码访问密钥了。但是,您可以删除与它相关联的访问密钥 ID 并创建新密钥。

三、设置 AWS 凭证

虽然可通过大量方式设置将由 AWS SDK for Java 使用的凭证,但建议使用以下方式:

  • 在本地系统上的 AWS 凭证配置文件中设置凭证,该配置文件位于:

    • Linux, macOS, or Unix 中的 ~/.aws/credentials

    • Windows 中的 C:\Users\USERNAME \.aws\credentials

           此文件应包含以下格式的行:

  • [default]
    aws_access_key_id = your_access_key_id
    aws_secret_access_key = your_secret_access_key

            用您自己的 AWS 凭证值替换值 your_access_key_id 和 your_secret_access_key

  • 设置 AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY 环境变量。

    要在 Linux, macOS, or Unix 上设置这些变量,请使用 export 

    export AWS_ACCESS_KEY_ID=your_access_key_id
    export AWS_SECRET_ACCESS_KEY=your_secret_access_key

    要在 Windows 上设置这些变量,请使用 set 

    set AWS_ACCESS_KEY_ID=your_access_key_id
    set AWS_SECRET_ACCESS_KEY=your_secret_access_key

    在使用这些方法之一来设置 AWS 凭证后,AWS SDK for Java 将使用默认凭证提供程序链自动加载这些凭证。有关在 Java 应用程序中使用 AWS 凭证的其他信息,请参阅使用 AWS 凭证

四、设置 AWS 区域

您应使用适用于 Java 的 AWS 开发工具包设置将用于访问 AWS 服务会的默认 AWS 区域。要获得最佳网络性能,请选择在地理位置上靠近您 (或您的客户) 的区域。要查看每个服务的区域列表,请参阅 Amazon Web Services General Reference 中的区域和终端节点

注意

如果您选择区域,则默认情况下将使用 us-east-1。

您可以使用类似的方法设置凭证以设置默认 AWS 区域:

  • 在本地系统上的 AWS Config 文件中设置 AWS 区域,该文件位于:

    此文件应包含以下格式的行:

    • Linux, macOS, or Unix 中的 ~/.aws/config

    • Windows 中的 C:\Users\USERNAME\.aws\config

  • [default]
    region = your_aws_region

     

          用所需的 AWS 区域 (例如“us-west-2”) 替换 your_aws_region

  • 设置 AWS_REGION 环境变量。

      在 Linux, macOS, or Unix 上,请使用 export 

  • export AWS_REGION=your_aws_region

         在 Windows 上,请使用 set 

  • set AWS_REGION=your_aws_region

         其中,your_aws_region 是所需的 AWS 区域名称。

好了,凭证搞定了接下来配置maven依赖去使用就行了

使用可以参考:https://docs.aws.amazon.com/zh_cn/sdk-for-java/v1/developer-guide/basics.html

DynamoDB的使用:https://docs.aws.amazon.com/zh_cn/amazondynamodb/latest/developerguide/DynamoDBLocal.html

 

如果先安装aws cli:

五、AWS 命令行界面 (CLI) 安装

参考官方文档:https://amazonaws-china.com/cn/cli/

1、首先需要 安装pip参考:https://pip.pypa.io/en/latest/installing/

2、安装awscli

pip install awscli

3、期间遇到的报错:

      报错1:

                       matplotlib 1.3.1 requires nose, which is not installed.
                       matplotlib 1.3.1 requires tornado, which is not installed.

       解决:

sudo easy_install nose

sudo easy_install tornado

参考:https://www.jianshu.com/p/fc8134805fb3

报错2:Cannot uninstall 'six'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

解决:sudo pip install six --upgrade --ignore-installed six

参考:https://www.cnblogs.com/qq952693358/p/9425544.html

 

 

 

获取AWS或其他云服务的访问密钥(ACCESS_KEY)和秘密密钥(SECRET_KEY)是管理云资源访问权限的重要步骤。以下是针对AWS及其他主流云服务提供商(如Azure、Google Cloud)的详细说明。 ### AWS 获取 ACCESS_KEY 和 SECRET_KEY 在AWS中,访问密钥和秘密密钥用于访问AWS服务的API。获取这些密钥的步骤如下: 1. 登录 [AWS管理控制台](https://aws.amazon.com/console/)。 2. 进入 **IAM (Identity and Access Management)** 服务[^2]。 3. 在左侧导航栏中选择 **用户 (Users)**。 4. 选择需要获取密钥的用户,点击 **“安全凭证(Security credentials)** 标签。 5. 点击 **“创建访问密钥” (Create access key)**。 6. 下载或复制生成的 **Access Key ID** 和 **Secret Access Key**。这是唯一一次可以查看或下载秘密密钥的机会,请务必妥善保存。 建议将密钥配置AWS CLI或SDK中,使用以下命令进行配置: ```bash aws configure ``` 输入提示的Access Key ID、Secret Access Key、默认区域(如`us-east-1`)和输出格式(如`json`)即可完成配置。 ### Azure 获取访问密钥 Azure 使用“存储账户访问密钥”来访问存储服务,或者使用“服务主体(Service Principal)”来访问其他资源。以下是获取存储账户密钥的方法: 1. 登录 [Azure门户](https://portal.azure.com/)。 2. 进入 **存储账户 (Storage Accounts)**。 3. 选择一个存储账户。 4. 在左侧菜单中选择 **“访问密钥 (Access keys)”**。 5. 在页面中可以看到两个密钥(key1 和 key2),可以用于访问存储服务。 对于资源管理API的访问,需创建服务主体并获取客户端ID和客户端密钥,这通常通过Azure CLI或PowerShell完成: ```bash az ad sp create-for-rbac --name "myApp" --role contributor --scopes /subscriptions/{subscription-id}/resourceGroups/{group-name} ``` ### Google Cloud Platform (GCP) 获取密钥 GCP 使用服务账户密钥文件(JSON格式)来访问API。以下是获取方法: 1. 登录 [Google Cloud Console](https://console.cloud.google.com/)。 2. 导航至 **IAM & Admin > Service Accounts**。 3. 创建或选择一个服务账户。 4. 点击 **“Keys”** 标签页。 5. 点击 **“Add Key > Create New Key”**,选择 **JSON** 格式并下载。 该JSON文件包含访问所需的私钥和客户端ID,适用于SDK和API调用。 ### 注意事项 - **安全性**:请勿将密钥硬编码在代码中或提交到公共代码仓库。建议使用环境变量或密钥管理服务(如AWS Secrets Manager、Azure Key Vault、Google Cloud Secret Manager)。 - **权限最小化**:确保密钥对应的用户或服务账户仅拥有执行任务所需的最小权限[^2]。 - **定期轮换**:定期更换密钥以减少安全风险。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值