Code Monkey home page Code Monkey logo

service-chassis's People

Contributors

allawala avatar hoffbeam avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

beammaf hoffbeam

service-chassis's Issues

Return JWT token as part of a successful authentication

When a user authenticates successfully, the token is already added to the response header. However the caller might want to store the token in an active token list. Then this list can later be consulted when checking if the user is authenticated based on the passed-in token in the request.

Invalidate session

Invalidate either a single session or all sessions for the token subject

Refactor

  • make the configuration file syntax consistent
  • authenticate directive should set the token principal from the authenticated subject

Downgrade circe and enumeratum versions

For the projects using the chassis, the upgraded versions of these libraries seem to add significant time to the compilation when there are quite a few enums. The time seem to be related to macro compilation.

Add strategy for remember me

  • Simple: Issue a jwt token with a higher duration without an explicit refresh token
  • Full: proper refresh token semantics (TBD)

Upgrade versions

In the hopes to get rid of the issue "knownDirectSubclasses of observed before subclass registered"
Upgrade

  • scala
  • circe
  • enumeratum
  • jwt-circe

Make configuration extensible

Each individual service building upon this chassis should be able to load its own specific set of configuration along with the base common configuration

Load environment specific configuration

${ENV} environment variable will be used to determine which application and logging configuration to load. If missing, it will default to the local environment

Add Shiro based authentication and authorization

Add foundation that provides the following and allows the extending micro services to provide more concrete auth realms

  • cater for username password credentials
  • cater for JWT token
  • cater for refresh tokens due to remember me semantics

Create project

Create an initial project image with

  • Minimal scala seed
  • Add .gitignore file
  • Add README.md
  • Init git flow

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.