Commit graph

333 commits

Author SHA1 Message Date
Graham Ullrich
b8d1d63c28 Improve tox.ini envlist layout, simplified commands.
Remove tests/app/settings.py in favor of settings in setup.py.
Change MANIFEST.in to include README.md (which exists) instead of README.rst (which does not exist).
Update .travis.yml to use tox instead of `python django_admin.py`, include Django v1.10 in the mix.
2016-08-11 11:13:23 -06:00
Ignacio Fiorentino
6151a6cfb9 Merge branch 'fix-id-token-at-hash' of https://github.com/brosner/django-oidc-provider into brosner-fix-id-token-at-hash 2016-08-10 18:13:33 -03:00
Graham Ullrich
e822252b6e Use original test files 2016-08-08 12:20:47 -06:00
Graham Ullrich
e04d42fedf flake8 fixes 2016-08-08 11:54:40 -06:00
Graham Ullrich
ffddb69f80 Add tests for at_hash
Ensure at_hash is present in id_token when warranted.
2016-08-08 11:24:07 -06:00
Arkadiy Korotaev
8cbf5c3304 Cleanup urls.py - remove unused and wildcard import 2016-08-08 09:58:36 +04:00
Brian Rosner
afc3a60ee7
Added at_hash when access token is present
This is required by response type "id_token token", but can be
used by other flows if they choose.
2016-08-05 14:00:00 -06:00
Ignacio Fiorentino
2573a60092 Fix test app urls and templates loaders in settings. 2016-08-04 13:35:27 -03:00
Graham Ullrich
ddb62a383b Remove unused import
Update mock requirement.
2016-08-03 23:44:17 -06:00
Florent Jouatte
f4c27ed28d tiny translation 2016-07-29 09:07:25 +02:00
Florent Jouatte
c29514ca64 add french translation (not over) 2016-07-28 10:55:06 +02:00
Ignacio Fiorentino
b70007e4a9 Add ES and FR initial translations. 2016-07-26 17:19:33 -03:00
Ignacio Fiorentino
dc9ec1863e Change setting OIDC_USERINFO. 2016-07-07 12:50:27 -03:00
Ignacio Fiorentino
4cc7474c19 Add verbose name and description for scopes. 2016-06-16 17:18:39 -03:00
Ignacio Fiorentino
739b6ef381 Provide doc for user consent model. 2016-06-13 13:26:33 -03:00
Ignacio Fiorentino
5255719700 Add date_given to UserConsent model. Add verbose names in models. 2016-06-13 12:15:10 -03:00
Ignacio Fiorentino
41f23afa31 Add missing migration. 2016-06-10 10:57:31 -03:00
Ignacio Fiorentino
70c7d128c1 Refactoring views.py. 2016-06-01 12:09:40 -03:00
Ignacio Fiorentino
21e8e89d35 Edit default setting. 2016-05-30 14:26:25 -03:00
Ignacio Fiorentino
eea590e006 Modify scope claims class. 2016-05-30 13:28:07 -03:00
Si Feng
86a921aba7 Fix typo 2016-05-25 15:21:27 -07:00
Si Feng
be5656bcf4 Make SITE_URL optional. 2016-05-25 14:58:58 -07:00
Ignacio Fiorentino
497f2f3a68 Bump version v0.3.3. 2016-05-03 12:17:22 -03:00
Ignacio Fiorentino
a0c7b3c0c4 Create migrations. Improve docs. 2016-04-25 17:33:52 -03:00
Ignacio Fiorentino
9f9df355a3 Merge branch 'v0.3.x' of https://github.com/juanifioren/django-oidc-provider into feature-jwtalg 2016-04-25 14:55:30 -03:00
Ignacio Fiorentino
b8f442184c Remove migration. 2016-04-25 14:51:00 -03:00
Ignacio Fiorentino
8320394a67 Refactoring variables. 2016-04-14 17:45:30 -03:00
Ignacio Fiorentino
bc6a083571 Refactoring tests. 2016-04-14 16:22:38 -03:00
Ignacio Fiorentino
41dcb192bc Add support for the other values of the prompt param. 2016-04-13 18:38:38 -03:00
Ignacio Fiorentino
61f0c209af Refactoring prompt=none logic. 2016-04-13 17:19:37 -03:00
John Kristensen
2f54e53766 Ensure client redirect URIs with query strings work
In some cases a client will provide a redirect URI with a query string.
In these cases the client redirect URI should still still match a
registered redirect URI and not result in a failure.
2016-04-13 22:29:21 +10:00
Ignacio Fiorentino
b05894bf6d Add prompt parameter to authorize view. 2016-04-12 18:19:16 -03:00
Ignacio Fiorentino
3f5992100a Not auto-approve requests for non-confidential clients. 2016-04-08 18:09:24 -03:00
Ignacio Fiorentino
e97c32acd1 Fix encoding problem when using Py34. 2016-04-08 13:22:05 -03:00
Ignacio Fiorentino
559f90c5a6 Remove pdb. 2016-04-07 16:36:42 -03:00
Ignacio Fiorentino
e495d6c41d Remplace AES encryption with database. For saving PKCE parameters. 2016-04-07 16:18:47 -03:00
Ignacio
b1b8247cb0 Add hidden inputs for PKCE. Fix bug with AES. 2016-04-07 11:45:35 -03:00
Ignacio Fiorentino
6e8af74f76 First intent to implement PKCE. 2016-04-06 18:03:30 -03:00
Juan Ignacio Fiorentino
2c4ab6695e Removing print. 2016-04-05 19:08:49 -03:00
Ignacio Fiorentino
a3247db273 Improve handle of client_secret with client_types. 2016-04-05 18:31:08 -03:00
Ignacio Fiorentino
1a74bcbc5c Add client type to client creation form. 2016-04-04 17:19:49 -03:00
Juan Ignacio Fiorentino
f44b5a1114 Update provider info supporting HS256 id_token sign alg. 2016-03-22 20:48:30 -03:00
Ignacio Fiorentino
dff76cd1ea Add HS256 support for JWS. 2016-03-22 16:17:56 -03:00
Nick Mohoric
f8dce31fa2 Changed logging from error to debug 2016-03-17 14:31:41 -04:00
Wojciech Bartosiak
08033bb9ad Fix missing verification of response type for client 2016-03-08 13:21:55 +00:00
Wojciech Bartosiak
5d57c4919c Fix encoding of client secret 2016-03-08 12:57:47 +00:00
Wojciech Bartosiak
7cb5b4d54e str or list or tuple for OIDC_ID_TOKEN_PROCESSING_HOOK 2016-03-01 17:54:57 +00:00
Ignacio
a4d5f89536 Merge branch 'v0.2.x' of https://github.com/juanifioren/django-oidc-provider into v0.3.x
Conflicts:
	oidc_provider/lib/utils/common.py
	oidc_provider/lib/utils/token.py
