summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-04-12 06:54:31 +0000
committerCoprDistGit <infra@openeuler.org>2023-04-12 06:54:31 +0000
commit4220bda4a8dddd8ea40a45a9194133e798123268 (patch)
tree4045dbb88148291c434d8af6355ff7c5c1eb7953
parent3f3e9ebbbdc13e883991c6099bc668a22ce45d5a (diff)
automatic import of python-fab-oidcopeneuler20.03
-rw-r--r--.gitignore1
-rw-r--r--python-fab-oidc.spec315
-rw-r--r--sources1
3 files changed, 317 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..1a7c272 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/fab_oidc-0.0.9.tar.gz
diff --git a/python-fab-oidc.spec b/python-fab-oidc.spec
new file mode 100644
index 0000000..d6f8871
--- /dev/null
+++ b/python-fab-oidc.spec
@@ -0,0 +1,315 @@
+%global _empty_manifest_terminate_build 0
+Name: python-fab-oidc
+Version: 0.0.9
+Release: 1
+Summary: Flask-AppBuilder SecurityManager for OpenIDConnect
+License: MIT
+URL: https://github.com/ministryofjustice/fab-oidc/
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/a4/19/0ff0bb46a69fcc0773be2d370dee459bf5c880929236e2c6eb23e6dc1966/fab_oidc-0.0.9.tar.gz
+BuildArch: noarch
+
+Requires: python3-Flask-AppBuilder
+Requires: python3-Flask-OIDC
+Requires: python3-Flask-Admin
+
+%description
+# Flask-AppBuilder SecurityManager for OpenIDConnect
+
+Wrapper for [flask_oidc] that exposes a `SecurityManager` for use with any Flask-AppBuilder app.
+
+It will allow your users to login with OpenIDConnect providers such as Auth0, Okta or Google Apps.
+
+This is roughly inspired by the code in this [stackoverflow](https://stackoverflow.com/a/47787279/44252) answer. (MIT Licenced © [thijsfranck](https://stackoverflow.com/users/8905583/thijsfranck))
+
+## Usage
+
+### Generic
+
+Just override the default security manager in your Flask Appbuilder app.
+
+```python
+from fab_oidc.security import OIDCSecurityManager
+
+appbuilder = AppBuilder(app, db.session, security_manager_class=OIDCSecurityManager)
+```
+
+### [Airflow]
+Airflow provides a hook in the `webserver_config.py` file where you can specify a security manager class.
+In `webserver_config.py` import the OIDCSecurityManager and set
+```python
+from fab_oidc.security import AirflowOIDCSecurityManager
+...
+SECURITY_MANAGER_CLASS = AirflowOIDCSecurityManager
+```
+
+Airflow now requires that your `SECURITY_MANAGER_CLASS` is a subclass of `AirflowSecurityManager`.
+Use the special `AirflowOIDCSecurityManager` that is only defined if you're using this library alongside Airflow.
+
+### [Superset]
+Superset works in a a similar way. Just as in Airflow,
+`SECURITY_MANAGER_CLASS` needs to be a subclass of `SupersetSecurityManager`
+the config is in a file called `superset_config.py` and the hook is called
+`CUSTOM_SECURITY_MANAGER`. There now exists a special
+`SupersetOIDCSecurityManager` that is only defined if you are using this
+library alongside Superset.
+
+```python
+from fab_oidc.security import SupersetOIDCSecurityManager
+...
+CUSTOM_SECURITY_MANAGER = SupersetOIDCSecurityManager
+```
+
+
+## Settings
+The settings are the same as the [flask_oidc settings][flask_oidc_settings], so look there for a reference.
+
+if you're happy with [flask_oidc]'s defaults the only thing you'll really need is something like:
+
+```python
+OIDC_CLIENT_SECRETS = '/path/to/client_secret.json'
+```
+
+see the [flask_oidc manual client registration][flask_oidc_manual_config] docs for how to generate or write one.
+
+### OIDC Field configuration
+
+If you like to change the default OIDC field that will be used as a username,
+first name and last name you can set the following env var in the shell you run
+your process:
+
+```bash
+export USERNAME_OIDC_FIELD='preferred_username'
+export FIRST_NAME_OIDC_FIELD='given_name'
+export LAST_NAME_OIDC_FIELD='family_name'
+```
+
+Copyright © 2018 HM Government (Ministry of Justice Digital Services). See LICENSE.txt for further details.
+
+
+[flask_oidc]: http://flask-oidc.readthedocs.io/en/latest/
+[flask_oidc_settings]: http://flask-oidc.readthedocs.io/en/latest/#settings-reference
+[flask_oidc_manual_config]: http://flask-oidc.readthedocs.io/en/latest/#manual-client-registration
+[Airflow]: https://airflow.apache.org/
+ [Superset]: https://superset.incubator.apache.org/
+
+
+
+
+%package -n python3-fab-oidc
+Summary: Flask-AppBuilder SecurityManager for OpenIDConnect
+Provides: python-fab-oidc
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-fab-oidc
+# Flask-AppBuilder SecurityManager for OpenIDConnect
+
+Wrapper for [flask_oidc] that exposes a `SecurityManager` for use with any Flask-AppBuilder app.
+
+It will allow your users to login with OpenIDConnect providers such as Auth0, Okta or Google Apps.
+
+This is roughly inspired by the code in this [stackoverflow](https://stackoverflow.com/a/47787279/44252) answer. (MIT Licenced © [thijsfranck](https://stackoverflow.com/users/8905583/thijsfranck))
+
+## Usage
+
+### Generic
+
+Just override the default security manager in your Flask Appbuilder app.
+
+```python
+from fab_oidc.security import OIDCSecurityManager
+
+appbuilder = AppBuilder(app, db.session, security_manager_class=OIDCSecurityManager)
+```
+
+### [Airflow]
+Airflow provides a hook in the `webserver_config.py` file where you can specify a security manager class.
+In `webserver_config.py` import the OIDCSecurityManager and set
+```python
+from fab_oidc.security import AirflowOIDCSecurityManager
+...
+SECURITY_MANAGER_CLASS = AirflowOIDCSecurityManager
+```
+
+Airflow now requires that your `SECURITY_MANAGER_CLASS` is a subclass of `AirflowSecurityManager`.
+Use the special `AirflowOIDCSecurityManager` that is only defined if you're using this library alongside Airflow.
+
+### [Superset]
+Superset works in a a similar way. Just as in Airflow,
+`SECURITY_MANAGER_CLASS` needs to be a subclass of `SupersetSecurityManager`
+the config is in a file called `superset_config.py` and the hook is called
+`CUSTOM_SECURITY_MANAGER`. There now exists a special
+`SupersetOIDCSecurityManager` that is only defined if you are using this
+library alongside Superset.
+
+```python
+from fab_oidc.security import SupersetOIDCSecurityManager
+...
+CUSTOM_SECURITY_MANAGER = SupersetOIDCSecurityManager
+```
+
+
+## Settings
+The settings are the same as the [flask_oidc settings][flask_oidc_settings], so look there for a reference.
+
+if you're happy with [flask_oidc]'s defaults the only thing you'll really need is something like:
+
+```python
+OIDC_CLIENT_SECRETS = '/path/to/client_secret.json'
+```
+
+see the [flask_oidc manual client registration][flask_oidc_manual_config] docs for how to generate or write one.
+
+### OIDC Field configuration
+
+If you like to change the default OIDC field that will be used as a username,
+first name and last name you can set the following env var in the shell you run
+your process:
+
+```bash
+export USERNAME_OIDC_FIELD='preferred_username'
+export FIRST_NAME_OIDC_FIELD='given_name'
+export LAST_NAME_OIDC_FIELD='family_name'
+```
+
+Copyright © 2018 HM Government (Ministry of Justice Digital Services). See LICENSE.txt for further details.
+
+
+[flask_oidc]: http://flask-oidc.readthedocs.io/en/latest/
+[flask_oidc_settings]: http://flask-oidc.readthedocs.io/en/latest/#settings-reference
+[flask_oidc_manual_config]: http://flask-oidc.readthedocs.io/en/latest/#manual-client-registration
+[Airflow]: https://airflow.apache.org/
+ [Superset]: https://superset.incubator.apache.org/
+
+
+
+
+%package help
+Summary: Development documents and examples for fab-oidc
+Provides: python3-fab-oidc-doc
+%description help
+# Flask-AppBuilder SecurityManager for OpenIDConnect
+
+Wrapper for [flask_oidc] that exposes a `SecurityManager` for use with any Flask-AppBuilder app.
+
+It will allow your users to login with OpenIDConnect providers such as Auth0, Okta or Google Apps.
+
+This is roughly inspired by the code in this [stackoverflow](https://stackoverflow.com/a/47787279/44252) answer. (MIT Licenced © [thijsfranck](https://stackoverflow.com/users/8905583/thijsfranck))
+
+## Usage
+
+### Generic
+
+Just override the default security manager in your Flask Appbuilder app.
+
+```python
+from fab_oidc.security import OIDCSecurityManager
+
+appbuilder = AppBuilder(app, db.session, security_manager_class=OIDCSecurityManager)
+```
+
+### [Airflow]
+Airflow provides a hook in the `webserver_config.py` file where you can specify a security manager class.
+In `webserver_config.py` import the OIDCSecurityManager and set
+```python
+from fab_oidc.security import AirflowOIDCSecurityManager
+...
+SECURITY_MANAGER_CLASS = AirflowOIDCSecurityManager
+```
+
+Airflow now requires that your `SECURITY_MANAGER_CLASS` is a subclass of `AirflowSecurityManager`.
+Use the special `AirflowOIDCSecurityManager` that is only defined if you're using this library alongside Airflow.
+
+### [Superset]
+Superset works in a a similar way. Just as in Airflow,
+`SECURITY_MANAGER_CLASS` needs to be a subclass of `SupersetSecurityManager`
+the config is in a file called `superset_config.py` and the hook is called
+`CUSTOM_SECURITY_MANAGER`. There now exists a special
+`SupersetOIDCSecurityManager` that is only defined if you are using this
+library alongside Superset.
+
+```python
+from fab_oidc.security import SupersetOIDCSecurityManager
+...
+CUSTOM_SECURITY_MANAGER = SupersetOIDCSecurityManager
+```
+
+
+## Settings
+The settings are the same as the [flask_oidc settings][flask_oidc_settings], so look there for a reference.
+
+if you're happy with [flask_oidc]'s defaults the only thing you'll really need is something like:
+
+```python
+OIDC_CLIENT_SECRETS = '/path/to/client_secret.json'
+```
+
+see the [flask_oidc manual client registration][flask_oidc_manual_config] docs for how to generate or write one.
+
+### OIDC Field configuration
+
+If you like to change the default OIDC field that will be used as a username,
+first name and last name you can set the following env var in the shell you run
+your process:
+
+```bash
+export USERNAME_OIDC_FIELD='preferred_username'
+export FIRST_NAME_OIDC_FIELD='given_name'
+export LAST_NAME_OIDC_FIELD='family_name'
+```
+
+Copyright © 2018 HM Government (Ministry of Justice Digital Services). See LICENSE.txt for further details.
+
+
+[flask_oidc]: http://flask-oidc.readthedocs.io/en/latest/
+[flask_oidc_settings]: http://flask-oidc.readthedocs.io/en/latest/#settings-reference
+[flask_oidc_manual_config]: http://flask-oidc.readthedocs.io/en/latest/#manual-client-registration
+[Airflow]: https://airflow.apache.org/
+ [Superset]: https://superset.incubator.apache.org/
+
+
+
+
+%prep
+%autosetup -n fab-oidc-0.0.9
+
+%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-fab-oidc -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Wed Apr 12 2023 Python_Bot <Python_Bot@openeuler.org> - 0.0.9-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..65f0870
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+0c938353b745b672beb16ccbf2a4ac6f fab_oidc-0.0.9.tar.gz