mirror of
https://github.com/jupyterhub/jupyterhub.git
synced 2025-10-18 15:33:02 +00:00
update allowed/blocked language in docs
our words matter, let's be more mindful
This commit is contained in:
@@ -7,6 +7,8 @@ command line for details.
|
|||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## 1.1
|
## 1.1
|
||||||
|
|
||||||
### [1.1.0] 2020-01-17
|
### [1.1.0] 2020-01-17
|
||||||
@@ -116,7 +118,7 @@ Thanks to everyone who has contributed to this release!
|
|||||||
- Log JupyterHub version on startup [#2752](https://github.com/jupyterhub/jupyterhub/pull/2752) ([@consideRatio](https://github.com/consideRatio))
|
- Log JupyterHub version on startup [#2752](https://github.com/jupyterhub/jupyterhub/pull/2752) ([@consideRatio](https://github.com/consideRatio))
|
||||||
- Reduce verbosity for "Failing suspected API request to not-running server" (new) [#2751](https://github.com/jupyterhub/jupyterhub/pull/2751) ([@rkdarst](https://github.com/rkdarst))
|
- Reduce verbosity for "Failing suspected API request to not-running server" (new) [#2751](https://github.com/jupyterhub/jupyterhub/pull/2751) ([@rkdarst](https://github.com/rkdarst))
|
||||||
- Add missing package for json schema doc build [#2744](https://github.com/jupyterhub/jupyterhub/pull/2744) ([@willingc](https://github.com/willingc))
|
- Add missing package for json schema doc build [#2744](https://github.com/jupyterhub/jupyterhub/pull/2744) ([@willingc](https://github.com/willingc))
|
||||||
- blacklist urllib3 versions with encoding bug [#2743](https://github.com/jupyterhub/jupyterhub/pull/2743) ([@minrk](https://github.com/minrk))
|
- block urllib3 versions with encoding bug [#2743](https://github.com/jupyterhub/jupyterhub/pull/2743) ([@minrk](https://github.com/minrk))
|
||||||
- Remove tornado deprecated/unnecessary AsyncIOMainLoop().install() call [#2740](https://github.com/jupyterhub/jupyterhub/pull/2740) ([@kinow](https://github.com/kinow))
|
- Remove tornado deprecated/unnecessary AsyncIOMainLoop().install() call [#2740](https://github.com/jupyterhub/jupyterhub/pull/2740) ([@kinow](https://github.com/kinow))
|
||||||
- Fix deprecated call [#2739](https://github.com/jupyterhub/jupyterhub/pull/2739) ([@kinow](https://github.com/kinow))
|
- Fix deprecated call [#2739](https://github.com/jupyterhub/jupyterhub/pull/2739) ([@kinow](https://github.com/kinow))
|
||||||
- Remove duplicate hub and authenticator traitlets from Spawner [#2736](https://github.com/jupyterhub/jupyterhub/pull/2736) ([@eslavich](https://github.com/eslavich))
|
- Remove duplicate hub and authenticator traitlets from Spawner [#2736](https://github.com/jupyterhub/jupyterhub/pull/2736) ([@eslavich](https://github.com/eslavich))
|
||||||
@@ -231,8 +233,8 @@ whether it was through discussion, testing, documentation, or development.
|
|||||||
This hook may transform the return value of `Authenticator.authenticate()`
|
This hook may transform the return value of `Authenticator.authenticate()`
|
||||||
and return a new authentication dictionary,
|
and return a new authentication dictionary,
|
||||||
e.g. specifying admin privileges, group membership,
|
e.g. specifying admin privileges, group membership,
|
||||||
or custom white/blacklisting logic.
|
or custom allowed/blocked logic.
|
||||||
This hook is called *after* existing normalization and whitelist checking.
|
This hook is called *after* existing normalization and allowed-username checking.
|
||||||
- `Spawner.options_from_form` may now be async
|
- `Spawner.options_from_form` may now be async
|
||||||
- Added `JupyterHub.shutdown_on_logout` option to trigger shutdown of a user's
|
- Added `JupyterHub.shutdown_on_logout` option to trigger shutdown of a user's
|
||||||
servers when they log out.
|
servers when they log out.
|
||||||
@@ -418,7 +420,7 @@ and tornado < 5.0.
|
|||||||
launching an IPython session connected to your JupyterHub database.
|
launching an IPython session connected to your JupyterHub database.
|
||||||
- Include `User.auth_state` in user model on single-user REST endpoints for admins only.
|
- Include `User.auth_state` in user model on single-user REST endpoints for admins only.
|
||||||
- Include `Server.state` in server model on REST endpoints for admins only.
|
- Include `Server.state` in server model on REST endpoints for admins only.
|
||||||
- Add `Authenticator.blacklist` for blacklisting users instead of whitelisting.
|
- Add `Authenticator.blacklist` for blocking users instead of allowing.
|
||||||
- Pass `c.JupyterHub.tornado_settings['cookie_options']` down to Spawners
|
- Pass `c.JupyterHub.tornado_settings['cookie_options']` down to Spawners
|
||||||
so that cookie options (e.g. `expires_days`) can be set globally for the whole application.
|
so that cookie options (e.g. `expires_days`) can be set globally for the whole application.
|
||||||
- SIGINFO (`ctrl-t`) handler showing the current status of all running threads,
|
- SIGINFO (`ctrl-t`) handler showing the current status of all running threads,
|
||||||
|
@@ -4,23 +4,23 @@ The default Authenticator uses [PAM][] to authenticate system users with
|
|||||||
their username and password. With the default Authenticator, any user
|
their username and password. With the default Authenticator, any user
|
||||||
with an account and password on the system will be allowed to login.
|
with an account and password on the system will be allowed to login.
|
||||||
|
|
||||||
## Create a whitelist of users
|
## Create a set of allowed users
|
||||||
|
|
||||||
You can restrict which users are allowed to login with a whitelist,
|
You can restrict which users are allowed to login with a set,
|
||||||
`Authenticator.whitelist`:
|
`Authenticator.allowed`:
|
||||||
|
|
||||||
|
|
||||||
```python
|
```python
|
||||||
c.Authenticator.whitelist = {'mal', 'zoe', 'inara', 'kaylee'}
|
c.Authenticator.allowed = {'mal', 'zoe', 'inara', 'kaylee'}
|
||||||
```
|
```
|
||||||
|
|
||||||
Users in the whitelist are added to the Hub database when the Hub is
|
Users in the allowed set are added to the Hub database when the Hub is
|
||||||
started.
|
started.
|
||||||
|
|
||||||
## Configure admins (`admin_users`)
|
## Configure admins (`admin_users`)
|
||||||
|
|
||||||
Admin users of JupyterHub, `admin_users`, can add and remove users from
|
Admin users of JupyterHub, `admin_users`, can add and remove users from
|
||||||
the user `whitelist`. `admin_users` can take actions on other users'
|
the user `allowed` set. `admin_users` can take actions on other users'
|
||||||
behalf, such as stopping and restarting their servers.
|
behalf, such as stopping and restarting their servers.
|
||||||
|
|
||||||
A set of initial admin users, `admin_users` can configured be as follows:
|
A set of initial admin users, `admin_users` can configured be as follows:
|
||||||
@@ -28,7 +28,7 @@ A set of initial admin users, `admin_users` can configured be as follows:
|
|||||||
```python
|
```python
|
||||||
c.Authenticator.admin_users = {'mal', 'zoe'}
|
c.Authenticator.admin_users = {'mal', 'zoe'}
|
||||||
```
|
```
|
||||||
Users in the admin list are automatically added to the user `whitelist`,
|
Users in the admin set are automatically added to the user `allowed` set,
|
||||||
if they are not already present.
|
if they are not already present.
|
||||||
|
|
||||||
Each authenticator may have different ways of determining whether a user is an
|
Each authenticator may have different ways of determining whether a user is an
|
||||||
@@ -53,12 +53,12 @@ sure your users know if admin_access is enabled.**
|
|||||||
|
|
||||||
Users can be added to and removed from the Hub via either the admin
|
Users can be added to and removed from the Hub via either the admin
|
||||||
panel or the REST API. When a user is **added**, the user will be
|
panel or the REST API. When a user is **added**, the user will be
|
||||||
automatically added to the whitelist and database. Restarting the Hub
|
automatically added to the allowed set and database. Restarting the Hub
|
||||||
will not require manually updating the whitelist in your config file,
|
will not require manually updating the allowed set in your config file,
|
||||||
as the users will be loaded from the database.
|
as the users will be loaded from the database.
|
||||||
|
|
||||||
After starting the Hub once, it is not sufficient to **remove** a user
|
After starting the Hub once, it is not sufficient to **remove** a user
|
||||||
from the whitelist in your config file. You must also remove the user
|
from the allowed set in your config file. You must also remove the user
|
||||||
from the Hub's database, either by deleting the user from JupyterHub's
|
from the Hub's database, either by deleting the user from JupyterHub's
|
||||||
admin page, or you can clear the `jupyterhub.sqlite` database and start
|
admin page, or you can clear the `jupyterhub.sqlite` database and start
|
||||||
fresh.
|
fresh.
|
||||||
|
@@ -52,7 +52,7 @@ c.GitHubOAuthenticator.oauth_callback_url = os.environ['OAUTH_CALLBACK_URL']
|
|||||||
c.LocalAuthenticator.create_system_users = True
|
c.LocalAuthenticator.create_system_users = True
|
||||||
|
|
||||||
# specify users and admin
|
# specify users and admin
|
||||||
c.Authenticator.whitelist = {'rgbkrk', 'minrk', 'jhamrick'}
|
c.Authenticator.allowed = {'rgbkrk', 'minrk', 'jhamrick'}
|
||||||
c.Authenticator.admin_users = {'jhamrick', 'rgbkrk'}
|
c.Authenticator.admin_users = {'jhamrick', 'rgbkrk'}
|
||||||
|
|
||||||
# uses the default spawner
|
# uses the default spawner
|
||||||
|
@@ -57,7 +57,7 @@ To do this we add to `/etc/sudoers` (use `visudo` for safe editing of sudoers):
|
|||||||
For example:
|
For example:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# comma-separated whitelist of users that can spawn single-user servers
|
# comma-separated list of users that can spawn single-user servers
|
||||||
# this should include all of your Hub users
|
# this should include all of your Hub users
|
||||||
Runas_Alias JUPYTER_USERS = rhea, zoe, wash
|
Runas_Alias JUPYTER_USERS = rhea, zoe, wash
|
||||||
|
|
||||||
|
@@ -313,7 +313,7 @@ class MyHandler(HubAuthenticated, web.RequestHandler):
|
|||||||
The HubAuth will automatically load the desired configuration from the Service
|
The HubAuth will automatically load the desired configuration from the Service
|
||||||
environment variables.
|
environment variables.
|
||||||
|
|
||||||
If you want to limit user access, you can whitelist users through either the
|
If you want to limit user access, you can specify allowed users through either the
|
||||||
`.hub_users` attribute or `.hub_groups`. These are sets that check against the
|
`.hub_users` attribute or `.hub_groups`. These are sets that check against the
|
||||||
username and user group list, respectively. If a user matches neither the user
|
username and user group list, respectively. If a user matches neither the user
|
||||||
list nor the group list, they will not be allowed access. If both are left
|
list nor the group list, they will not be allowed access. If both are left
|
||||||
|
@@ -7,8 +7,8 @@ problem and how to resolve it.
|
|||||||
[*Behavior*](#behavior)
|
[*Behavior*](#behavior)
|
||||||
- JupyterHub proxy fails to start
|
- JupyterHub proxy fails to start
|
||||||
- sudospawner fails to run
|
- sudospawner fails to run
|
||||||
- What is the default behavior when none of the lists (admin, whitelist,
|
- What is the default behavior when none of the lists (admin, allowed,
|
||||||
group whitelist) are set?
|
allowed groups) are set?
|
||||||
- JupyterHub Docker container not accessible at localhost
|
- JupyterHub Docker container not accessible at localhost
|
||||||
|
|
||||||
[*Errors*](#errors)
|
[*Errors*](#errors)
|
||||||
@@ -55,14 +55,14 @@ or add:
|
|||||||
|
|
||||||
to the config file, `jupyterhub_config.py`.
|
to the config file, `jupyterhub_config.py`.
|
||||||
|
|
||||||
### What is the default behavior when none of the lists (admin, whitelist, group whitelist) are set?
|
### What is the default behavior when none of the lists (admin, allowed, allowed groups) are set?
|
||||||
|
|
||||||
When nothing is given for these lists, there will be no admins, and all users
|
When nothing is given for these lists, there will be no admins, and all users
|
||||||
who can authenticate on the system (i.e. all the unix users on the server with
|
who can authenticate on the system (i.e. all the unix users on the server with
|
||||||
a password) will be allowed to start a server. The whitelist lets you limit
|
a password) will be allowed to start a server. The allowed username set lets you limit
|
||||||
this to a particular set of users, and the admin_users lets you specify who
|
this to a particular set of users, and admin_users lets you specify who
|
||||||
among them may use the admin interface (not necessary, unless you need to do
|
among them may use the admin interface (not necessary, unless you need to do
|
||||||
things like inspect other users' servers, or modify the userlist at runtime).
|
things like inspect other users' servers, or modify the user list at runtime).
|
||||||
|
|
||||||
### JupyterHub Docker container not accessible at localhost
|
### JupyterHub Docker container not accessible at localhost
|
||||||
|
|
||||||
@@ -332,8 +332,7 @@ notebook servers to default to JupyterLab:
|
|||||||
### How do I set up JupyterHub for a workshop (when users are not known ahead of time)?
|
### How do I set up JupyterHub for a workshop (when users are not known ahead of time)?
|
||||||
|
|
||||||
1. Set up JupyterHub using OAuthenticator for GitHub authentication
|
1. Set up JupyterHub using OAuthenticator for GitHub authentication
|
||||||
2. Configure whitelist to be an empty list in` jupyterhub_config.py`
|
2. Configure admin list to have workshop leaders be listed with administrator privileges.
|
||||||
3. Configure admin list to have workshop leaders be listed with administrator privileges.
|
|
||||||
|
|
||||||
Users will need a GitHub account to login and be authenticated by the Hub.
|
Users will need a GitHub account to login and be authenticated by the Hub.
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user