# square_authentication
## about
authentication layer for my personal server.
## Installation
```shell
pip install square_authentication
```
## env
- python>=3.12.0
## changelog
### v4.4.0
- core
- add refresh_token_expiry_time in register_username_v0, login_username_v0.
### v4.3.0
- set allow_credentials=True.
### v4.2.1
- fix output format in validate_and_get_payload_from_token/v0.
- add db check refresh token validation in validate_and_get_payload_from_token/v0.
### v4.2.0
- add validate_and_get_payload_from_token/v0 in core.
### v4.1.0
- add get_text_hash/v0 in utils.
### v4.0.1
- bugfix in pydantic model import.
### v4.0.0
- /login_username/v0 is now POST method.
- new flag in /login_username/v0 assign_app_id_if_missing.
- bugfix: /get_user_details/v0 now only returns number of active sessions.
### v3.0.0
- added new endpoints
- /update_username/v0
- /delete_user/v0
- /update_password/v0
- move data in password related endpoints to request body from params.
- /register_username/v0 now takes in app_id as optional parameter to assign user to that app and create session for it.
- /generate_access_token/v0 now only needs refresh token (removed validation).
- /logout/v0 now only needs refresh token (removed validation).
- /update_user_app_ids/v0 now only updates ids for self (user). added access token as input param and removed user_id.
- /get_user_app_ids/v0 is now /get_user_details/v0 with access token as the only input param.
### v2.0.0
- authentication module needs to be used across applications so
- register_username: will not create sessions and therefore will not auto login.
- login: added validation if app is assigned to user before assigning it and added app_id in session row.
- logout: added app_id as new parameter and validation for that.
- generate_access_token: added app_id as new parameter and validation for that.
- added 2 new endpoints
- get user app ids: **access token validation pending**.
- change user app ids: **access token validation pending**.
- add versions for all endpoint paths.
- make it compatible with square_database_helper 2.x.
- username in database will always be lowercase.
- standardise output formats for all api.
### v1.0.0
- initial implementation.
## Feedback is appreciated. Thank you!
Raw data
{
"_id": null,
"home_page": "https://github.com/thepmsquare/square_authentication",
"name": "square-authentication",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": null,
"author": "thePmSquare",
"author_email": "thepmsquare@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/3c/07/69c4e1e572faeecbad6390ec279bbb8aaec02aa1e0d8ebeeafed66a27843/square_authentication-4.4.0.tar.gz",
"platform": null,
"description": "# square_authentication\n\n## about\n\nauthentication layer for my personal server.\n\n## Installation\n\n```shell\npip install square_authentication\n```\n\n## env\n\n- python>=3.12.0\n\n## changelog\n\n### v4.4.0\n\n- core\n - add refresh_token_expiry_time in register_username_v0, login_username_v0.\n\n### v4.3.0\n\n- set allow_credentials=True.\n\n### v4.2.1\n\n- fix output format in validate_and_get_payload_from_token/v0.\n- add db check refresh token validation in validate_and_get_payload_from_token/v0.\n\n### v4.2.0\n\n- add validate_and_get_payload_from_token/v0 in core.\n\n### v4.1.0\n\n- add get_text_hash/v0 in utils.\n\n### v4.0.1\n\n- bugfix in pydantic model import.\n\n### v4.0.0\n\n- /login_username/v0 is now POST method.\n- new flag in /login_username/v0 assign_app_id_if_missing.\n- bugfix: /get_user_details/v0 now only returns number of active sessions.\n\n### v3.0.0\n\n- added new endpoints\n - /update_username/v0\n - /delete_user/v0\n - /update_password/v0\n- move data in password related endpoints to request body from params.\n- /register_username/v0 now takes in app_id as optional parameter to assign user to that app and create session for it.\n- /generate_access_token/v0 now only needs refresh token (removed validation).\n- /logout/v0 now only needs refresh token (removed validation).\n- /update_user_app_ids/v0 now only updates ids for self (user). added access token as input param and removed user_id.\n- /get_user_app_ids/v0 is now /get_user_details/v0 with access token as the only input param.\n\n### v2.0.0\n\n- authentication module needs to be used across applications so\n - register_username: will not create sessions and therefore will not auto login.\n - login: added validation if app is assigned to user before assigning it and added app_id in session row.\n - logout: added app_id as new parameter and validation for that.\n - generate_access_token: added app_id as new parameter and validation for that.\n- added 2 new endpoints\n - get user app ids: **access token validation pending**.\n - change user app ids: **access token validation pending**.\n- add versions for all endpoint paths.\n- make it compatible with square_database_helper 2.x.\n- username in database will always be lowercase.\n- standardise output formats for all api.\n\n### v1.0.0\n\n- initial implementation.\n\n## Feedback is appreciated. Thank you!\n\n",
"bugtrack_url": null,
"license": null,
"summary": "authentication layer for my personal server.",
"version": "4.4.0",
"project_urls": {
"Homepage": "https://github.com/thepmsquare/square_authentication"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "447e4618506eaf797586a96ba2d6521f6d20315f7d55764de7b440f1bcfde476",
"md5": "eb32d09189d35bba2c5995d4f6c412b9",
"sha256": "c17c04fbdabf35c2e6d1f6d1a3c353c24ea912dde0d566dfc6799551c7cb995c"
},
"downloads": -1,
"filename": "square_authentication-4.4.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "eb32d09189d35bba2c5995d4f6c412b9",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 13542,
"upload_time": "2025-01-25T03:05:58",
"upload_time_iso_8601": "2025-01-25T03:05:58.462054Z",
"url": "https://files.pythonhosted.org/packages/44/7e/4618506eaf797586a96ba2d6521f6d20315f7d55764de7b440f1bcfde476/square_authentication-4.4.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "3c0769c4e1e572faeecbad6390ec279bbb8aaec02aa1e0d8ebeeafed66a27843",
"md5": "9c5ed72645733a1eb01050a424686c42",
"sha256": "e9091d78923c88f5a20b25b41cd4966c67aca8baed5b83f48f9639d393b5f600"
},
"downloads": -1,
"filename": "square_authentication-4.4.0.tar.gz",
"has_sig": false,
"md5_digest": "9c5ed72645733a1eb01050a424686c42",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 11490,
"upload_time": "2025-01-25T03:06:00",
"upload_time_iso_8601": "2025-01-25T03:06:00.113800Z",
"url": "https://files.pythonhosted.org/packages/3c/07/69c4e1e572faeecbad6390ec279bbb8aaec02aa1e0d8ebeeafed66a27843/square_authentication-4.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-25 03:06:00",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "thepmsquare",
"github_project": "square_authentication",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "square-authentication"
}