diff options
author | CoprDistGit <infra@openeuler.org> | 2023-06-20 05:11:20 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-06-20 05:11:20 +0000 |
commit | 21e478b8ce8903126792771d025f6a5c7aa55060 (patch) | |
tree | 653dfa8dd556d6b670b8ee2d161be908b1b0e79e | |
parent | 457fa26b3526c9aa954fbe29663dcb797e1f4c8e (diff) |
automatic import of python-Flask-Cognito-Extendedopeneuler20.03
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-flask-cognito-extended.spec | 307 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 309 insertions, 0 deletions
@@ -0,0 +1 @@ +/Flask-Cognito-Extended-0.2.7.tar.gz diff --git a/python-flask-cognito-extended.spec b/python-flask-cognito-extended.spec new file mode 100644 index 0000000..558900a --- /dev/null +++ b/python-flask-cognito-extended.spec @@ -0,0 +1,307 @@ +%global _empty_manifest_terminate_build 0 +Name: python-Flask-Cognito-Extended +Version: 0.2.7 +Release: 1 +Summary: Extended Cognito integration with Flask +License: MIT +URL: https://github.com/deejungx/flask-cognito-extended +Source0: https://mirrors.aliyun.com/pypi/web/packages/95/fb/46eed6ad252c5ac81bd40144495fe49f3a151b10d8e8afe95ee77712c82f/Flask-Cognito-Extended-0.2.7.tar.gz +BuildArch: noarch + +Requires: python3-Flask +Requires: python3-jose[cryptography] +Requires: python3-PyJWT +Requires: python3-requests + +%description +# Flask-Cognito-Extended + +[](https://travis-ci.com/deejungx/flask-cognito-extended) +[](https://codecov.io/gh/deejungx/flask-cognito-extended) +[](https://opensource.org/licenses/MIT) + +Flask-Cognito-Extended is a Flask implementation of Amazon Cognito. This extension helps quickly implement authentication and authorization solutions based on Amazon's Cognito. It contains helpful functions and properties to handle token based authentication flows. + +```bash +pip install Flask-Cognito-Extended +``` + +### Usage + +```python +from flask import Flask, jsonify +from flask_cognito_extended import ( + CognitoManager, login_handler, + callback_handler, get_jwt_identity +) + +app = Flask(__name__) + +# Setup the flask-cognito-extended extention +app.config['COGNITO_SCOPE'] = "aws.cognito.signin.user.admin+email+openid+profile" +app.config['COGNITO_REGION'] = "us-east-1" +app.config['COGNITO_USER_POOL_ID'] = "us-east-1_xxxxxxx" +app.config['COGNITO_CLIENT_ID'] = "xxxxxxxxxxxxxxxxxxxxxxxxxx" +app.config['COGNITO_CLIENT_SECRET'] = "xxxxxxxxxxxxxxxxxxxxxxxxxx" # optional +app.config['COGNITO_DOMAIN'] = "https://yourdomainhere.com" +app.config['COGNITO_REDIRECT_URI'] = "https://yourdomainhere/callback" + +cognito = CognitoManager(app) + +# Use @login_handler decorator on your login route +@app.route('/login', methods=['GET']) +@login_handler +def login(): + return jsonify(msg="User already signed in."), 200 + + +# Use @callback_handler decorator on your callback route +@app.route('/callback', methods=['GET']) +@callback_handler +def callback(): + # fetch the unique 'sub' property of the User + current_user = get_jwt_identity() + return jsonify(logged_in_as=current_user), 200 + + +if __name__ == '__main__': + app.run(debug=True) +``` + +### Development Setup + +Using pipenv +```bash +pipenv install --dev +``` +Using virtualenv +```bash +python3 -m venv env +source env/bin/activate +pip install -r requirements.txt +``` + +### Contributing + +1. Fork repo- https://github.com/deejungx/flask-cognito-extended/fork +2. Create your feature branch - `git checkout -b feature/foo` +3. Commit your changes - `git commit -am "Added foo"` +4. Push to the branch - `git push origin feature/foo` +5. Create a new pull request + + + + + +%package -n python3-Flask-Cognito-Extended +Summary: Extended Cognito integration with Flask +Provides: python-Flask-Cognito-Extended +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-Flask-Cognito-Extended +# Flask-Cognito-Extended + +[](https://travis-ci.com/deejungx/flask-cognito-extended) +[](https://codecov.io/gh/deejungx/flask-cognito-extended) +[](https://opensource.org/licenses/MIT) + +Flask-Cognito-Extended is a Flask implementation of Amazon Cognito. This extension helps quickly implement authentication and authorization solutions based on Amazon's Cognito. It contains helpful functions and properties to handle token based authentication flows. + +```bash +pip install Flask-Cognito-Extended +``` + +### Usage + +```python +from flask import Flask, jsonify +from flask_cognito_extended import ( + CognitoManager, login_handler, + callback_handler, get_jwt_identity +) + +app = Flask(__name__) + +# Setup the flask-cognito-extended extention +app.config['COGNITO_SCOPE'] = "aws.cognito.signin.user.admin+email+openid+profile" +app.config['COGNITO_REGION'] = "us-east-1" +app.config['COGNITO_USER_POOL_ID'] = "us-east-1_xxxxxxx" +app.config['COGNITO_CLIENT_ID'] = "xxxxxxxxxxxxxxxxxxxxxxxxxx" +app.config['COGNITO_CLIENT_SECRET'] = "xxxxxxxxxxxxxxxxxxxxxxxxxx" # optional +app.config['COGNITO_DOMAIN'] = "https://yourdomainhere.com" +app.config['COGNITO_REDIRECT_URI'] = "https://yourdomainhere/callback" + +cognito = CognitoManager(app) + +# Use @login_handler decorator on your login route +@app.route('/login', methods=['GET']) +@login_handler +def login(): + return jsonify(msg="User already signed in."), 200 + + +# Use @callback_handler decorator on your callback route +@app.route('/callback', methods=['GET']) +@callback_handler +def callback(): + # fetch the unique 'sub' property of the User + current_user = get_jwt_identity() + return jsonify(logged_in_as=current_user), 200 + + +if __name__ == '__main__': + app.run(debug=True) +``` + +### Development Setup + +Using pipenv +```bash +pipenv install --dev +``` +Using virtualenv +```bash +python3 -m venv env +source env/bin/activate +pip install -r requirements.txt +``` + +### Contributing + +1. Fork repo- https://github.com/deejungx/flask-cognito-extended/fork +2. Create your feature branch - `git checkout -b feature/foo` +3. Commit your changes - `git commit -am "Added foo"` +4. Push to the branch - `git push origin feature/foo` +5. Create a new pull request + + + + + +%package help +Summary: Development documents and examples for Flask-Cognito-Extended +Provides: python3-Flask-Cognito-Extended-doc +%description help +# Flask-Cognito-Extended + +[](https://travis-ci.com/deejungx/flask-cognito-extended) +[](https://codecov.io/gh/deejungx/flask-cognito-extended) +[](https://opensource.org/licenses/MIT) + +Flask-Cognito-Extended is a Flask implementation of Amazon Cognito. This extension helps quickly implement authentication and authorization solutions based on Amazon's Cognito. It contains helpful functions and properties to handle token based authentication flows. + +```bash +pip install Flask-Cognito-Extended +``` + +### Usage + +```python +from flask import Flask, jsonify +from flask_cognito_extended import ( + CognitoManager, login_handler, + callback_handler, get_jwt_identity +) + +app = Flask(__name__) + +# Setup the flask-cognito-extended extention +app.config['COGNITO_SCOPE'] = "aws.cognito.signin.user.admin+email+openid+profile" +app.config['COGNITO_REGION'] = "us-east-1" +app.config['COGNITO_USER_POOL_ID'] = "us-east-1_xxxxxxx" +app.config['COGNITO_CLIENT_ID'] = "xxxxxxxxxxxxxxxxxxxxxxxxxx" +app.config['COGNITO_CLIENT_SECRET'] = "xxxxxxxxxxxxxxxxxxxxxxxxxx" # optional +app.config['COGNITO_DOMAIN'] = "https://yourdomainhere.com" +app.config['COGNITO_REDIRECT_URI'] = "https://yourdomainhere/callback" + +cognito = CognitoManager(app) + +# Use @login_handler decorator on your login route +@app.route('/login', methods=['GET']) +@login_handler +def login(): + return jsonify(msg="User already signed in."), 200 + + +# Use @callback_handler decorator on your callback route +@app.route('/callback', methods=['GET']) +@callback_handler +def callback(): + # fetch the unique 'sub' property of the User + current_user = get_jwt_identity() + return jsonify(logged_in_as=current_user), 200 + + +if __name__ == '__main__': + app.run(debug=True) +``` + +### Development Setup + +Using pipenv +```bash +pipenv install --dev +``` +Using virtualenv +```bash +python3 -m venv env +source env/bin/activate +pip install -r requirements.txt +``` + +### Contributing + +1. Fork repo- https://github.com/deejungx/flask-cognito-extended/fork +2. Create your feature branch - `git checkout -b feature/foo` +3. Commit your changes - `git commit -am "Added foo"` +4. Push to the branch - `git push origin feature/foo` +5. Create a new pull request + + + + + +%prep +%autosetup -n Flask-Cognito-Extended-0.2.7 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-Flask-Cognito-Extended -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Jun 20 2023 Python_Bot <Python_Bot@openeuler.org> - 0.2.7-1 +- Package Spec generated @@ -0,0 +1 @@ +7d7a28ba20b10e0c1fb52d2db25bad57 Flask-Cognito-Extended-0.2.7.tar.gz |