%global _empty_manifest_terminate_build 0 Name: python-flask-htpasswd Version: 0.5.0 Release: 1 Summary: Basic authentication support via htpasswd files in flask applications License: BSD New URL: http://github.com/carsongee/flask-htpasswd Source0: https://mirrors.nju.edu.cn/pypi/web/packages/12/23/a48ba432293903a161c674a19c791f84f9b98e6c7310d0190fb92555c655/flask-htpasswd-0.5.0.tar.gz BuildArch: noarch Requires: python3-Flask Requires: python3-passlib Requires: python3-pyjwt Requires: python3-tox %description Flask extension for providing basic digest and token authentication via apache htpasswd files. So largely it fits between `Flask-Security `_ which has additional dependencies and `Flask-BasicAuth `_ which only allows you to have one user (and also puts the plain text password into the configuration). Sample usage is to first create an htpasswd file with the `apache tool `_: htpasswd -c /path/to/.htpasswd my_username Additional users can be added, or have their passwords changed, by running: htpasswd /path/to/.htpasswd new_user htpasswd /path/to/.htpasswd user_I_want_to_change_passwords_for Then you just need to setup and configure your flask application, with something like: import flask from flask_htpasswd import HtPasswdAuth app = flask.Flask(__name__) app.config['FLASK_HTPASSWD_PATH'] = '/path/to/.htpasswd' app.config['FLASK_SECRET'] = 'Hey Hey Kids, secure me!' htpasswd = HtPasswdAuth(app) @app.route('/') @htpasswd.required def index(user): return 'Hello {user}'.format(user=user) app.run(debug=True) And that view should now prompt for a username and password (and accept tokens). If you would like to protect all of your views, that is easy too, just add a little config. By setting ``app.config['FLASK_AUTH_ALL']=True`` before initializing the extension, an ``@app.before_request`` is added that will require auth for all pages, and it will add the user as ``flask.g.user``. One last small feature, is that you can also set the authentication realm. The default is 'Login Required', but it can be set with ``app.config['FLASK_AUTH_REALM']`` before initialization. %package -n python3-flask-htpasswd Summary: Basic authentication support via htpasswd files in flask applications Provides: python-flask-htpasswd BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-flask-htpasswd Flask extension for providing basic digest and token authentication via apache htpasswd files. So largely it fits between `Flask-Security `_ which has additional dependencies and `Flask-BasicAuth `_ which only allows you to have one user (and also puts the plain text password into the configuration). Sample usage is to first create an htpasswd file with the `apache tool `_: htpasswd -c /path/to/.htpasswd my_username Additional users can be added, or have their passwords changed, by running: htpasswd /path/to/.htpasswd new_user htpasswd /path/to/.htpasswd user_I_want_to_change_passwords_for Then you just need to setup and configure your flask application, with something like: import flask from flask_htpasswd import HtPasswdAuth app = flask.Flask(__name__) app.config['FLASK_HTPASSWD_PATH'] = '/path/to/.htpasswd' app.config['FLASK_SECRET'] = 'Hey Hey Kids, secure me!' htpasswd = HtPasswdAuth(app) @app.route('/') @htpasswd.required def index(user): return 'Hello {user}'.format(user=user) app.run(debug=True) And that view should now prompt for a username and password (and accept tokens). If you would like to protect all of your views, that is easy too, just add a little config. By setting ``app.config['FLASK_AUTH_ALL']=True`` before initializing the extension, an ``@app.before_request`` is added that will require auth for all pages, and it will add the user as ``flask.g.user``. One last small feature, is that you can also set the authentication realm. The default is 'Login Required', but it can be set with ``app.config['FLASK_AUTH_REALM']`` before initialization. %package help Summary: Development documents and examples for flask-htpasswd Provides: python3-flask-htpasswd-doc %description help Flask extension for providing basic digest and token authentication via apache htpasswd files. So largely it fits between `Flask-Security `_ which has additional dependencies and `Flask-BasicAuth `_ which only allows you to have one user (and also puts the plain text password into the configuration). Sample usage is to first create an htpasswd file with the `apache tool `_: htpasswd -c /path/to/.htpasswd my_username Additional users can be added, or have their passwords changed, by running: htpasswd /path/to/.htpasswd new_user htpasswd /path/to/.htpasswd user_I_want_to_change_passwords_for Then you just need to setup and configure your flask application, with something like: import flask from flask_htpasswd import HtPasswdAuth app = flask.Flask(__name__) app.config['FLASK_HTPASSWD_PATH'] = '/path/to/.htpasswd' app.config['FLASK_SECRET'] = 'Hey Hey Kids, secure me!' htpasswd = HtPasswdAuth(app) @app.route('/') @htpasswd.required def index(user): return 'Hello {user}'.format(user=user) app.run(debug=True) And that view should now prompt for a username and password (and accept tokens). If you would like to protect all of your views, that is easy too, just add a little config. By setting ``app.config['FLASK_AUTH_ALL']=True`` before initializing the extension, an ``@app.before_request`` is added that will require auth for all pages, and it will add the user as ``flask.g.user``. One last small feature, is that you can also set the authentication realm. The default is 'Login Required', but it can be set with ``app.config['FLASK_AUTH_REALM']`` before initialization. %prep %autosetup -n flask-htpasswd-0.5.0 %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-htpasswd -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Mon May 29 2023 Python_Bot - 0.5.0-1 - Package Spec generated