# Fail to set SSO plugin with the tutorial.

**URL:** <https://support.prodi.gy/t/fail-to-set-sso-plugin-with-the-tutorial/7447>\
**Category:** Uncategorized\
**Tags:** plugin, deployment\
**Created:** [November 29, 2024, 1:28pm UTC](https://support.prodi.gy/t/fail-to-set-sso-plugin-with-the-tutorial/7447 "2024-11-29T13:28:02Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![konstantin-verner-ma](https://sea2.discourse-cdn.com/flex020/user_avatar/support.prodi.gy/konstantin-verner-ma/32/4539_2.png) [@konstantin-verner-ma](https://support.prodi.gy/u/konstantin-verner-ma)\
**Post date:** [November 29, 2024, 1:28pm UTC](https://support.prodi.gy/t/fail-to-set-sso-plugin-with-the-tutorial/7447/1 "2024-11-29T13:28:02Z")

</div>

I am trying to set SSO plugin for my prodigy server by following this tutorial: [Single Sign-On with OpenID Connect · Prodigy · An annotation tool for AI, Machine Learning & NLP](https://prodi.gy/docs/sso)

Before setting my company's SSO on-prem , I am trying to reproduce the tutorial with Auth0 on Github Codespace, however I can not do that.

First, I set my application on auth0, I test it, it works when I set a toy server with fastapi.

Second, I set prodigy:

```python
> python3.11 -m pip show prodigy
---
Name: prodigy
Version: 1.12.7
Summary: Radically efficient machine teaching.
Home-page: https://prodi.gy
Author: Explosion
Author-email: contact@explosion.ai
License: All rights reserved
Location: /home/codespace/.local/lib/python3.11/site-packages
Requires: aiofiles, cachetools, catalogue, fastapi, jinja2, peewee, plac, pydantic, pyjwt, python-dotenv, requests, spacy, srsly, toolz, tqdm, typeguard, typing-extensions, uvicorn, wasabi
Required-by: 

```

and plugins:

```python
> python3.11 -m pip show prodigy_company_plugins
---
Name: prodigy-company-plugins
Version: 0.2.1
Summary: Company License plugins for the Prodigy Data Annotation Tool.
Home-page: https://prodi.gy
Author: Explosion
Author-email: contact@explosion.ai
License: All rights reserved
Location: /home/codespace/.local/lib/python3.11/site-packages
Requires: cryptography, httpx
Required-by: 

```

I set the environment variables:

```python
PRODIGY_OIDC_AUTH_ENABLED=1
PRODIGY_OIDC_DISCOVERY_URL="https://dev-***.us.auth0.com/.well-known/openid-configuration"
PRODIGY_OIDC_CLIENT_ID=***
PRODIGY_OIDC_CLIENT_SECRET=***
PRODIGY_OIDC_REQUIRED_SCOPES="openid email"
PRODIGY_LOGGING="verbose"
PRODIGY_LOG_LOCALS=1
PRODIGY_DEPLOYED_URL="https://scaling-fortnight-x5g7x4qxg44cpgj5-8080.app.github.dev"
PRODIGY_HOST="0.0.0.0"
PRODIGY_PORT=8080

```

Finally, I run prodigy server:

```python
> dotenv run -- python3.11 -m prodigy ner.manual ner_news_headlines blank:en ./news_headlines.jsonl --label PERSON,ORG,PRODUCT,LOCATION
---
13:21:11: INIT: Setting all logging levels to 10
13:21:12: RECIPE: Calling recipe 'ner.manual'
Using 4 label(s): PERSON, ORG, PRODUCT, LOCATION
13:21:12: RECIPE: Starting recipe ner.manual
13:21:12: {'dataset': 'ner_news_headlines', 'spacy_model': 'blank:en', 'source': './news_headlines.jsonl', 'loader': None, 'label': ['PERSON', 'ORG', 'PRODUCT', 'LOCATION'], 'patterns': None, 'exclude': None, 'highlight_chars': False}
13:21:12: RECIPE: Annotating with 4 labels
13:21:12: ['PERSON', 'ORG', 'PRODUCT', 'LOCATION']
13:21:12: get_stream: Loading .jsonl file
13:21:12: get_stream: Rehashing stream
13:21:12: get_stream: Removing duplicates
13:21:12: CONFIG: Using config from global prodigy.json
13:21:12: /home/codespace/.prodigy/prodigy.json
13:21:12: VALIDATE: Validating components returned by recipe
13:21:12: CONTROLLER: Initialising from recipe
13:21:12: {'before_db': None, 'config': {'lang': 'en', 'labels': ['PERSON', 'ORG', 'PRODUCT', 'LOCATION'], 'exclude_by': 'input', 'ner_manual_highlight_chars': False, 'dataset': 'ner_news_headlines', 'recipe_name': 'ner.manual'}, 'dataset': 'ner_news_headlines', 'db': True, 'exclude': None, 'get_session_id': None, 'metrics': None, 'on_exit': None, 'on_load': None, 'progress': <prodigy.components.progress.SourceProgressEstimator object at 0x74d9f1fd70d0>, 'self': <prodigy.core.Controller object at 0x74d9f0c8cb90>, 'session_factory': None, 'stream': <prodigy.components.stream.Stream object at 0x74d9f0f5d490>, 'task_router': None, 'update': <cyfunction _noop_update at 0x74d9f1fa6c20>, 'validate_answer': None, 'view_id': 'ner_manual'}
13:21:12: VALIDATE: Creating validator for view ID 'ner_manual'
13:21:12: VALIDATE: Validating Prodigy and recipe config
13:21:12: PREPROCESS: Tokenizing examples (running tokenizer only)
13:21:12: FILTER: Filtering duplicates from stream
13:21:12: {'by_input': True, 'by_task': True, 'stream': <_cython_3_0_0b3.generator object at 0x74d9f1087ac0>, 'warn_fn': <bound method Printer.warn of <wasabi.printer.Printer object at 0x74d9fd035f90>>, 'warn_threshold': 0.4}
13:21:12: FILTER: Filtering out empty examples for key 'text'
13:21:12: CONFIG: Using config from global prodigy.json
13:21:12: /home/codespace/.prodigy/prodigy.json
13:21:12: DB: Initializing database SQLite
13:21:12: DB: Connecting to database SQLite
13:21:12: DB: Creating unstructured dataset '2024-11-29_13-21-12'
13:21:12: {'created': datetime.datetime(2024, 11, 29, 10, 15, 21)}
13:21:12: CORS: initialized with wildcard "*" CORS origins

✨ Starting the web server at http://0.0.0.0:8080 ...
Open the app in your browser and start annotating!

INFO: Started server process [11305]
INFO: Waiting for application startup.
INFO: Application startup complete.
INFO: Uvicorn running on http://0.0.0.0:8080 (Press CTRL+C to quit)
INFO: 10.240.0.69:0 - "GET / HTTP/1.1" 200 OK
INFO: 10.240.0.69:0 - "GET /bundle.js HTTP/1.1" 200 OK

```

So, I have no indication whether or not SSO is set (it would be handy to have warnings that SSO config is not set correctly). I can access the prodigy page without redirect.

Where I fail to follow the tutorial?

---

<div class="post-metadata">

**Author:** ![magdaaniol](https://sea2.discourse-cdn.com/flex020/user_avatar/support.prodi.gy/magdaaniol/32/2787_2.png) [@magdaaniol](https://support.prodi.gy/u/magdaaniol)\
**Post date:** [December 2, 2024, 10:28am UTC](https://support.prodi.gy/t/fail-to-set-sso-plugin-with-the-tutorial/7447/2 "2024-12-02T10:28:20Z")

</div>

Welcome to the forum @konstantin-verner-ma 👋

According to our [changelog](https://prodi.gy/docs/changelog#v1.15.0), this plugin requires Prodigy version 1.15.0 or higher to function properly. I apologize that this wasn't more clearly indicated - we're working on adding better version compatibility warnings.

To upgrade Prodigy, you can use this command:

```bash
python -m pip install --upgrade prodigy --extra-index-url https://XXXX-XXXX-XXXX-XXXX@download.prodi.gy

```

If you're unable to upgrade because your license is older than one year, you can purchase a 12-month extension at [Get Prodigy · Prodigy · An annotation tool for AI, Machine Learning & NLP](https://prodi.gy/buy).  
Please let me know if you need any help with the upgrade process.
