{ "info": { "author": "Mischa Spiegelmock", "author_email": "mischa@mvstg.biz", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP :: Dynamic Content", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "Flask-Cognito\n-------------\n\nAuthenticate users based on AWS Cognito JWT.\n\n\n# Initialization\n```python3\n# configuration\napp.config.extend({\n 'COGNITO_REGION': 'eu-central-1',\n 'COGNITO_USERPOOL_ID': 'eu-central-1c3fea2',\n\n # optional\n 'COGNITO_APP_CLIENT_ID': 'abcdef123456', # client ID you wish to verify user is authenticated against\n 'COGNITO_CHECK_TOKEN_EXPIRATION': False, # disable token expiration checking for testing purposes\n 'COGNITO_JWT_HEADER_NAME': 'X-MyApp-Authorization',\n 'COGNITO_JWT_HEADER_PREFIX': 'Bearer',\n})\n\n\n# initialize extension\nfrom flask_cognito import CognitoAuth\ncogauth = CognitoAuth(app)\n\n@cogauth.identity_handler\ndef lookup_cognito_user(payload):\n \"\"\"Look up user in our database from Cognito JWT payload.\"\"\"\n return User.query.filter(User.cognito_username == payload['username']).one_or_none()\n```\n\n# Check Authentication\n```python3\nfrom flask_cognito import cognito_auth_required, current_user, current_cognito_jwt\n\n@route('/api/private')\n@cognito_auth_required\ndef api_private():\n # user must have valid cognito access or ID token in header\n # (accessToken is recommended - not as much personal information contained inside as with idToken)\n return jsonify({\n 'cognito_username': current_cognito_jwt['username'], # from cognito pool\n 'user_id': current_user.id, # from your database\n })\n```\n\n\n### Acknowledgements\n* Uses [cognitojwt](https://github.com/borisrozumnuk/cognitojwt) at its core.\n* Based on [flask-jwt](https://github.com/mattupstate/flask-jwt/).", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/jetbridge/flask_cognito", "keywords": "flask aws cognito jwt authentication auth serverless", "license": "ABRMS", "maintainer": "", "maintainer_email": "", "name": "Flask-Cognito", "package_url": "https://pypi.org/project/Flask-Cognito/", "platform": "any", "project_url": "https://pypi.org/project/Flask-Cognito/", "project_urls": { "Homepage": "https://github.com/jetbridge/flask_cognito" }, "release_url": "https://pypi.org/project/Flask-Cognito/1.14/", "requires_dist": null, "requires_python": "", "summary": "Authenticate users to Cognito user pool via JWT.", "version": "1.14" }, "last_serial": 5914501, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "488244a9768569c1190e166d859d55dd", "sha256": "182f9d239be6ca3cfb2ff564388c202967a4ed000657b189d739411ca90e8f22" }, "downloads": -1, "filename": "Flask-Cognito-1.0.tar.gz", "has_sig": false, "md5_digest": "488244a9768569c1190e166d859d55dd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3559, "upload_time": "2019-01-06T13:13:41", "url": "https://files.pythonhosted.org/packages/6d/6c/0cf38dd4d0559196a0dc72fb2ffd76cecbc0c37c550c39f7bd20b41fb336/Flask-Cognito-1.0.tar.gz" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "2f0dab052c7d1d23ce194d610188972a", "sha256": "466e0ebd44674ab383934605d674ff203a412d6bece69e561380be68dcede84a" }, "downloads": -1, "filename": "Flask-Cognito-1.1.tar.gz", "has_sig": false, "md5_digest": "2f0dab052c7d1d23ce194d610188972a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3836, "upload_time": "2019-01-06T14:27:10", "url": "https://files.pythonhosted.org/packages/3f/a3/16a9eefd7a301dd3f82dbea6e05450294d1f473113c47e96c58963e79b16/Flask-Cognito-1.1.tar.gz" } ], "1.10": [ { "comment_text": "", "digests": { "md5": "15b693ed67cd85e2d9b693c0e66f9b84", "sha256": "856ffcd9e2fc3bd5955b54f14110a1e16cc238798a42848b740da28785d21840" }, "downloads": -1, "filename": "Flask-Cognito-1.10.tar.gz", "has_sig": false, "md5_digest": "15b693ed67cd85e2d9b693c0e66f9b84", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3934, "upload_time": "2019-02-17T21:12:08", "url": "https://files.pythonhosted.org/packages/c8/64/59ddbe1479eb40c1ce38e576981febb097ac8bc1678d007b2b079327c29f/Flask-Cognito-1.10.tar.gz" } ], "1.11": [ { "comment_text": "", "digests": { "md5": "429d8ef0d1342e7dde3ecca8da868a00", "sha256": "683be6332aa7f612f53dab142a310f3c8a2dada68679249ad21f07cfed542bad" }, "downloads": -1, "filename": "Flask-Cognito-1.11.tar.gz", "has_sig": false, "md5_digest": "429d8ef0d1342e7dde3ecca8da868a00", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3910, "upload_time": "2019-04-29T12:32:37", "url": "https://files.pythonhosted.org/packages/45/06/5bfb8713ff5ffdbc6cb9965835512597179c485563aa1406af216c65b4eb/Flask-Cognito-1.11.tar.gz" } ], "1.12": [ { "comment_text": "", "digests": { "md5": "c5a55a9be6cde3c16c91409209d29fcc", "sha256": "3dfbbc372e4f223363789aa97fe1514997fcdd57e006a0989015b2cb3d8bbb90" }, "downloads": -1, "filename": "Flask-Cognito-1.12.tar.gz", "has_sig": false, "md5_digest": "c5a55a9be6cde3c16c91409209d29fcc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3923, "upload_time": "2019-04-29T12:44:54", "url": "https://files.pythonhosted.org/packages/f6/8d/dca09ea734b0f2435b597cd2ed27ce57ce4a39a439d457b34bdc30df7219/Flask-Cognito-1.12.tar.gz" } ], "1.13": [ { "comment_text": "", "digests": { "md5": "ff1a22f443be70512091440734002a72", "sha256": "cb4097957243404d13c372f2fbd4380dcc4477dedb03a38daf912ce21b56e5b5" }, "downloads": -1, "filename": "Flask-Cognito-1.13.tar.gz", "has_sig": false, "md5_digest": "ff1a22f443be70512091440734002a72", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3939, "upload_time": "2019-04-29T12:59:39", "url": "https://files.pythonhosted.org/packages/23/be/f0aa3b7c41ca5b0181d6d2e1b8b537f83b4252f52f4b89ffdef205411cf9/Flask-Cognito-1.13.tar.gz" } ], "1.14": [ { "comment_text": "", "digests": { "md5": "9f7d99746d27ef3d42bc8eaa0ee3ca1c", "sha256": "b141fa9b350a09526ddec44adf5ea484f5dc0017f06d016c53326fcf8ff1e3a0" }, "downloads": -1, "filename": "Flask-Cognito-1.14.tar.gz", "has_sig": false, "md5_digest": "9f7d99746d27ef3d42bc8eaa0ee3ca1c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3995, "upload_time": "2019-10-01T19:58:01", "url": "https://files.pythonhosted.org/packages/a7/76/419cf99497afa64d44dc556cf435a4d070fefe316a804c04704b358a3482/Flask-Cognito-1.14.tar.gz" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "1df7e4dd2bb8b3c38d01a9ceb72b4873", "sha256": "42329e4b991112594187374c22de290260bc20f7deede03bdbadca555bdddce2" }, "downloads": -1, "filename": "Flask-Cognito-1.2.tar.gz", "has_sig": false, "md5_digest": "1df7e4dd2bb8b3c38d01a9ceb72b4873", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3822, "upload_time": "2019-01-06T14:32:54", "url": "https://files.pythonhosted.org/packages/92/6c/9b2a1f6b3893057abea2af162c949d4f60f8f2678532cb666820f2f6f3e6/Flask-Cognito-1.2.tar.gz" } ], "1.3": [ { "comment_text": "", "digests": { "md5": "4a27eceb1f9c716b5cebb49061338f37", "sha256": "90448fbb3f9ffc5598f62e796e9b1a9d200eb9e545a480abe67d46b18c3143fd" }, "downloads": -1, "filename": "Flask-Cognito-1.3.tar.gz", "has_sig": false, "md5_digest": "4a27eceb1f9c716b5cebb49061338f37", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3830, "upload_time": "2019-01-06T15:49:39", "url": "https://files.pythonhosted.org/packages/b7/ec/64e1a896158b32127262f04b97d07bfcb8473ea63fd70e512bfc49e2e56d/Flask-Cognito-1.3.tar.gz" } ], "1.4": [ { "comment_text": "", "digests": { "md5": "b6b4806c5a0b186a7ade436cef977897", "sha256": "c24dce822292d9cda150616388fd1ab862d027f5543a17e9d6ef6c21d79fe211" }, "downloads": -1, "filename": "Flask-Cognito-1.4.tar.gz", "has_sig": false, "md5_digest": "b6b4806c5a0b186a7ade436cef977897", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3848, "upload_time": "2019-01-06T17:08:56", "url": "https://files.pythonhosted.org/packages/70/78/c6548db83f12163bc85474aea4bb19582a592924a77d743ac7be81ac35be/Flask-Cognito-1.4.tar.gz" } ], "1.5": [ { "comment_text": "", "digests": { "md5": "ce3d7c3ff6ed772cc7ee92e10b13146d", "sha256": "4f726e643864aeec19f42a6acdf174f1bdd1eeee5e7dc48fc00d50760022e6d0" }, "downloads": -1, "filename": "Flask-Cognito-1.5.tar.gz", "has_sig": false, "md5_digest": "ce3d7c3ff6ed772cc7ee92e10b13146d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3860, "upload_time": "2019-01-07T16:24:40", "url": "https://files.pythonhosted.org/packages/a6/76/f40fbf0d6772875dc52b6df2b350d18f80db76a7e863d39c4e58b419ea60/Flask-Cognito-1.5.tar.gz" } ], "1.6": [ { "comment_text": "", "digests": { "md5": "9e26861f468d987a043345cb1903a2bf", "sha256": "9e04d37d184ffbd960512cbd286d2e0dcd2f4ab99f579de3150394c8948a0dce" }, "downloads": -1, "filename": "Flask-Cognito-1.6.tar.gz", "has_sig": false, "md5_digest": "9e26861f468d987a043345cb1903a2bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3866, "upload_time": "2019-01-07T17:35:41", "url": "https://files.pythonhosted.org/packages/b1/b8/d250fa398a5d03b86f1b6db455c17e7598abbe1209a89992e1914e703459/Flask-Cognito-1.6.tar.gz" } ], "1.7": [ { "comment_text": "", "digests": { "md5": "37ac229a6667282cf4a2e70bb612b26c", "sha256": "fe90429b57f84a6ef38910df8544008cdd6a802f9ef5b38e1eb57ab59bd4a04e" }, "downloads": -1, "filename": "Flask-Cognito-1.7.tar.gz", "has_sig": false, "md5_digest": "37ac229a6667282cf4a2e70bb612b26c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3921, "upload_time": "2019-01-08T12:03:26", "url": "https://files.pythonhosted.org/packages/f3/86/dea2e057d456a123ad4ffd52207cc3232ede30485daad7f79c32d947a8ad/Flask-Cognito-1.7.tar.gz" } ], "1.8": [ { "comment_text": "", "digests": { "md5": "0500ec4f1990c799aa6d586f25751d93", "sha256": "2d1ee85b0d3a0751971479f940a422d4f2253630030e4450b3206915cea3ef87" }, "downloads": -1, "filename": "Flask-Cognito-1.8.tar.gz", "has_sig": false, "md5_digest": "0500ec4f1990c799aa6d586f25751d93", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3903, "upload_time": "2019-01-08T12:35:07", "url": "https://files.pythonhosted.org/packages/ef/82/ea41758db3de05d9d4a2994bfb4349b53d9b800a8c1a3fca517070546380/Flask-Cognito-1.8.tar.gz" } ], "1.9": [ { "comment_text": "", "digests": { "md5": "f01224e571f756f6b2df66eca33a38f3", "sha256": "dcc60d35d6ec63ff7fc7cf5102ef59307a42a0871555204d1016ff28e077940c" }, "downloads": -1, "filename": "Flask-Cognito-1.9.tar.gz", "has_sig": false, "md5_digest": "f01224e571f756f6b2df66eca33a38f3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3911, "upload_time": "2019-01-08T12:42:52", "url": "https://files.pythonhosted.org/packages/77/b2/b04d33db4b854faf06441b42f700693ee8aa66b6c2bde3004ac829b0b84a/Flask-Cognito-1.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9f7d99746d27ef3d42bc8eaa0ee3ca1c", "sha256": "b141fa9b350a09526ddec44adf5ea484f5dc0017f06d016c53326fcf8ff1e3a0" }, "downloads": -1, "filename": "Flask-Cognito-1.14.tar.gz", "has_sig": false, "md5_digest": "9f7d99746d27ef3d42bc8eaa0ee3ca1c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3995, "upload_time": "2019-10-01T19:58:01", "url": "https://files.pythonhosted.org/packages/a7/76/419cf99497afa64d44dc556cf435a4d070fefe316a804c04704b358a3482/Flask-Cognito-1.14.tar.gz" } ] }