{"repo":"seroperson/zio-http-pac4j","free":true,"listed":false,"github":"https://github.com/seroperson/zio-http-pac4j","clone":"git clone https://github.com/seroperson/zio-http-pac4j.git","description":"zio-http wrapper for pac4j, security framework to protect your web applications","language":"Scala","stars":11,"topics":["jwt","oauth2","pac4j","security","zio","zio-http"],"license":"MIT","category":"auth-billing-email","readme_excerpt":"zio-http-pac4j [!WARNING] This library is in an alpha-quality stage. I haven't used it in production yet, however it should work okay. API tends to change. This library provides [pac4j][1] integration for [zio-http][2]. It allows you to easily implement authorization, authentication mechanisms to secure your web service. As pac4j is a Java library and it's hard to hide all Java APIs, be ready to interact with some \"javish\" leftovers. Also, check the [🛡️ Implementing a JWT-based authorization for zio-http][10] article, which shows even more details on how to leverage the power of pac4j using this library. This repository is managed using [jj][9] (jujutsu) VCS. Installation In case you use sbt : In case of mill : This library depends on pac4j version 6.x , which requires you to run at least JDK 17. How to use How you use it depends on your needs. Firstly, be sure to get familiar with [pac4j documentation][3] and their [concepts and components][4]. Let's examine how to implement authentication using Google, GitHub and simple login + password form. Adding necessary OAuth pac4j library is mandatory, as it isn't included out-of-box: We need to start with filling SecurityConfig object: You can notice /api/callback paths here, we will discuss them later. SimpleTestUsernamePasswordAuthenticator instance here is an Authenticator , which allows all users in with username == password and must be used only for testing purposes. For login + password method we also need to implement the fo","default_branch":null,"files":null,"tree":[],"storefront":"/r/seroperson","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/seroperson/zio-http-pac4j/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}