2016-02-25 10:10:07 -03:00
Ilya
49e19e7493 ID_TOKEN_PROCESSING_HOOK gets user argument 2016-02-25 09:46:10 +00:00
juanifioren
fb4e9bd8fe Fix openid scope in authorize view. 2016-02-18 16:03:46 -03:00
Wojciech Bartosiak
56ffd92ee8 added 'user' into default_idtoken_processing_hook 2016-02-17 22:30:10 +00:00
Wojciech Bartosiak
509100f8ad added 'user' into default_idtoken_processing_hook 2016-02-17 22:28:08 +00:00
Wojciech Bartosiak
a28db60d9e added 'user' into default_idtoken_processing_hook 2016-02-17 22:24:02 +00:00
Wojciech Bartosiak
eb7686abba added 'user' into default_idtoken_processing_hook 2016-02-17 22:23:10 +00:00
juanifioren
25a59c8344 Refactoring supporting OAuth2 flow. 2016-02-16 17:33:12 -03:00
juanifioren
3da1ff4c85 Add StandardScopeClaims import. 2016-02-15 17:21:46 -03:00
juanifioren
6488386692 Remove wrong import. 2016-02-15 17:17:43 -03:00
juanifioren
8eb0877d89 Refactoring userinfo endpoint. Create decorator "oauth2.protected_resource_view". 2016-02-15 17:13:19 -03:00
Juan Ignacio Fiorentino
58482a6585 Merge pull request #80 from wojtek-fliposports/v0.2.x
Fixed PEB8 warning about initialization and comparison to None.
2016-02-15 16:46:26 -03:00
Wojciech Bartosiak
c0f79a196d Fixed PEB8 warning about initialization and comparison to None 2016-02-15 19:42:08 +00:00
juanifioren
782befd6ec Rename setting. 2016-02-12 14:51:43 -03:00
Wojciech Bartosiak
7a357001b6 Added OIDC_ID_TOKEN_PROCESSING_HOOK functionality 2016-02-12 16:02:35 +00:00
Juan Ignacio Fiorentino
41f88b23c7 Merge pull request #77 from nmohoric/remove-deprecated-patterns
Remove patterns which will be deprecated in 1.10.
2016-02-03 14:37:34 -03:00
Nick Mohoric
be5ffde03b Remove patterns which will be deprecated in 1.10 2016-02-02 17:57:23 -05:00
juanifioren
584e0c951b Adding missing migrations. 2016-02-02 16:46:22 -03:00
juanifioren
6646bdb92a Add OIDC_SKIP_CONSENT_ALWAYS setting. 2016-02-01 14:34:39 -03:00
juanifioren
32555eb660 Remove old OIDC_RSA_KEY_FOLDER setting from example project and tests. 2016-01-25 18:01:54 -03:00
juanifioren
998ea5fcd1 Implementation of RSA Keys using Models. Also providing DOC. 2016-01-25 17:52:24 -03:00
juanifioren
50d14b037b Add nonce to the decide form. 2016-01-20 17:10:15 -03:00
juanifioren
41dc9bf4a9 Add "Allow-Origin" header to jwks endpoint. 2016-01-20 17:08:47 -03:00
juanifioren
73ece1bf64 Make OIDC_AFTER_USERLOGIN_HOOK to be lazy imported by string. 2016-01-19 17:37:32 -03:00
juanifioren
44a32a55ad Add tests for Implicit Flow. 2016-01-19 16:08:13 -03:00
juanifioren
c6534db693 Add nonce validation for Implicit Flow. 2016-01-19 16:05:34 -03:00
Pablo SEMINARIO
9204c478ed Fix #72 get_issuer() returns a wrong value 2016-01-16 11:35:26 +01:00
juanifioren
ccd9836edb Make OIDC_IDTOKEN_SUB_GENERATOR to be lazy imported by the location of the function. 2016-01-12 15:17:22 -03:00
juanifioren
6e1f0822aa Auto-generate client_id and client_secret in the admin. 2016-01-11 16:04:04 -03:00
Wojciech Bartosiak
45b0f2e5d1 Fixed generating key in wrong folder - ignoring value of OIDC_RSA_KEY_FOLDER 2016-01-10 20:58:11 +00:00
juanifioren
4aa32f792c Merge branch 'v0.2.x' of https://github.com/juanifioren/django-oidc-provider into v0.2.x 2015-12-04 13:57:31 -03:00
juanifioren
ae9ecb2dde Add new app configuration file. 2015-12-04 13:55:34 -03:00
juanifioren
cd45f29403 Improve admin models. 2015-12-04 13:55:04 -03:00
Ignacio
153730e5f9 Fix posible bug with pyjwkest==1.0.8. Revert to version 1.0.6. 2015-12-03 13:29:57 -03:00
juanifioren
121f7f22cb Fix in tests when using JWS.verify_compact. Need allow_none set to True. 2015-12-01 14:42:39 -03:00
Juan Ignacio Fiorentino
146752b7d9 Merge pull request #62 from nmohoric/master
Allowing urls without slashes
2015-12-01 12:06:30 -03:00
Nick Mohoric
4b15610df9 Allowing urls without slashes 2015-12-01 09:51:54 -05:00
juanifioren
8b0d869f7b Replace django redirect with custom HttpResponse object. 2015-11-12 17:12:18 -03:00
Sjoerd Langkemper
2fc4c138b3 Make (user, client) unique on UserConsent
We assume this combination is unique with our get and get_or_create
calls.
2015-11-10 11:29:05 +01:00
Nick Mohoric
16208c1092 Fix incorrect mixture of %s and format 2015-11-02 11:19:03 -05:00
Juan Ignacio Fiorentino
4c9dfefedd Merge pull request #52 from pabluk/creatersakey-command-py3
Fix creatersakey management command support for Python 3.x
2015-10-19 17:10:42 -03:00
Pablo SEMINARIO
db977f65a6 Append binary file mode to write RSA exported key needed by Python 3 2015-10-19 21:46:25 +02:00
Pablo SEMINARIO
b89115165c Fix use of deprecated Exception.message in Python 3 2015-10-19 21:46:25 +02:00
Pablo SEMINARIO
daee582207 Remove unused CommandError import 2015-10-19 21:46:25 +02:00
Pablo SEMINARIO
36f8bcbb5d Add a basic test for the creatersakey management command 2015-10-19 21:46:25 +02:00
juanifioren
20cc2a1b20 Fix Unicode bug in Client model. 2015-10-19 16:38:41 -03:00
Pablo SEMINARIO
6ff48091e5 Fix #49 updating pyjwkest version to 1.0.6
pyjwkest has changed the type of value returned by the `long_to_base64`
function, now it returns unicode.
2015-10-17 23:49:59 +02:00
juanifioren
9a685a7afa Merge from ByteInternet:refresh-tokens 2015-09-30 12:59:08 -03:00
Maarten van Schaik
893a877b76 Upgrade pyjwkest to version > 1.0.3
There have been some issues in Python 3 where elements of the id_token
were left when encoding the token. Cause was incorrect encoding logic in
pyjwkest. Version 1.0.3 has improved encoding handling.
2015-09-30 17:31:49 +02:00
Maarten van Schaik
f4dfa7303f Forget old token when a refresh token is used 2015-09-30 16:46:33 +02:00
Maarten van Schaik
8d672cc1ba Add support for refresh_token to token endpoint 2015-09-30 14:55:48 +02:00
Maarten van Schaik
03d2770f5e Store refresh token 2015-09-30 12:42:04 +02:00
juanifioren
c76f73eb7e Bump version 0.2.0. 2015-09-25 17:24:58 -03:00
juanifioren
5311888520 Merge branch 'v0.1.x' of https://github.com/juanifioren/django-oidc-provider into v0.2.x
Conflicts:
	README.rst
