Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Amazon Web Services
  3. api-gateway-secure-pet-store

api-gateway-secure-pet-store

Apache-2.0Objective-C

A sample Java application demonstrating secure API access using AWS Lambda, API Gateway, Cognito, and DynamoDB.

GitHubGitHub
307 stars109 forks0 contributors

What is api-gateway-secure-pet-store?

API Gateway Secure Pet Store is a sample Java application that demonstrates how to build a secure, serverless backend API using AWS services. It provides a complete example of integrating Amazon API Gateway, AWS Lambda, Amazon Cognito, and DynamoDB to create a pet store application with user authentication and data persistence. The project solves the problem of understanding how to properly implement authentication and authorization in a serverless architecture on AWS.

Target Audience

AWS developers and architects looking for a practical reference implementation of secure serverless applications using Java. It's particularly useful for those building APIs with Amazon API Gateway and Lambda who need to integrate Cognito for user management.

Value Proposition

Developers choose this project because it provides a fully working, well-documented example of AWS serverless security patterns that can be adapted to real-world applications. Unlike generic documentation, it offers concrete code and configuration that demonstrates best practices for authentication, authorization, and API design on AWS.

Overview

Amazon API Gateway sample using Amazon Cognito credentials through AWS Lambda

Use Cases

Best For

  • Learning AWS serverless security patterns with Cognito and IAM
  • Building reference architectures for secure API backends on AWS
  • Understanding API Gateway and Lambda integration with Java
  • Implementing temporary credential issuance for mobile applications
  • Studying Swagger/OpenAPI definitions for AWS API Gateway
  • Creating sample applications for AWS training or workshops

Not Ideal For

  • Developers using non-Java languages like Python or Node.js for AWS Lambda
  • Teams needing a quick, production-ready backend without extensive AWS manual configuration
  • Projects requiring a cloud-agnostic or multi-cloud serverless architecture reference

Pros & Cons

Pros

Security-First Design

Uses Amazon Cognito and IAM for robust authentication and authorization, demonstrating secure serverless patterns as highlighted in the project philosophy.

End-to-End Integration

Includes a complete iOS application with custom AWSCredentialsProvider, showcasing real client-server interaction and temporary credential issuance.

AWS Best Practices

Leverages managed services like API Gateway and DynamoDB, emphasizing scalability and infrastructure management without server maintenance.

Comprehensive Setup Guide

The README provides detailed, step-by-step instructions with screenshots for configuring all AWS resources, from Cognito pools to IAM roles.

Cons

Manual Configuration Complexity

Requires extensive manual setup across multiple AWS consoles (Cognito, DynamoDB, IAM, Lambda, API Gateway), making deployment error-prone and time-consuming.

Java-Centric Implementation

Backend is implemented in Java 8, a legacy runtime, and the code is not easily adaptable to other popular serverless languages like Python or Node.js.

Limited Platform Support

Only includes an iOS client sample, neglecting Android or web clients, which reduces its utility for cross-platform projects.

Frequently Asked Questions

Quick Stats

Stars307
Forks109
Contributors0
Open Issues15
Last commit5 years ago
CreatedSince 2015

Tags

#api-gateway#lambda#authentication#serverless#swagger#java#authorization#cognito#aws#dynamodb

Built With

S
Swagger
M
Maven
A
Amazon API Gateway
A
Amazon Cognito
a
amazon-dynamodb
J
Java
A
AWS Lambda

Included in

Amazon Web Services14.0k
Auto-fetched 1 day ago

Related Projects

aws-apigateway-swagger-importeraws-apigateway-swagger-importer

Tools to work with Amazon API Gateway, Swagger, and RAML

Stars519
Forks138
Last commit9 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub