Min RK
3b320c75e9
remove warning when generating proxy token if Proxy.should_start
...
Now that it's unambiguous whether the proxy should start or not,
we don't need a warning about generating tokens causing issues for hub restart.
We can raise a strict, early error if proxy s external and token is still unspecified,
rather than running into a 403 error due to a generated token
2018-03-27 17:46:25 +02:00
Min RK
1aa6dc6686
use semaphore to limit concurrent requests to the proxy
...
should limit timeout errors in case of flooding the proxy with requests
default concurrency is 10
2018-03-27 14:30:03 +02:00
Min RK
fdc4385e62
a bit more debug logging in proxy.check_routes
...
- log (info) that check_routes is starting
- log (debug) when fetching routes
2018-03-27 14:25:49 +02:00
Min RK
5094448762
Merge pull request #1743 from betatim/user-api
...
[MRG] Expose `auth_state` via /api/users/<name>
2018-03-27 10:56:39 +02:00
Min RK
98c7fa919f
avoid deleting routes for spawners
...
we previously checked if spawn_pending, but *any* transitional state should exclude them from the check
2018-03-27 10:43:43 +02:00
Tim Head
5b9f51417f
Fix permission check when handing out auth state
2018-03-27 10:02:59 +02:00
Tim Head
7a91f89474
Use user's token for auth when using API
2018-03-27 10:02:59 +02:00
Tim Head
bf7afa16e5
Remove auth state from user's self handler
2018-03-27 10:02:59 +02:00
Tim Head
0d57baae82
Modify user API wrt auth_state
...
A user can not get their own auth state via the REST API. Only admins
can fetch and update the auth state this way.
2018-03-27 10:02:59 +02:00
Tim Head
446d197cf7
Move auth state fixture to conftest
2018-03-27 10:02:59 +02:00
Tim Head
2582f0bbe6
Modify auth_state API test to use mocked crypto
2018-03-27 10:02:59 +02:00
Tim Head
1ee993c664
Add ability to modify auth_state via the REST API
2018-03-27 10:02:59 +02:00
Tim Head
542c20065f
Reduce the number of endpoints that expose auth_state
2018-03-27 10:02:59 +02:00
Tim Head
39f663d03c
Expose auth_state via user API
2018-03-27 10:02:59 +02:00
Min RK
6474a55302
Merge pull request #1749 from minrk/await-fixes
...
fix await of default authenticate
2018-03-26 13:34:01 +02:00
Min RK
8566d4c5ab
fix await of default authenticate
2018-03-23 10:57:47 +01:00
Min RK
e374e93cfb
expose cookie options and pass them down to spawners
...
enables forcing all-session cookies with:
```python
c.JupyterHub.tornado_settings['cookie_options'] = {
'expires_days': None,
}
```
2018-03-23 10:38:50 +01:00
Min RK
7bd4f6490c
Merge pull request #1731 from vilhelmen/pam_account_check
...
Allow checking PAM account stack during PAM auth
2018-03-23 09:19:20 +01:00
Unknown
25373f510d
Allow and enable PAM account stack checking
...
JH can now differentiate between authenticated and authorized users via PAM
This allows JH to respect PAM-accessible user access controls.
This also fixes missing PAMAuthenticator.encoding usages.
2018-03-22 15:53:28 -05:00
Min RK
82cab39e1c
Merge pull request #1722 from minrk/login-spawn
...
Simplify root/login redirect behavior
2018-03-21 13:20:49 +01:00
Min RK
22507cc1cd
clear ?redirects from URL once single-user pages load successfully
2018-03-21 13:01:29 +01:00
Min RK
2bded65c7e
update singleuser auth test url check
...
handle `?redirects`
2018-03-21 12:58:59 +01:00
Min RK
a3a0c60804
update redirect tests
...
now that redirects are not sensitive to state
2018-03-21 11:15:40 +01:00
Min RK
704b172887
update tests to reflect that login no longer implies spawn
2018-03-21 10:51:49 +01:00
Min RK
135717f8cb
Merge pull request #1733 from willingc/spawner-comment
...
Add a spawner_class option to the reference example
2018-03-21 10:38:33 +01:00
Glen Knight
1d87ba8534
updated run?
2018-03-19 23:59:14 -04:00
Glen Knight
97cd27775b
updated run command
2018-03-19 23:56:45 -04:00
Glen Knight
fe2e9c282e
removed checkout
2018-03-19 23:44:53 -04:00
Glen Knight
fab125975b
re-added build step
2018-03-19 23:39:50 -04:00
Glen Knight
cefd7e3b1b
remove cicle.yml
2018-03-19 23:38:37 -04:00
Carol Willing
344a3e7b24
Add a spawner_class option to the reference example
2018-03-19 14:23:14 -07:00
Min RK
a0ee237ada
Simplify root/login redirect behavior
...
- ignore spawner state when determining redirect destination
- remove implicit spawn from login handler (rely on redirect to user.url for spawn)
- settings.redirect_to_server determines if login sends users to /user/:name vs /hub/home
- visiting `/hub/` should result in the same destination regardless of login state or spawner state
2018-03-14 15:37:25 +01:00
Min RK
e81eb9a5f8
Merge pull request #1687 from minrk/external-oauth-basic
...
fix /api/user with oauth tokens
2018-03-13 16:11:28 +01:00
Min RK
98d3b538af
Further clarifications in external-oauth example
2018-03-13 10:03:01 +01:00
Min RK
3614a0e368
move get_self test after get_users
...
to avoid changing expected state
2018-03-13 10:03:01 +01:00
Min RK
0421497b1e
remove web.authenticated from /api/user handler
...
which prevents it from being used with oauth tokens
2018-03-13 10:03:01 +01:00
Min RK
8b3c2fa12f
add whoami-oauth-basic example
...
implements oauth without inheriting from HubOAuthenticated
should be easier to parse for users with alternate oauth implementations
2018-03-13 10:03:01 +01:00
Min RK
a58bea6d93
Merge pull request #1696 from minrk/async-def
...
async/await syntax
2018-03-12 18:40:34 +01:00
Min RK
c7c41cd761
remove bad yield in test_api
2018-03-12 18:32:00 +01:00
Min RK
b282ec73c7
no_patience doesn't quite work with zero timeout anymore
...
thanks to asyncio always waiting a finite time on any await
2018-03-12 18:18:47 +01:00
Min RK
dad26be2c6
call it our own maybe_future
...
our version of gen.maybe_future that's fully tornado- and asyncio-compatible
2018-03-12 18:18:47 +01:00
Min RK
58d602e549
require Python 3.5 for async/await syntax
2018-03-12 18:18:46 +01:00
Min RK
5e14904205
fix a few unawaited calls to coroutines
...
asyncio is less forgiving about these than tornado
2018-03-12 18:18:46 +01:00
Min RK
97293ab7ce
use asyncio.ensure_future to start coroutines immediately
...
asyncio has different coroutine start mechanics than tornado
tornado starts coroutines immediately,
whereas asyncio doesn't until they are scheduled with either ensure_future or waited upon.
2018-03-12 18:18:46 +01:00
Min RK
b6f634368c
add utils.awaitable replacement for gen.maybe_future
...
gen.maybe_future doesn't accept asyncio coroutines
and asyncio.ensure_future doesn't accept *tornado* coroutines, so do our own thing
2018-03-12 18:18:46 +01:00
Min RK
7b4de150cc
add awaitable wrapper
...
to replace gen.maybe_future
2018-03-12 18:18:46 +01:00
Min RK
7a268c94b0
bulk find/replace async def and await
...
- `@gen.coroutine def` -> `async def`
- `yield future` -> `await future`
needs some fine tuning, but this is the big one
2018-03-12 18:18:46 +01:00
Carol Willing
7a1fa78632
Merge pull request #1660 from minrk/spawn-form-access
...
expand admin[-access] support
2018-03-12 07:34:07 -07:00
Min RK
19f02da64d
should_spawn=False when current_user is None (not logged in)
2018-03-12 14:23:57 +01:00
Min RK
5bf1aac9cb
get the right render form when spawning for another user
2018-03-12 14:23:57 +01:00