Giter Site home page Giter Site logo

adonis2014 / mt-auth Goto Github PK

View Code? Open in Web Editor NEW

This project forked from publicdevop2019/mt-auth

0.0 0.0 0.0 5.95 MB

Multi-tenant, RBAC for application, api and user

Home Page: https://www.letsauth.cloud

License: Apache License 2.0

Shell 0.46% JavaScript 0.07% Java 72.78% Lua 0.04% TypeScript 17.85% CSS 0.32% HTML 8.37% FreeMarker 0.02% Dockerfile 0.08%

mt-auth's Introduction

MT-AUTH

MT-AUTH是一款多租户权限管理系统,包含用户管理与API路由、共享、鉴权、缓存、跨域、安全防护等功能

应用场景

对于个人开发者,您可以:

  • 无需从零构建用户相关功能,例如:用户注册,忘记密码找回等
  • 轻松使用现成的权限管理模式(RBAC),更加专注于业务需求
  • 快速与您的应用集成单点登录(SSO)
  • 一站式管理应用,API,用户
  • 享受API级别的鉴权,缓存,跨域,限流,安全控制
  • 通过API市场分享或订阅其它API

对于企业,如果您:

  • 项目之间用户通用,需要统一管理
  • 项目由不同的团队管理,团队相对独立
  • 用户在不同项目中有不同权限
  • 统一管理项目、应用与API
  • 项目之间需要共享API

云版本

示意图

arthitecture

项目特点

  • 事件驱动
  • 基于角色的权限控制(RBAC)
  • 多租户
  • 不对称密匙
  • OAuth2
  • 站内信,短信,邮件通知
  • 用户密码重置, 注册码注册
  • 已签发JWT回收
  • API路由、缓存、跨域CORS、CSRF防护、压缩、隐藏系统错误信息
  • API记录与分析
  • 多因素认证(MFA)

技术栈

模块 概述 技术栈
mt-access 核心模块 Spring Boot, JWT, OAuth2, Redis, RabbitMQ, Spring Cloud Eureka
mt-proxy 网关 Spring Boot, Spring Cloud Gateway, Redis, RabbitMQ
mt-ui 前端 Angular
mt-common 通用模块 Spring Boot
mt-integration-test 测试模块 Spring Boot Test

演示项目

环境信息

  • 操作系统: Ubuntu 18.04 64bit
  • Java: java version "11.0.14" 2022-01-18 LTS
  • JDK: hirokimatsumoto/alpine-openjdk-11
  • Maven: maven:3.6.3-jdk-11

mt-auth's People

Contributors

publicdevop2019 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.