2015-08-12 15:21:57 -03:00
Rob Sung
19313e8145 Fxed: ID token does not contain kid #42 2015-08-11 23:50:05 -04:00
juanifioren
18b492d1db Add tests for userinfo claims. 2015-08-11 15:59:57 -03:00
juanifioren
5020ccde80 Add custom user info model feature. 2015-08-11 15:58:52 -03:00
juanifioren
165c316bbe Add new migrations. 2015-08-05 14:51:18 -03:00
juanifioren
d6d7e60ef5 Remove UserInfo from admin.py. 2015-08-05 13:21:17 -03:00
juanifioren
6aa656e361 Remove UserInfo Model. 2015-08-05 13:19:53 -03:00
juanifioren
8040dd7670 Remove unnecessary property in error class. 2015-08-03 15:09:12 -03:00
juanifioren
e178f8c1a9 Add token_endpoint_auth_methods_supported to discovery. 2015-07-31 14:59:33 -03:00
juanifioren
7658257d18 Refactoring in discovery. 2015-07-31 14:19:53 -03:00
juanifioren
83c21cec40 Add tests for HTTP Basic Client auth. 2015-07-30 15:49:48 -03:00
juanifioren
6c4dad8c5c Imports in alphabetical order. 2015-07-30 15:49:12 -03:00
juanifioren
870c605211 Add HTTP Basic client auth in token endpoint. 2015-07-30 15:47:50 -03:00
juanifioren
87b0deb357 Merge branch 'v0.1.x' of https://github.com/juanifioren/django-oidc-provider 2015-07-28 15:56:00 -03:00
juanifioren
253527aa52 Refactoring in authorize endpoint. 2015-07-28 15:55:30 -03:00
juanifioren
46b0c2f244 Add test to authorize endpoint. 2015-07-28 15:54:52 -03:00
juanifioren
92b75ba1d9 Sending access_token as query string parameter in UserInfo. 2015-07-27 18:28:12 -03:00
juanifioren
cd2b47dac1 Merge branch 'master' of https://github.com/juanifioren/django-oidc-provider 2015-07-27 16:07:21 -03:00
juanifioren
401a35f68f Encode id_token in tests. 2015-07-27 15:51:19 -03:00
juanifioren
a640b33dd6 Convert "aud" to str in create_id_token function. 2015-07-27 15:50:02 -03:00
Ignacio
064b36d615 Fix tests with pyjwkest package. 2015-07-27 11:35:05 -03:00
Ignacio
bedd114929 Use pyjwkest in encode_id_token function. 2015-07-27 11:33:28 -03:00
Maarten van Schaik
6e513cfb73 Add tests for logout view 2015-07-24 12:13:31 +02:00
Maarten van Schaik
76efb6fc68 Add logout view to enable minimal session mgmt
This implements a very small part of the OIDC session management as
described in
http://openid.net/specs/openid-connect-session-1_0-17.html#rfc.section.5.

