summaryrefslogtreecommitdiff
path: root/python-Flask-pyoidc.spec
diff options
context:
space:
mode:
Diffstat (limited to 'python-Flask-pyoidc.spec')
-rw-r--r--python-Flask-pyoidc.spec210
1 files changed, 210 insertions, 0 deletions
diff --git a/python-Flask-pyoidc.spec b/python-Flask-pyoidc.spec
new file mode 100644
index 0000000..a742560
--- /dev/null
+++ b/python-Flask-pyoidc.spec
@@ -0,0 +1,210 @@
+%global _empty_manifest_terminate_build 0
+Name: python-Flask-pyoidc
+Version: 3.12.1
+Release: 1
+Summary: Flask extension for OpenID Connect authentication.
+License: Apache 2.0
+URL: https://github.com/zamzterz/flask-pyoidc
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/08/d2/dd1a6cd928c46ebcb7dc0b3a1698360bc5821c5314b943cc86f04a7a6ee2/Flask-pyoidc-3.12.1.tar.gz
+BuildArch: noarch
+
+Requires: python3-oic
+Requires: python3-Flask
+Requires: python3-requests
+Requires: python3-importlib-resources
+
+%description
+# Flask-pyoidc
+
+[![PyPI](https://img.shields.io/pypi/v/flask-pyoidc.svg)](https://pypi.python.org/pypi/Flask-pyoidc)
+[![codecov.io](https://codecov.io/github/zamzterz/Flask-pyoidc/coverage.svg?branch=master)](https://codecov.io/github/its-dirg/Flask-pyoidc?branch=master)
+[![Build Status](https://travis-ci.org/zamzterz/Flask-pyoidc.svg?branch=master)](https://travis-ci.org/zamzterz/Flask-pyoidc)
+
+This Flask extension provides simple OpenID Connect authentication, backed by [pyoidc](https://github.com/rohe/pyoidc).
+
+["Authorization Code Flow"](http://openid.net/specs/openid-connect-core-1_0.html#CodeFlowAuth),
+["Implicit Flow"](https://openid.net/specs/openid-connect-core-1_0.html#ImplicitFlowAuth),
+["Hybrid Flow"](https://openid.net/specs/openid-connect-core-1_0.html#HybridFlowAuth),
+["Client Credentials Flow"](https://oauth.net/2/grant-types/client-credentials/) are supported.
+
+## Getting started
+Read [the documentation](https://flask-pyoidc.readthedocs.io/) or have a look at the
+[example Flask app](example/app.py) for a full example of how to use this extension.
+
+Below is a basic example of how to get started:
+```python
+app = Flask(__name__)
+app.config.update(
+ OIDC_REDIRECT_URI = 'https://example.com/redirect_uri',
+ SECRET_KEY = ...
+)
+
+# Static Client Registration
+client_metadata = ClientMetadata(
+ client_id='client1',
+ client_secret='secret1',
+ post_logout_redirect_uris=['https://example.com/logout'])
+
+
+provider_config = ProviderConfiguration(issuer='<issuer URL of provider>',
+ client_metadata=client_metadata)
+
+auth = OIDCAuthentication({'default': provider_config}, app)
+
+@app.route('/')
+@auth.oidc_auth('default') # endpoint will require login
+def index():
+ user_session = UserSession(flask.session)
+ return jsonify(access_token=user_session.access_token,
+ id_token=user_session.id_token,
+ userinfo=user_session.userinfo)
+```
+
+
+%package -n python3-Flask-pyoidc
+Summary: Flask extension for OpenID Connect authentication.
+Provides: python-Flask-pyoidc
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+%description -n python3-Flask-pyoidc
+# Flask-pyoidc
+
+[![PyPI](https://img.shields.io/pypi/v/flask-pyoidc.svg)](https://pypi.python.org/pypi/Flask-pyoidc)
+[![codecov.io](https://codecov.io/github/zamzterz/Flask-pyoidc/coverage.svg?branch=master)](https://codecov.io/github/its-dirg/Flask-pyoidc?branch=master)
+[![Build Status](https://travis-ci.org/zamzterz/Flask-pyoidc.svg?branch=master)](https://travis-ci.org/zamzterz/Flask-pyoidc)
+
+This Flask extension provides simple OpenID Connect authentication, backed by [pyoidc](https://github.com/rohe/pyoidc).
+
+["Authorization Code Flow"](http://openid.net/specs/openid-connect-core-1_0.html#CodeFlowAuth),
+["Implicit Flow"](https://openid.net/specs/openid-connect-core-1_0.html#ImplicitFlowAuth),
+["Hybrid Flow"](https://openid.net/specs/openid-connect-core-1_0.html#HybridFlowAuth),
+["Client Credentials Flow"](https://oauth.net/2/grant-types/client-credentials/) are supported.
+
+## Getting started
+Read [the documentation](https://flask-pyoidc.readthedocs.io/) or have a look at the
+[example Flask app](example/app.py) for a full example of how to use this extension.
+
+Below is a basic example of how to get started:
+```python
+app = Flask(__name__)
+app.config.update(
+ OIDC_REDIRECT_URI = 'https://example.com/redirect_uri',
+ SECRET_KEY = ...
+)
+
+# Static Client Registration
+client_metadata = ClientMetadata(
+ client_id='client1',
+ client_secret='secret1',
+ post_logout_redirect_uris=['https://example.com/logout'])
+
+
+provider_config = ProviderConfiguration(issuer='<issuer URL of provider>',
+ client_metadata=client_metadata)
+
+auth = OIDCAuthentication({'default': provider_config}, app)
+
+@app.route('/')
+@auth.oidc_auth('default') # endpoint will require login
+def index():
+ user_session = UserSession(flask.session)
+ return jsonify(access_token=user_session.access_token,
+ id_token=user_session.id_token,
+ userinfo=user_session.userinfo)
+```
+
+
+%package help
+Summary: Development documents and examples for Flask-pyoidc
+Provides: python3-Flask-pyoidc-doc
+%description help
+# Flask-pyoidc
+
+[![PyPI](https://img.shields.io/pypi/v/flask-pyoidc.svg)](https://pypi.python.org/pypi/Flask-pyoidc)
+[![codecov.io](https://codecov.io/github/zamzterz/Flask-pyoidc/coverage.svg?branch=master)](https://codecov.io/github/its-dirg/Flask-pyoidc?branch=master)
+[![Build Status](https://travis-ci.org/zamzterz/Flask-pyoidc.svg?branch=master)](https://travis-ci.org/zamzterz/Flask-pyoidc)
+
+This Flask extension provides simple OpenID Connect authentication, backed by [pyoidc](https://github.com/rohe/pyoidc).
+
+["Authorization Code Flow"](http://openid.net/specs/openid-connect-core-1_0.html#CodeFlowAuth),
+["Implicit Flow"](https://openid.net/specs/openid-connect-core-1_0.html#ImplicitFlowAuth),
+["Hybrid Flow"](https://openid.net/specs/openid-connect-core-1_0.html#HybridFlowAuth),
+["Client Credentials Flow"](https://oauth.net/2/grant-types/client-credentials/) are supported.
+
+## Getting started
+Read [the documentation](https://flask-pyoidc.readthedocs.io/) or have a look at the
+[example Flask app](example/app.py) for a full example of how to use this extension.
+
+Below is a basic example of how to get started:
+```python
+app = Flask(__name__)
+app.config.update(
+ OIDC_REDIRECT_URI = 'https://example.com/redirect_uri',
+ SECRET_KEY = ...
+)
+
+# Static Client Registration
+client_metadata = ClientMetadata(
+ client_id='client1',
+ client_secret='secret1',
+ post_logout_redirect_uris=['https://example.com/logout'])
+
+
+provider_config = ProviderConfiguration(issuer='<issuer URL of provider>',
+ client_metadata=client_metadata)
+
+auth = OIDCAuthentication({'default': provider_config}, app)
+
+@app.route('/')
+@auth.oidc_auth('default') # endpoint will require login
+def index():
+ user_session = UserSession(flask.session)
+ return jsonify(access_token=user_session.access_token,
+ id_token=user_session.id_token,
+ userinfo=user_session.userinfo)
+```
+
+
+%prep
+%autosetup -n Flask-pyoidc-3.12.1
+
+%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-pyoidc -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Sun Feb 26 2023 Python_Bot <Python_Bot@openeuler.org> - 3.12.1-1
+- Package Spec generated