Giter VIP home page Giter VIP logo

agama-securitykey's Introduction

Agama Security Key Project

Contributors Forks Stargazers Issues Apache License

Use this project to authenticate using security devices (Yubico Key, Windows Hello, Touch ID on Mac, etc.)

How it works at a glance

When a main flow of this project is launched (namely io.jans.agama.securitykey.main) the user's browser is redirected to a view where he/she must first enter his/her username, then validate one of the security keys that he/she has configured for his/her user (Yubico Key, Windows Hello, Touch ID on Mac, etc.). Finally, the user's browser is redirected to the registered URI.

Note: You must have registered security devices to your user, to register you must use Jans Casa.

Project Deployment

To deploy this project we need to meet the requirements.

Requirements

  1. Running instance of Jans Auth Server, Jans Fido2 and Jans Casa

Add Java dependencies

  1. Download latest agama-securitykey-custom.jar from Releases
  2. scp the jar file to /opt/jans/jetty/jans-auth/custom/libs/ on Auth Server
  3. On Auth Server, edit /opt/jans/jetty/jans-auth/webapps/jans-auth.xml and add the jar file to the <set name="extractClasspath">...</Set> element. For example:
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
   <Set name="contextPath">/jans-auth</Set>
   <Set name="war">
       <Property name="jetty.webapps" default="." />/jans-auth.war
   </Set>
   <Set name="extractWAR">true</Set>
   <Set name="extraClasspath">
      ...
      /opt/jans/jetty/jans-auth/custom/libs/agama-securitykey-custom.jar,
      ...
   </Set>
 </Configure>
  1. Restart Auth Server to load the new jar:
systemctl restart jans-auth

Deployment

Download the latest agama-securitykey.gama file and deploy it in Auth Sever.

Siga los siguientes pasos:

  • Copy (SCP/SFTP) the gama file of this project to a location in your Jans Server
  • Connect (SSH) to your Jans Server and open TUI: python3 /opt/jans/jans-cli/jans_cli_tui.py
  • Navigate to the Agama tab and then select "Upload project". Choose the gama file
  • Wait for about one minute and then select the row in the table corresponding to this project
  • Press d and ensure there were not deployment errors
  • Pres ESC to close the dialog

TUI_DEPLOY

Testing

You'll need an OpenID Connect test RP. You can try oidcdebugger, jans-tarp or jans-tent. Check out this video to see an example of agama-securitykey in action:

TEST_AGAMA_SECURITY_KEY

Contributors

Milton
Milton Ch.

License

This project is licensed under the Apache 2.0

agama-securitykey's People

Contributors

milton-ch avatar nynymike 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.