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
juanifioren
f52db34d00
Reorder imports.
2015-07-14 12:44:25 -03:00
juanifioren
5371fbfba9
Merge branch 'master' of https://github.com/juanifioren/django-oidc-provider into v0.1.0-dev
...
Conflicts:
oidc_provider/lib/endpoints/authorize.py
2015-07-13 17:47:19 -03:00
juanifioren
82c0e7874e
Add jwks endpoint to discovery.
2015-07-13 17:38:38 -03:00
juanifioren
fe153f51a6
Correct encode_id_token function.
2015-07-13 17:38:03 -03:00
juanifioren
3498940142
Encode id_toke with using RSA now.
2015-07-13 17:37:13 -03:00
juanifioren
f7e8fa460c
Create get_rsa_key function to obtain the key from filesystem.
2015-07-13 17:36:15 -03:00
juanifioren
5ba5b1581d
Add Jwks url to urls.py.
2015-07-13 17:35:18 -03:00
juanifioren
a22fc7c1a1
Add Jwks view to views.py.
2015-07-13 17:34:43 -03:00
juanifioren
7e52112a31
Add missing __init__ file.
2015-07-13 17:18:13 -03:00
juanifioren
2fc83f6aa6
Add missing __init__ file.
2015-07-13 16:25:11 -03:00
juanifioren
9eb5f67a95
Add a command for creating rsa key.
2015-07-13 15:49:08 -03:00
Juan Ignacio Fiorentino
1faeb6d5ab
Merge pull request #31 from ByteInternet/nonce-in-id-token
...
Add nonce in id_token when included in auth request
2015-07-10 10:29:55 -03:00
Maarten van Schaik
a4fcf956c2
Add nonce in id_token when included in auth request
...
http://openid.net/specs/openid-connect-core-1_0.html#IDToken
If present in the Authentication Request, Authorization Servers MUST
include a nonce Claim in the ID Token with the Claim Value being the
nonce value sent in the Authentication Request.
This patch adds the nonce to the id_token.
2015-07-10 14:44:26 +02:00
Maarten van Schaik
7632054aad
Add support for redirect_uris with query params
...
Some clients might add extra parameters to the redirect_uri, for
instance as extra verification if proper state parameter handling is not
supported.
This patch adds proper handling of redirect_uris with query parameters.
2015-07-10 12:22:25 +02:00
juanifioren
27110b65e4
Use decode with utf-8 encoding.
2015-07-01 17:20:16 -03:00
juanifioren
447d026a41
Add urllib and change iteritems() with items().
2015-07-01 16:43:35 -03:00
juanifioren
e2a0f8ec60
Add urllib compatibility.
2015-07-01 12:53:41 -03:00
juanifioren
74212d6961
Clean test.
2015-07-01 12:26:00 -03:00
juanifioren
197818566d
Rename setting.
2015-06-24 12:40:00 -03:00
juanifioren
4021441c76
Add test for user consent skip feature.
2015-06-23 16:32:12 -03:00
juanifioren
44bbe78723
Clean templates in tests.
2015-06-23 15:05:47 -03:00
juanifioren
503324ae66
Add user consent logic to authorize endpoint.
2015-06-22 18:42:42 -03:00
juanifioren
544861abec
Add UserConsent to models.
2015-06-22 18:42:04 -03:00
juanifioren
9211b4200a
Add settings for user consent.
2015-06-22 18:41:42 -03:00
juanifioren
fea181bf41
Add migrations for user consent.
2015-06-22 18:40:38 -03:00
juanifioren
68b4847219
Refactoring error logging.
2015-06-19 17:46:00 -03:00
juanifioren
b659dd95d3
Fix in settings when importing from string.
2015-06-19 15:37:42 -03:00
juanifioren
bcb144dcdb
Now OIDC_EXTRA_SCOPE_CLAIMS must be a string (lazy imported).
2015-06-19 15:19:46 -03:00
juanifioren
8f47f906de
Fix when returning address_formatted.
2015-06-16 14:35:07 -03:00
juanifioren
48fcb1da93
Move validate_params function to views (on POST authorize).
2015-06-15 17:34:36 -03:00