Giter Site home page Giter Site logo

poc_springjwt's Introduction

Build Status Coverage Status SonarQube Badge

POC on Authenticate Guest Users

Table of Contents

  1. Introduction
  2. Prerequisites
  3. Dependencies
  4. Configuration
  5. Build And Deployment
  6. Design Details
  7. Support
  8. References
  9. FAQ's
  10. License

Introduction

This POC demonstrates authenticating guest users with a JSON Web Token (jwt)

Design References

Prerequisites

Tools/Software

Wawa Build Time Dependencies

Project Name Version Project URL
Spring boot starter parent 2.1.9.RELEASE Spring Boot Starter Parent

Infrastructure

Software Version Comment(s)
Database H2 1.2.x H2 In-memory Database
Message Bus XX NA Not Aapplicable

Environment Variables

Environment Variable Name Type (Env or Secret) Scope (Build or Runtime) Responsible Party for value Purpose Comment(s)
SERVICE_BASE_URL Env Build & Runtime Integration Platform Scope of this variable changes at run time
BUILD_NUMBER Env Build & Runtime Integration Platform It is pr_pull_number
APP_VERSION Env Build & Runtime Application Developer The app_version comes from the helm chart.
GITHUB_TOKEN Env Build Integration Platform This variable allows downloading npm packages published to the GitHub NPM Registry. To be renamed to GIT_PACKAGE_MANAGER_TOKEN
ENABLE_BUILD_DETAILS Env Build & Runtime Application Developer Control visibility of build and version number in UI application expected value:- true : to show details false : to hide details Yet to be created. It will come from helm chart.

Consumed Services

Service Discovery Address
NA Not Applicable

Discovery address is the name in the Istio service mesh that is used to access a downstream service

Events Produced And Events Consumed

Event Event Schema Description
NA Not Applicable NA

Logging

This section should have critical logging messages that can be used to understand the health of this component or aid in the debugging of the component

Logging Standard

Health Checks

Endpoint Path Content
NA NA NA

Endpoints and the decoder for the current state of the service and any dependent components

Build And Deployment

Compilation

cd myapp
mvn clean package

Run As Application

java -jar ./myapp.jar

Build Container

Not Applicable

Run In Local Kubernetes

Not Applicable

Testing Instructions

Unit test cases

There are multiple unit test cases written to cover the different components of the application. However there is a global application test suite file UnitTests.java that combines all the test cases in a logical manner to create a complete suite. It can be run from command prompt using the following command -

mvn clean test

Design Details

Entity Relationship Diagram

your-UML-diagram-name

Entity State Machine Diagram

your-UML-diagram-name

Dependent Downstream Services

Currently there are no dependent downstream services

Support

i . Deployment status

It is a POC, hence there is no Deployment

ii. How to view Health statistics

One of the way to view Health Statistics of your application is by adding Spring Boot Actuator module ,it helps you monitor and manage your Spring Boot application by providing production-ready features like health check-up, auditing, metrics gathering, HTTP tracing etc. Please check references for more information .How to view Health statistics of a Microservice

iii. How to view Logs

You can view logs by creating a custom Log File using a FileHandler, so that all the logging information is written to the file.

Supporting Team(s)

  • Engineering Team3

FAQ's

FAQ's

References

Name Link Comments
Spring Security https://spring.io/projects/spring-security
JWT Authentication https://community.auth0.com/t/jwt-token-for-guest-anonymous-unauthenticated-users/15653
Implementing JWT Authentication on Spring Boot APIs https://auth0.com/blog/implementing-jwt-authentication-on-spring-boot/
Using Anonymous Sessions for Guest Checkout https://docs.commercetools.com/tutorial-anonymous-session

poc_springjwt's People

Contributors

devipriyarajeswarikotagiri avatar

Watchers

 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.