It does not implement the full session management (using iframes) and
does not implement the registration and verification of logout redirect
uri's.
2015-07-24 11:36:45 +02:00
juanifioren
162416bfae Add missing encode in test. 2015-07-23 16:28:20 -03:00
juanifioren
01bf1ee5e6 In python 3 use "int" instead of "long". 2015-07-23 16:22:42 -03:00
juanifioren
895ca36ab5 Add decode "utf-8" to jwks_uri view. My fault! 2015-07-23 16:17:28 -03:00
juanifioren
d17efb7f0c Add encode "utf-8" to jwks_uri view. 2015-07-23 16:13:26 -03:00
juanifioren
0445f737f2 Fix unicode error python3. 2015-07-23 16:07:55 -03:00
Maarten van Schaik
85eb13b1f9 Don't filter all falsy claims
Sometimes you do want the value False, or 0, or any datetime value at
midnight. (http://lwn.net/Articles/590299/)
2015-07-23 15:03:01 +02:00
juanifioren
9b3ba5652f Add idtoken_sign_validation test. 2015-07-22 18:22:46 -03:00
juanifioren
b9806ed102 Remove unnecessary settings rewrite in tests. 2015-07-22 16:25:17 -03:00
Maarten van Schaik
f8366b18f7 Explicitly import the right settings 2015-07-21 15:59:23 +02:00
Maarten van Schaik
77230af4c3 Use models setting instead of User 2015-07-21 15:57:23 +02:00
juanifioren
2de1394202 Add id_token_signing_alg_values_supported to discovery endpoint. 2015-07-17 11:52:58 -03:00
juanifioren
a08dbdb7d2 Merge branch 'master' of https://github.com/juanifioren/django-oidc-provider into v0.1.0-dev
Conflicts:
	example_project/.gitignore
2015-07-17 11:32:14 -03:00
juanifioren
91ae9ba9ff Add one test for request not containing nonce parameter. 2015-07-16 15:58:33 -03:00
juanifioren
882def8124 Fix tests for using nonce parameter. 2015-07-16 15:04:33 -03:00
juanifioren
a690a57a03 Fix nonce parameter inside token endpoint. 2015-07-16 14:25:58 -03:00
juanifioren
6dde3a59a8 Add nonce to Code model. Modify create_code function. 2015-07-15 16:23:36 -03:00
juanifioren
0de868941a Modify create_id_token function for supporting nonce. 2015-07-15 16:18:34 -03:00
juanifioren
c995da640c Remove _extract_implicit_params function. 2015-07-15 15:17:47 -03:00
juanifioren
6fc6126a62 Add nonce to _extract_params function. 2015-07-15 15:16:51 -03:00
Sjoerd Langkemper
0882c5c63b Make the sub a string
In the default sub generator. The spec says "The sub value is a case
sensitive string."
2015-07-15 12:17:21 +02:00
Sjoerd Langkemper
00f30dabbf Convert times to int
Make iat_time, exp_time, auth_time an integer, not a float. The spec
does not explicitly forbit float times, but some clients don't accept
this (mod_auth_openidc), and `timetuple()` has second precision anyway
so we don't loose any information.
2015-07-15 12:06:02 +02:00
juanifioren
80f89889bb Add example key file for tests. 2015-07-14 15:01:32 -03:00
juanifioren
1736d7b7ae Add IOError custom message when rsa key file is missing. 2015-07-14 15:01:01 -03:00
juanifioren
211f942eec Fix imports in tests. 2015-07-14 14:52:48 -03:00
juanifioren
051c29a262 Refactoring tests. 2015-07-14 13:27:46 -03:00
juanifioren
fa7d64c04b Add OIDC_RSA_KEY_FOLDER to settings. 2015-07-14 13:01:29 -03:00