Git Product home page Git Product logo

cognitodemo's Introduction

CognitoDemo

Introduction

CognitoDemo is a Java application, constructed with the Spring framework (Spring Boot and Spring MVC). This application shows how Amazon Web Services (AWS) Cognito can be used for server side authentication.

AWS Cognito is a multi-faceted authentication service. Cognito reduces the amount of software that has to be written to support login, account creation and user information update. Cognito is a "pay as you go" service, which does not incur the 24-hour a day, 7-days a week cost of an authentication service that is supported by a database server.

One barrier to leveraging Cognito in a Java application is the lack of documentation when it comes to writing Java code that references the Cognito API. This application includes the AuthenticationService object which contains all (most) of the functions you will need to implement server side authentication using Cognito.

This open source software was developed by Topstone Software Consulting. An article that discusses Cognito and this demonstration application can be found here.

Application Structure

The Cognito demonstration application is a Spring application. It consists of three major components:

  • Controllers
    The Spring controllers provide the server side logic for the web pages (e.g., form input validation and processing). Most of the controllers have separate functions that process HTTP GET and POST operations.
  • View
    The view contains the Java Server Pages (JSP) web pages. Each web page corresponds to a controller class.
  • Services
    The services package contains the code that supports the controllers. In this demo application the core class is AuthenticationService, which implements the AuthenticationInterface. The AuthenticationService class contains the code that interfaces with Cognito.

Please see the Topstone Software article on this application for more detail.

cognitodemo's People

Contributors

ianlkaplan avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.