fastapi-fastauth


Namefastapi-fastauth JSON
Version 0.0.2 PyPI version JSON
download
home_pagehttps://github.com/AstralMortem/fastauth
SummaryReady-to-use customizable solution for FastAPI with Authentication, Authorization(RBAC) and OAuth2 support
upload_time2024-12-19 10:30:06
maintainerNone
docs_urlNone
authorVladyslav Chaliuk
requires_python<4.0,>=3.10
licenseMIT
keywords fastapi authentication authorization oauth2 rbac pydantic jwt cookie orm
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # FastAuth
<p align="center">
  <img src="https://raw.githubusercontent.com/AstralMortem/fastauth/master/logo.png?sanitize=true" alt="FastAuth">
</p>

<p align="center">
    <em>Ready-to-use customizable solution for FastAPI with Authentication, Authorization(RBAC) and OAuth2 support</em>
</p>

---
## About

[![CI](https://github.com/AstralMortem/fastauth/actions/workflows/ci.yaml/badge.svg)](https://github.com/AstralMortem/fastauth/actions/workflows/ci.yaml)
[![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/AstralMortem/fastauth/docs.yaml?label=Docs)](https://astralmortem.github.io/fastauth/)
[![codecov](https://codecov.io/github/AstralMortem/fastauth/graph/badge.svg?token=SI6ND9SIPU)](https://codecov.io/github/AstralMortem/fastauth)
[![PyPI - Version](https://img.shields.io/pypi/v/fastapi-fastauth)](https://pypi.org/project/fastapi-fastauth/)
[![PyPI - Downloads](https://img.shields.io/pypi/dm/fastapi-fastauth)](https://pypi.org/project/fastapi-fastauth/)


Here’s a ready-to-use, customizable solution for FastAPI with Authentication, Authorization (RBAC), and OAuth2 support. 
This solution provides token based authentication(JWT, Redis, DB), role-based access control, and OAuth2 integration.
Highly inspired by [FastAPI Users](https://github.com/fastapi-users/fastapi-users) and [AuthX](https://github.com/yezz123/authx/tree/main):

* **Documentation**: <https://astralmortem.github.io/fastauth/>
* **Source Code**: <https://github.com/AstralMortem/fastauth>
---

## Features

* [x] Authentication Support:
    * [x] Access and Refresh Token Dependencies
    * [x] Different Token Strategy(JWT, Redis, Session)
    * [x] Different Token locations(Header, Cookie, Query, etc.)
* [x] Authorization Support:
    * [x] "Role and Permission required" Dependency
    * [x] OAuth2 support
* [x] User Management:
    * [x] User Model protocol
    * [x] Service-Repository pattern for flexible customization
    * [x] Popular ORM support:
        * [x] SQLAlchemy support
        * [ ] Beanie
        * [ ] Tortoise ORM


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/AstralMortem/fastauth",
    "name": "fastapi-fastauth",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.10",
    "maintainer_email": null,
    "keywords": "FastAPI, Authentication, Authorization, OAuth2, RBAC, Pydantic, JWT, Cookie, ORM",
    "author": "Vladyslav Chaliuk",
    "author_email": "chaliukvladyslav@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/8b/64/3be1018491441dd113dfbe8baaa1c26718bbc54662e433ad52c16b56ff20/fastapi_fastauth-0.0.2.tar.gz",
    "platform": null,
    "description": "# FastAuth\n<p align=\"center\">\n  <img src=\"https://raw.githubusercontent.com/AstralMortem/fastauth/master/logo.png?sanitize=true\" alt=\"FastAuth\">\n</p>\n\n<p align=\"center\">\n    <em>Ready-to-use customizable solution for FastAPI with Authentication, Authorization(RBAC) and OAuth2 support</em>\n</p>\n\n---\n## About\n\n[![CI](https://github.com/AstralMortem/fastauth/actions/workflows/ci.yaml/badge.svg)](https://github.com/AstralMortem/fastauth/actions/workflows/ci.yaml)\n[![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/AstralMortem/fastauth/docs.yaml?label=Docs)](https://astralmortem.github.io/fastauth/)\n[![codecov](https://codecov.io/github/AstralMortem/fastauth/graph/badge.svg?token=SI6ND9SIPU)](https://codecov.io/github/AstralMortem/fastauth)\n[![PyPI - Version](https://img.shields.io/pypi/v/fastapi-fastauth)](https://pypi.org/project/fastapi-fastauth/)\n[![PyPI - Downloads](https://img.shields.io/pypi/dm/fastapi-fastauth)](https://pypi.org/project/fastapi-fastauth/)\n\n\nHere\u2019s a ready-to-use, customizable solution for FastAPI with Authentication, Authorization (RBAC), and OAuth2 support. \nThis solution provides token based authentication(JWT, Redis, DB), role-based access control, and OAuth2 integration.\nHighly inspired by [FastAPI Users](https://github.com/fastapi-users/fastapi-users) and [AuthX](https://github.com/yezz123/authx/tree/main):\n\n* **Documentation**: <https://astralmortem.github.io/fastauth/>\n* **Source Code**: <https://github.com/AstralMortem/fastauth>\n---\n\n## Features\n\n* [x] Authentication Support:\n    * [x] Access and Refresh Token Dependencies\n    * [x] Different Token Strategy(JWT, Redis, Session)\n    * [x] Different Token locations(Header, Cookie, Query, etc.)\n* [x] Authorization Support:\n    * [x] \"Role and Permission required\" Dependency\n    * [x] OAuth2 support\n* [x] User Management:\n    * [x] User Model protocol\n    * [x] Service-Repository pattern for flexible customization\n    * [x] Popular ORM support:\n        * [x] SQLAlchemy support\n        * [ ] Beanie\n        * [ ] Tortoise ORM\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Ready-to-use customizable solution for FastAPI with Authentication, Authorization(RBAC) and OAuth2 support",
    "version": "0.0.2",
    "project_urls": {
        "Documentation": "https://astralmortem.github.io/fastauth/",
        "Homepage": "https://github.com/AstralMortem/fastauth",
        "Repository": "https://github.com/AstralMortem/fastauth"
    },
    "split_keywords": [
        "fastapi",
        " authentication",
        " authorization",
        " oauth2",
        " rbac",
        " pydantic",
        " jwt",
        " cookie",
        " orm"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "01e4627e64601091bb3cfeccb56e0adac10594f0ac868cebe0a2115c819965d6",
                "md5": "bbed6af6035fe0eaaa767ec5aaab6cb2",
                "sha256": "29c94728cfa8a4cea517459fdbca01e6f4a1822bc817dbf8ff35939c87fa9f7d"
            },
            "downloads": -1,
            "filename": "fastapi_fastauth-0.0.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "bbed6af6035fe0eaaa767ec5aaab6cb2",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.10",
            "size": 24275,
            "upload_time": "2024-12-19T10:30:04",
            "upload_time_iso_8601": "2024-12-19T10:30:04.064835Z",
            "url": "https://files.pythonhosted.org/packages/01/e4/627e64601091bb3cfeccb56e0adac10594f0ac868cebe0a2115c819965d6/fastapi_fastauth-0.0.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8b643be1018491441dd113dfbe8baaa1c26718bbc54662e433ad52c16b56ff20",
                "md5": "3e5cd66bf6aec925c67261d7a5343a44",
                "sha256": "0b14b44c00575a8c7f16f20061ce12e4cd2e3f9e3ac3265dbf1db683b327f7b8"
            },
            "downloads": -1,
            "filename": "fastapi_fastauth-0.0.2.tar.gz",
            "has_sig": false,
            "md5_digest": "3e5cd66bf6aec925c67261d7a5343a44",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.10",
            "size": 16085,
            "upload_time": "2024-12-19T10:30:06",
            "upload_time_iso_8601": "2024-12-19T10:30:06.518400Z",
            "url": "https://files.pythonhosted.org/packages/8b/64/3be1018491441dd113dfbe8baaa1c26718bbc54662e433ad52c16b56ff20/fastapi_fastauth-0.0.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-19 10:30:06",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "AstralMortem",
    "github_project": "fastauth",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "fastapi-fastauth"
}
        
Elapsed time: 0.40831s