From d18a598540317be864679537f627b2f238c76210 Mon Sep 17 00:00:00 2001 From: Shafaat Date: Thu, 21 Oct 2021 14:57:28 +0800 Subject: [PATCH] AWS SDK --- .gitignore | 33 ++++++ pom.xml | 100 +++++++++++++++++ src/main/java/org/example/App.java | 106 +++++++++++++++++++ src/main/java/org/example/CognitoConfig.java | 10 ++ src/main/resources/AwsCredentials.properties | 9 ++ src/test/java/org/example/AppTest.java | 20 ++++ 6 files changed, 278 insertions(+) create mode 100644 .gitignore create mode 100644 pom.xml create mode 100644 src/main/java/org/example/App.java create mode 100644 src/main/java/org/example/CognitoConfig.java create mode 100644 src/main/resources/AwsCredentials.properties create mode 100644 src/test/java/org/example/AppTest.java diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..549e00a --- /dev/null +++ b/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..71b267b --- /dev/null +++ b/pom.xml @@ -0,0 +1,100 @@ + + + + 4.0.0 + + org.example + aws-sdk + 1.0-SNAPSHOT + + aws-sdk + + http://www.example.com + + + UTF-8 + 11 + 11 + + + + + junit + junit + 4.11 + test + + + + + + com.amazonaws + aws-java-sdk + 1.12.81 + + + + + com.amazonaws + aws-java-sdk-core + 1.12.81 + + + + + com.amazonaws + aws-java-sdk-cognitoidp + 1.12.81 + + + + + + + + + + + + maven-clean-plugin + 3.1.0 + + + + maven-resources-plugin + 3.0.2 + + + maven-compiler-plugin + 3.8.0 + + + maven-surefire-plugin + 2.22.1 + + + maven-jar-plugin + 3.0.2 + + + maven-install-plugin + 2.5.2 + + + maven-deploy-plugin + 2.8.2 + + + + maven-site-plugin + 3.7.1 + + + maven-project-info-reports-plugin + 3.0.0 + + + + + diff --git a/src/main/java/org/example/App.java b/src/main/java/org/example/App.java new file mode 100644 index 0000000..133b4ba --- /dev/null +++ b/src/main/java/org/example/App.java @@ -0,0 +1,106 @@ +package org.example; + +import com.amazonaws.auth.ClasspathPropertiesFileCredentialsProvider; +import com.amazonaws.client.builder.AwsClientBuilder; +import com.amazonaws.services.cognitoidp.AWSCognitoIdentityProvider; +import com.amazonaws.services.cognitoidp.AWSCognitoIdentityProviderClientBuilder; +import com.amazonaws.services.cognitoidp.model.*; + +import java.util.ArrayList; +import java.util.List; + +/** + * Hello world! + * + */ +public class App +{ + public static void main(String[] args) { + //AWSCognitoIdentityProvider cognitoClient = getAmazonCognitoIdentityClient(); + + try{ + //awsCognitoIDPClient = new AWSCognitoIdentityProviderClient(new BasicAWSCredentials("AKIAWZE5RV2A25L5XZHW", "4VDMBOAjfcM4IDMuVh8p9YOMqI3zu/JrvF7Nsm4b")).withRegion(Regions.US_EAST_2); + + _addUser(); + + + }catch(Exception e){ + + e.printStackTrace(); + } + } + + + public static AWSCognitoIdentityProvider getAmazonCognitoIdentityClient() { + ClasspathPropertiesFileCredentialsProvider propertiesFileCredentialsProvider = + new ClasspathPropertiesFileCredentialsProvider(); + + //AwsClientBuilder.EndpointConfiguration ep = new AwsClientBuilder.EndpointConfiguration(CognitoConfig.endpoint,CognitoConfig.region); + + return AWSCognitoIdentityProviderClientBuilder.standard() + .withCredentials(propertiesFileCredentialsProvider) + //.withEndpointConfiguration(ep) + + .withRegion(CognitoConfig.region) + .build(); + + } + + private static void _listUsers(){ + AWSCognitoIdentityProvider cognitoClient = getAmazonCognitoIdentityClient(); + ListUsersRequest request = new ListUsersRequest(); + request.setUserPoolId("us-east-1_lPr8YBxKX"); + ListUsersResult listUsersResult = cognitoClient.listUsers(request); + System.out.println(listUsersResult.getUsers().size()); + } + + private static void _listUsersSniffPayload(){ + AWSCognitoIdentityProvider cognitoClient = getAmazonCognitoIdentityClient(); + ListUsersRequest request = new ListUsersRequest(); + request.setUserPoolId("us-east-1_lPr8YBxKX"); + //cognitoClient.setEndpoint("http://localhost:9999"); + ListUsersResult listUsersResult = cognitoClient.listUsers(request); + System.out.println(listUsersResult.getUsers().size()); + } + + private static void _addUser(){ + AWSCognitoIdentityProvider cognitoClient = getAmazonCognitoIdentityClient(); + AdminCreateUserRequest request = new AdminCreateUserRequest(); + + request.setUsername("testsdk1"); + request.setTemporaryPassword("Welcome@1"); + request.setUserPoolId(CognitoConfig.userPoolId); + + List attributeTypeList = new ArrayList<>(); + + AttributeType ss = new AttributeType(); + ss.setName("email"); + ss.setValue("testsdk@nomail.com"); + + AttributeType emailVerified = new AttributeType(); + emailVerified.setName("email_verified"); + emailVerified.setValue("true"); + + attributeTypeList.add(ss); + attributeTypeList.add(emailVerified); + + request.setUserAttributes(attributeTypeList); + + cognitoClient.adminCreateUser(request); + + + + //cognitoClient.setEndpoint("http://localhost:9999"); + + + } + + private static void _getUser(){ + AWSCognitoIdentityProvider cognitoClient = getAmazonCognitoIdentityClient(); + GetUserRequest request = new GetUserRequest(); + request.setAccessToken("eyJraWQiOiI2YmE3MVF3XC9oTEd3TkRkUFJvWjlZOGJ3cVI5UFpcL0N6QkVNK0ltdWxGQms9IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJlMWUyMzU0Mi1kOTYyLTQzNjAtOWI4NS1iMmU2NDA1NTU3YjEiLCJjb2duaXRvOmdyb3VwcyI6WyJNYWtlciJdLCJpc3MiOiJodHRwczpcL1wvY29nbml0by1pZHAudXMtZWFzdC0yLmFtYXpvbmF3cy5jb21cL3VzLWVhc3QtMl9pRXQxRkRtdVoiLCJ2ZXJzaW9uIjoyLCJjbGllbnRfaWQiOiIxOGtyM3ZvZDAyYnU5OTBrbG5zN25hZGY5Iiwib3JpZ2luX2p0aSI6Ijk3Y2NiZGEyLThmNzEtNGMwMy1iYTk4LTAwYzQ3YzM0MDJkOCIsInRva2VuX3VzZSI6ImFjY2VzcyIsInNjb3BlIjoib3BlbmlkIHByb2ZpbGUgZW1haWwiLCJhdXRoX3RpbWUiOjE2MzM1ODIwODgsImV4cCI6MTYzMzU4NTY4OCwiaWF0IjoxNjMzNTgyMDg4LCJqdGkiOiIzZWFjOWU5Ny1kM2U0LTRkYTYtYThmZC0zNjdkNDU4YjdhMjEiLCJ1c2VybmFtZSI6InNoYWZhYXQifQ.cFTpt0_cVqdcMqb1VRednkaNrwcC-Y4_ZkgbkskHl8TIaJTvZnq0qvhgNAPh1Qpo74UBc4Q6v7O_d0n7YHcrOI9w7FGCpU92imd-LppnQcxj0xMrJn6e6M-gdgDjPmoxGxPfJqgYCp1f6FOw1f7W40bQe9fM5A4MdVC_TKzHknOKesnSwPALXifVnnRqZBvpHMcCj8lvOM2diEhSEwUrPfdGWnwTfqCTpNvYB6Sh2oiglKGBfemizE98-Qr76s-gR9l0Nb5OiC2pK7nNpuf7SJLGYznz3vxd606puwUWNEEMn9Tt981pG1MTlpFHoqLxTu7rw0IBQD0kBy0fC7mPhQ"); + GetUserResult user = cognitoClient.getUser(request); + System.out.println(user.getUsername()); + } + +} diff --git a/src/main/java/org/example/CognitoConfig.java b/src/main/java/org/example/CognitoConfig.java new file mode 100644 index 0000000..287667e --- /dev/null +++ b/src/main/java/org/example/CognitoConfig.java @@ -0,0 +1,10 @@ +package org.example; + +public class CognitoConfig { + public static final String clientId = "399tlpm1gllr3pve5fju1nadnr"; + public static final String userPoolId = "us-east-1_lPr8YBxKX"; + //public static final String endpoint = "cognito-idp.us-east-1.amazonaws.com"; + public static final String endpoint = "http://localhost:9999"; + public static final String region = "us-east-1"; + +} diff --git a/src/main/resources/AwsCredentials.properties b/src/main/resources/AwsCredentials.properties new file mode 100644 index 0000000..07e92b1 --- /dev/null +++ b/src/main/resources/AwsCredentials.properties @@ -0,0 +1,9 @@ +accessKey=AKIAWZE5RV2AU475N74C +secretKey=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 +clientId=399tlpm1gllr3pve5fju1nadnr +#userPoolId=us-east-1_lPr8YBxKX +userPoolId=us-east-1_lPr8YBxKX +endpoint=cognito-idp.us-east-1.amazonaws.com +#endpoint=localhost:9999 +region=us-east-1 +#identityPoolId = us-east-1:f2810be3-a906-4a1e-83bc-aa1230b6789 \ No newline at end of file diff --git a/src/test/java/org/example/AppTest.java b/src/test/java/org/example/AppTest.java new file mode 100644 index 0000000..6a1d2d7 --- /dev/null +++ b/src/test/java/org/example/AppTest.java @@ -0,0 +1,20 @@ +package org.example; + +import static org.junit.Assert.assertTrue; + +import org.junit.Test; + +/** + * Unit test for simple App. + */ +public class AppTest +{ + /** + * Rigorous Test :-) + */ + @Test + public void shouldAnswerWithTrue() + { + assertTrue( true ); + } +}