Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

awesome-auth

📊 Software and Libraries for Authentication & Authorization & SSO & IAM
https://github.com/casbin/awesome-auth

Last synced: 4 days ago
JSON representation

  • SSO (Single-Sign-On), IAM (Identity Access Management)

    • Keycloak - Open Source Identity and Access Management.
    • Authelia - The Single Sign-On Multi-Factor portal for web apps.
  • Authorization

    • <a name="authZ-golang"></a>Golang

      • Topaz - Fine-grained authorization for cloud-native applications. Combining the best of OPA and Zanzibar
      • Casbin - Authorization library that supports access control models like ACL, RBAC, ABAC in Golang.
      • goRBAC - Lightweight role-based access control implementation in Go.
      • Ladon - SDK for access control policies: authorization for the microservice and IoT age.
      • Foulkon - Authorization server that allows or denies access to web resources.
      • Gocialite - Social OAuth login in Go with multiple providers has never been so easy.
      • Ory Keto - Access control server capable of solving complex use cases (multi-tenant, attribute-based access control, etc.) with access control policies.
    • <a name="authZ-ios"></a>iOS

      • Permission - Unified API to ask for permissions on iOS.
      • Authgear SDK for iOS - With Authgear SDK for iOS, you can easily integrate authorization features into your iOS apps.
    • <a name="authZ-android"></a>Android

      • AndPermission - Android runtime permission, support the right to apply for permission at any place.
      • Authgear SDK for Android - Android SDK to authenticate and authorize users based on the OAuth 2.0 authorization framework.
    • <a name="authZ-cSharp"></a>C#

      • Casbin.NET - Authorization library that supports access control models like ACL, RBAC, ABAC in .NET (C#).
      • DotNetOpenAuth - Implementation of the OpenID, OAuth protocols.
      • AuthorizationServer - Sample implementation of an OAuth2 authorization server.
    • <a name="authZ-rust"></a>Rust

      • Casbin-Rs - Authorization library that supports access control models like ACL, RBAC, ABAC in Rust.
    • <a name="authZ-php"></a>PHP

      • ezRbac - Simple yet easy to implement role-based access control library for popular PHP framework: [Codeigniter](https://github.com/bcit-ci/CodeIgniter).
      • PHP-Casbin - Authorization library that supports access control models like ACL, RBAC, ABAC in PHP.
      • PHP-RBAC - Authorization library for PHP which provides developers with NIST Level 2 hierarchical role-based access control.
      • php-abac - Attribute-based access control library.
      • laravel-permission - Allows you to manage user permissions and roles in a database.
      • logical-permissions-php - This is a generic library that provides support for array-based permissions with logic gates such as AND and OR.
      • symfony-logical-authorization-bundle - This Symfony bundle provides a unifying solution for authorization that aims to be flexible, convenient and consistent.
    • <a name="authZ-java"></a>Java

      • jCasbin - Authorization library that supports access control models like ACL, RBAC, ABAC in Java.
      • AT&T XACML - XACML 3.0 implementation from AT&T.
      • Apache Sentry - Highly modular system for providing fine grained role based authorization to both data and metadata stored on an Apache Hadoop cluster.
      • TOTP Server-Side Library - TOTP server-side library.
      • pac4j - Security engine for Java (authentication, authorization, multi-frameworks): OAuth, CAS, SAML, OpenID Connect, LDAP, JWT.
      • Apache Shiro - Powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management.
    • <a name="authZ-node"></a>Node.js

      • Node-Casbin - Authorization library that supports access control models like ACL, RBAC, ABAC in Node.js.
      • RBAC - Hierarchical role-based access control for Node.js.
      • ABAC - Attribute-based access control for Node.js.
      • accesscontrol - Role and attribute-based access control for Node.js.
      • RBAC - Hierarchical role-based access control for Node.js.
    • <a name="authZ-python"></a>Python

      • PyCasbin - Authorization library that supports access control models like ACL, RBAC, ABAC in Python.
      • Simple RBAC - Simple role-based access control utility for Python.
      • Flask-RBAC - Adds RBAC support to [Flask](https://github.com/pallets/flask).
      • Vakt - Attribute-based access control (ABAC) SDK for Python.
    • <a name="authZ-ruby"></a>Ruby

      • Pundit - Minimal authorization through OO design and pure Ruby classes.
      • Casbin - Authorization library that supports access control models like ACL, RBAC, ABAC in Ruby.
      • CanCanCan - Authorization for Ruby on Rails.
      • Oso - Batteries-included framework for building authorization in your Ruby application.
  • Articles

  • Authentication

    • <a name="authN-cSharp"></a>C#

    • <a name="authN-java"></a>Java

    • <a name="authN-golang"></a>Golang

      • Ory Hydra - OpenID Connect certified OAuth2 server.
      • Ory Kratos - API-first Identity and User Management system built for cloud applications.
      • Ory Oathkeeper - Identity/Access proxy inspired by the BeyondCorp/Zero-Trust white paper.
      • Ory Fosite - Extensible OAuth 2.0 and OpenID Connect SDK for Golang.
      • Casdoor - UI-first centralized authentication / Single-Sign-On (SSO) platform supporting OAuth 2.0 / OIDC and SAML.
    • <a name="authN-node"></a>Node.js

      • Passport - Simple, unobtrusive authentication for Node.js. A comprehensive set of strategies support authentication using a username and password, Facebook, Twitter, and more.
      • bell - Third-party authentication plugin for hapi. Ships with built-in support for various well-known sites and simple configuration object will support other OAuth 1.0a and OAuth 2.0 sites.
    • <a name="authN-python"></a>Python

      • Keystone - Provides authentication, authorization and service discovery mechanisms via HTTP primarily for use by projects in the OpenStack family.
      • Authomatic - Simple yet powerful authorization & authentication client library for Python web applications.
      • Python Social Auth - Easy to setup social authentication/registration mechanism with support for several frameworks and auth providers.
      • Raider - Web authentication testing framework, which treats the authentication process as finite state machines.
    • <a name="authN-ruby"></a>Ruby

      • Authlogic - Clean, simple, and unobtrusive Ruby authentication solution.
    • <a name="authN-flutter"></a>Flutter

      • Authgear SDK for Flutter - With Authgear SDK for Flutter, you can easily integrate authentication features into your Flutter apps. In most cases, it involves just a few lines of code to enable multiple authentication methods.