From ea8c24d23729b9e87bd1d3c01630ea1d7a75c73c Mon Sep 17 00:00:00 2001 From: Fang-Pen Lin Date: Fri, 3 Oct 2025 10:33:54 -0700 Subject: [PATCH] Add document for java sdk aws auth login --- docs/sdks/languages/java.mdx | 52 ++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/docs/sdks/languages/java.mdx b/docs/sdks/languages/java.mdx index 7ead4d3dd..dba1191fd 100644 --- a/docs/sdks/languages/java.mdx +++ b/docs/sdks/languages/java.mdx @@ -131,6 +131,58 @@ sdk.Auth().LdapAuthLogin(input); - `username` (String): The LDAP username. - `password` (String): The LDAP password. +### AWS Auth + +```java +public void AwsAuthLogin( + AwsAuthLoginInput input +) +throws InfisicalException +``` + +```java +var input = AwsAuthLoginInput + .builder() + .identityId("") + .iamHttpRequestMethod("") + .iamRequestHeaders("") + .iamRequestBody("") + .build(); + +sdk.Auth().AwsAuthLogin(input); +``` + +**Parameters:** +- `input` (AwsAuthLoginInput): The input for authenticating with AWS. + - `identityId` (String): The ID of the machine identity to authenticate with. + - `iamHttpRequestMethod` (String): The HTTP request method used in the signed request. + - `iamRequestHeaders` (String): The base64-encoded headers of the sts:GetCallerIdentity signed request. + - `iamRequestBody` (String): The base64-encoded body of the signed request. Most likely, the base64-encoding of Action=GetCallerIdentity&Version=2011-06-15. + +Generating the login input requires retrieving AWS credentials from the current local environment and performing an AWS Signature Version 4 on the retrieved data. +To make it much easier for users, we provide a helper class to automatically generate the login input for you. + +```java +import com.infisical.sdk.auth.AwsAuthProvider; +var input = AwsAuthProvider.defaultProvider() + .fromInstanceProfile() + .toLoginInput(""); +``` + +If you prefer to retrieve AWS credentials manually from your local AWS environment, you can generate the login input by providing the AWS credentials yourself, as shown below: + +```java +import com.infisical.sdk.auth.AwsAuthProvider; +import software.amazon.awssdk.auth.credentials.AwsBasicCredentials; +var input = AwsAuthProvider.defaultProvider() + .fromCredentials( + "", + AwsBasicCredentials.create("", ""), + "" + ) + .toLoginInput(""); +``` + ### Access Token Auth #### Authenticating