omniauth-auth0 2.0.0 → 3.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.circleci/config.yml +63 -0
- data/.devcontainer/devcontainer.json +18 -0
- data/.github/CODEOWNERS +1 -0
- data/.github/ISSUE_TEMPLATE/config.yml +8 -0
- data/.github/ISSUE_TEMPLATE/feature_request.md +39 -0
- data/.github/ISSUE_TEMPLATE/report_a_bug.md +55 -0
- data/.github/PULL_REQUEST_TEMPLATE.md +32 -0
- data/.github/stale.yml +20 -0
- data/.github/workflows/semgrep.yml +24 -0
- data/.gitignore +5 -2
- data/.semgrepignore +4 -0
- data/.shiprc +7 -0
- data/.snyk +9 -0
- data/CHANGELOG.md +212 -4
- data/CONTRIBUTING.md +71 -0
- data/EXAMPLES.md +167 -0
- data/Gemfile +17 -17
- data/Gemfile.lock +180 -0
- data/README.md +117 -92
- data/Rakefile +2 -2
- data/codecov.yml +22 -0
- data/lib/omniauth/auth0/errors.rb +11 -0
- data/lib/omniauth/auth0/jwt_validator.rb +278 -0
- data/lib/omniauth/auth0/telemetry.rb +36 -0
- data/lib/omniauth/strategies/auth0.rb +89 -21
- data/lib/omniauth-auth0/version.rb +1 -1
- data/lib/omniauth-auth0.rb +1 -1
- data/omniauth-auth0.gemspec +6 -7
- data/opslevel.yml +6 -0
- data/spec/omniauth/auth0/jwt_validator_spec.rb +729 -0
- data/spec/omniauth/auth0/telemetry_spec.rb +28 -0
- data/spec/omniauth/strategies/auth0_spec.rb +160 -18
- data/spec/resources/jwks.json +28 -0
- data/spec/spec_helper.rb +12 -7
- metadata +54 -16
- data/.travis.yml +0 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 7c56b51f9b1e20c19151c11b2ebed36d976795af342e1ddb6e2faf8adbd606dc
|
4
|
+
data.tar.gz: d464a395f1a95859ce5bcba3956955e489319f7efd5a263f7e1a904810ab58db
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c24758a4b888a15d499d5a0ad612932f2e452a361fba86dc5af59c812be1c77e10a5735f267e0abfb45e382b381003592b74bbb3fdef8814e58345741a57a978
|
7
|
+
data.tar.gz: a8db445c711acd8b1716baef83f95fad39c7c011c7918a862aabb55b69cae02105df3beced2155298478dc580985a5791acbfa629459116244f924f85e470c57
|
@@ -0,0 +1,63 @@
|
|
1
|
+
version: 2.1
|
2
|
+
orbs:
|
3
|
+
ship: auth0/ship@0
|
4
|
+
codecov: codecov/codecov@3
|
5
|
+
|
6
|
+
matrix_rubyversions: &matrix_rubyversions
|
7
|
+
matrix:
|
8
|
+
parameters:
|
9
|
+
rubyversion: ["2.7", "3.0", "3.1"]
|
10
|
+
# Default version of ruby to use for lint and publishing
|
11
|
+
default_rubyversion: &default_rubyversion "2.7"
|
12
|
+
|
13
|
+
executors:
|
14
|
+
ruby:
|
15
|
+
parameters:
|
16
|
+
rubyversion:
|
17
|
+
type: string
|
18
|
+
default: *default_rubyversion
|
19
|
+
docker:
|
20
|
+
- image: cimg/ruby:<< parameters.rubyversion >>
|
21
|
+
|
22
|
+
jobs:
|
23
|
+
run-tests:
|
24
|
+
parameters:
|
25
|
+
rubyversion:
|
26
|
+
type: string
|
27
|
+
default: *default_rubyversion
|
28
|
+
executor:
|
29
|
+
name: ruby
|
30
|
+
rubyversion: "<< parameters.rubyversion >>"
|
31
|
+
steps:
|
32
|
+
- checkout
|
33
|
+
- restore_cache:
|
34
|
+
keys:
|
35
|
+
- gems-v2-{{ checksum "Gemfile" }}
|
36
|
+
- gems-v2-
|
37
|
+
- run: |
|
38
|
+
echo 'export BUNDLER_VERSION=$(cat Gemfile.lock | tail -1 | tr -d " ")' >> $BASH_ENV
|
39
|
+
source $BASH_ENV
|
40
|
+
gem install bundler
|
41
|
+
bundle check || bundle install
|
42
|
+
- save_cache:
|
43
|
+
key: gems-v2--{{ checksum "Gemfile" }}
|
44
|
+
paths:
|
45
|
+
- vendor/bundle
|
46
|
+
- run: bundle exec rake spec
|
47
|
+
- codecov/upload
|
48
|
+
|
49
|
+
workflows:
|
50
|
+
tests:
|
51
|
+
jobs:
|
52
|
+
- run-tests:
|
53
|
+
<<: *matrix_rubyversions
|
54
|
+
- ship/ruby-publish:
|
55
|
+
context:
|
56
|
+
- publish-rubygems
|
57
|
+
- publish-gh
|
58
|
+
filters:
|
59
|
+
branches:
|
60
|
+
only:
|
61
|
+
- master
|
62
|
+
requires:
|
63
|
+
- run-tests
|
@@ -0,0 +1,18 @@
|
|
1
|
+
{
|
2
|
+
"name": "Ruby",
|
3
|
+
"image": "mcr.microsoft.com/devcontainers/ruby:3.1",
|
4
|
+
"features": {
|
5
|
+
"ghcr.io/devcontainers/features/node:1": {
|
6
|
+
"version": "lts"
|
7
|
+
}
|
8
|
+
},
|
9
|
+
|
10
|
+
// Use 'forwardPorts' to make a list of ports inside the container available locally.
|
11
|
+
// "forwardPorts": [],
|
12
|
+
|
13
|
+
// Use 'postCreateCommand' to run commands after the container is created.
|
14
|
+
// "postCreateCommand": "ruby --version",
|
15
|
+
|
16
|
+
// Set `remoteUser` to `root` to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
|
17
|
+
"remoteUser": "vscode"
|
18
|
+
}
|
data/.github/CODEOWNERS
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
* @auth0/dx-sdks-engineer
|
@@ -0,0 +1,8 @@
|
|
1
|
+
blank_issues_enabled: false
|
2
|
+
contact_links:
|
3
|
+
- name: Auth0 Community
|
4
|
+
url: https://community.auth0.com/c/sdks/5
|
5
|
+
about: Discuss this SDK in the Auth0 Community forums
|
6
|
+
- name: Library Documentation
|
7
|
+
url: https://github.com/auth0/omniauth-auth0#documentation
|
8
|
+
about: Read the library docs on Auth0.com
|
@@ -0,0 +1,39 @@
|
|
1
|
+
---
|
2
|
+
name: Feature request
|
3
|
+
about: Suggest an idea or a feature for this project
|
4
|
+
title: ''
|
5
|
+
labels: feature request
|
6
|
+
assignees: ''
|
7
|
+
---
|
8
|
+
|
9
|
+
<!--
|
10
|
+
**Please do not report security vulnerabilities here**. The Responsible Disclosure Program (https://auth0.com/whitehat) details the procedure for disclosing security issues.
|
11
|
+
|
12
|
+
Thank you in advance for helping us to improve this library! Your attention to detail here is greatly appreciated and will help us respond as quickly as possible. For general support or usage questions, use the Auth0 Community (https://community.auth0.com/) or Auth0 Support (https://support.auth0.com/). Finally, to avoid duplicates, please search existing Issues before submitting one here.
|
13
|
+
|
14
|
+
By submitting an Issue to this repository, you agree to the terms within the Auth0 Code of Conduct (https://github.com/auth0/open-source-template/blob/master/CODE-OF-CONDUCT.md).
|
15
|
+
-->
|
16
|
+
|
17
|
+
### Describe the problem you'd like to have solved
|
18
|
+
|
19
|
+
<!--
|
20
|
+
> A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
21
|
+
-->
|
22
|
+
|
23
|
+
### Describe the ideal solution
|
24
|
+
|
25
|
+
<!--
|
26
|
+
> A clear and concise description of what you want to happen.
|
27
|
+
-->
|
28
|
+
|
29
|
+
## Alternatives and current work-arounds
|
30
|
+
|
31
|
+
<!--
|
32
|
+
> A clear and concise description of any alternatives you've considered or any work-arounds that are currently in place.
|
33
|
+
-->
|
34
|
+
|
35
|
+
### Additional information, if any
|
36
|
+
|
37
|
+
<!--
|
38
|
+
> Add any other context or screenshots about the feature request here.
|
39
|
+
-->
|
@@ -0,0 +1,55 @@
|
|
1
|
+
---
|
2
|
+
name: Report a bug
|
3
|
+
about: Have you found a bug or issue? Create a bug report for this SDK
|
4
|
+
title: ''
|
5
|
+
labels: bug report
|
6
|
+
assignees: ''
|
7
|
+
---
|
8
|
+
|
9
|
+
<!--
|
10
|
+
**Please do not report security vulnerabilities here**. The Responsible Disclosure Program (https://auth0.com/whitehat) details the procedure for disclosing security issues.
|
11
|
+
|
12
|
+
Thank you in advance for helping us to improve this library! Please read through the template below and answer all relevant questions. Your additional work here is greatly appreciated and will help us respond as quickly as possible. For general support or usage questions, use the Auth0 Community (https://community.auth0.com/) or Auth0 Support (https://support.auth0.com/). Finally, to avoid duplicates, please search existing Issues before submitting one here.
|
13
|
+
|
14
|
+
By submitting an Issue to this repository, you agree to the terms within the Auth0 Code of Conduct (https://github.com/auth0/open-source-template/blob/master/CODE-OF-CONDUCT.md).
|
15
|
+
-->
|
16
|
+
|
17
|
+
### Describe the problem
|
18
|
+
|
19
|
+
<!--
|
20
|
+
> Provide a clear and concise description of the issue
|
21
|
+
-->
|
22
|
+
|
23
|
+
### What was the expected behavior?
|
24
|
+
|
25
|
+
<!--
|
26
|
+
> Tell us about the behavior you expected to see
|
27
|
+
-->
|
28
|
+
|
29
|
+
### Reproduction
|
30
|
+
<!--
|
31
|
+
> Detail the steps taken to reproduce this error, and whether this issue can be reproduced consistently or if it is intermittent.
|
32
|
+
> **Note**: If clear, reproducable steps or the smallest sample app demonstrating misbehavior cannot be provided, we may not be able to follow up on this bug report.
|
33
|
+
|
34
|
+
> Where possible, please include:
|
35
|
+
>
|
36
|
+
> - The smallest possible sample app that reproduces the undesirable behavior
|
37
|
+
> - Log files (redact/remove sensitive information)
|
38
|
+
> - Application settings (redact/remove sensitive information)
|
39
|
+
> - Screenshots
|
40
|
+
-->
|
41
|
+
|
42
|
+
- Step 1..
|
43
|
+
- Step 2..
|
44
|
+
- ...
|
45
|
+
|
46
|
+
### Environment
|
47
|
+
|
48
|
+
<!--
|
49
|
+
> Please provide the following:
|
50
|
+
-->
|
51
|
+
|
52
|
+
- **Version of this library used:**
|
53
|
+
- **Which framework are you using, if applicable:**
|
54
|
+
- **Other modules/plugins/libraries that might be involved:**
|
55
|
+
- **Any other relevant information you think would be useful:**
|
@@ -0,0 +1,32 @@
|
|
1
|
+
### Changes
|
2
|
+
|
3
|
+
Please describe both what is changing and why this is important. Include:
|
4
|
+
|
5
|
+
- Endpoints added, deleted, deprecated, or changed
|
6
|
+
- Classes and methods added, deleted, deprecated, or changed
|
7
|
+
- Screenshots of new or changed UI, if applicable
|
8
|
+
- A summary of usage if this is a new feature or change to a public API (this should also be added to relevant documentation once released)
|
9
|
+
|
10
|
+
### References
|
11
|
+
|
12
|
+
Please include relevant links supporting this change such as a:
|
13
|
+
|
14
|
+
- support ticket
|
15
|
+
- community post
|
16
|
+
- StackOverflow post
|
17
|
+
- support forum thread
|
18
|
+
- related GitHub issue in this or another repo
|
19
|
+
|
20
|
+
### Testing
|
21
|
+
|
22
|
+
Please describe how this can be tested by reviewers. Be specific about anything not tested and reasons why. If this library has unit and/or integration testing, tests should be added for new functionality and existing tests should complete without errors.
|
23
|
+
|
24
|
+
* [ ] This change adds unit test coverage
|
25
|
+
* [ ] This change has been tested on the latest version of the platform/language or why not
|
26
|
+
|
27
|
+
### Checklist
|
28
|
+
|
29
|
+
* [ ] I have read the [Auth0 contribution guidelines](https://github.com/auth0/open-source-template/blob/master/GENERAL-CONTRIBUTING.md)
|
30
|
+
* [ ] I have read the [Auth0 Code of Conduct](https://github.com/auth0/open-source-template/blob/master/CODE-OF-CONDUCT.md)
|
31
|
+
* [ ] All existing and new tests complete without errors
|
32
|
+
* [ ] All code quality tools/guidelines in the [CONTRIBUTING documentation](https://github.com/auth0/omniauth-auth0/blob/master/CONTRIBUTING.md) have been run/followed
|
data/.github/stale.yml
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
# Configuration for probot-stale - https://github.com/probot/stale
|
2
|
+
|
3
|
+
# Number of days of inactivity before an Issue or Pull Request becomes stale
|
4
|
+
daysUntilStale: 90
|
5
|
+
|
6
|
+
# Number of days of inactivity before an Issue or Pull Request with the stale label is closed.
|
7
|
+
daysUntilClose: 7
|
8
|
+
|
9
|
+
# Issues or Pull Requests with these labels will never be considered stale. Set to `[]` to disable
|
10
|
+
exemptLabels: []
|
11
|
+
|
12
|
+
# Set to true to ignore issues with an assignee (defaults to false)
|
13
|
+
exemptAssignees: true
|
14
|
+
|
15
|
+
# Label to use when marking as stale
|
16
|
+
staleLabel: closed:stale
|
17
|
+
|
18
|
+
# Comment to post when marking as stale. Set to `false` to disable
|
19
|
+
markComment: >
|
20
|
+
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If you have not received a response for our team (apologies for the delay) and this is still a blocker, please reply with additional information or just a ping. Thank you for your contribution! 🙇♂️
|
@@ -0,0 +1,24 @@
|
|
1
|
+
name: Semgrep
|
2
|
+
|
3
|
+
on:
|
4
|
+
pull_request: {}
|
5
|
+
|
6
|
+
push:
|
7
|
+
branches: ["master", "main"]
|
8
|
+
|
9
|
+
schedule:
|
10
|
+
- cron: '30 0 1,15 * *'
|
11
|
+
|
12
|
+
jobs:
|
13
|
+
semgrep:
|
14
|
+
name: Scan
|
15
|
+
runs-on: ubuntu-latest
|
16
|
+
container:
|
17
|
+
image: returntocorp/semgrep
|
18
|
+
if: (github.actor != 'dependabot[bot]')
|
19
|
+
steps:
|
20
|
+
- uses: actions/checkout@v3
|
21
|
+
|
22
|
+
- run: semgrep ci
|
23
|
+
env:
|
24
|
+
SEMGREP_APP_TOKEN: ${{ secrets.SEMGREP_APP_TOKEN }}
|
data/.gitignore
CHANGED
data/.semgrepignore
ADDED
data/.shiprc
ADDED
data/.snyk
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
# Snyk (https://snyk.io) policy file, patches or ignores known vulnerabilities.
|
2
|
+
version: v1.13.5
|
3
|
+
# ignores vulnerabilities until expiry date; change duration by modifying expiry date
|
4
|
+
ignore:
|
5
|
+
SNYK-RUBY-OMNIAUTH-174820:
|
6
|
+
- '*':
|
7
|
+
reason: Not affected.
|
8
|
+
expires: 2020-01-01T00:00:00.000Z
|
9
|
+
patch: {}
|
data/CHANGELOG.md
CHANGED
@@ -1,10 +1,189 @@
|
|
1
1
|
# Change Log
|
2
2
|
|
3
|
+
## [v3.1.0](https://github.com/auth0/omniauth-auth0/tree/v3.1.0) (2022-11-04)
|
4
|
+
|
5
|
+
[Full Changelog](https://github.com/auth0/omniauth-auth0/compare/v3.0.0...v3.1.0)
|
6
|
+
|
7
|
+
**Added**
|
8
|
+
|
9
|
+
- Add ui_locales to permitted params [\#135](https://github.com/auth0/omniauth-auth0/pull/135) ([martijn](https://github.com/martijn))
|
10
|
+
|
11
|
+
**Changed**
|
12
|
+
|
13
|
+
- Store plain Hash in session['authorize_params'] [\#150](https://github.com/auth0/omniauth-auth0/pull/150) ([santry](https://github.com/santry))
|
14
|
+
- Redesign readme to match new style [\#148](https://github.com/auth0/omniauth-auth0/pull/148) ([stevehobbsdev](https://github.com/stevehobbsdev))
|
15
|
+
|
16
|
+
**Fixed**
|
17
|
+
|
18
|
+
- Fix authentication hash link in code sample [\#153](https://github.com/auth0/omniauth-auth0/pull/153) ([ewanharris](https://github.com/ewanharris))
|
19
|
+
|
20
|
+
**Security**
|
21
|
+
|
22
|
+
- [Snyk] Fix for 1 vulnerabilities [\#149](https://github.com/auth0/omniauth-auth0/pull/149) ([snyk-bot](https://github.com/snyk-bot))
|
23
|
+
- Bump addressable from 2.7.0 to 2.8.0 [\#133](https://github.com/auth0/omniauth-auth0/pull/133) ([dependabot[bot]](https://github.com/apps/dependabot))
|
24
|
+
- [Snyk] Security upgrade webmock from 3.12.2 to 3.12.2 [\#134](https://github.com/auth0/omniauth-auth0/pull/134) ([snyk-bot](https://github.com/snyk-bot))
|
25
|
+
|
26
|
+
## [v3.0.0](https://github.com/auth0/omniauth-auth0/tree/v3.0.0) (2021-04-14)
|
27
|
+
|
28
|
+
Version 3.0 introduces [Omniauth v2.0](https://github.com/omniauth/omniauth/releases/tag/v2.0.0) which addresses [CVE-2015-9284](https://nvd.nist.gov/vuln/detail/CVE-2015-9284). Omniauth now defaults to only allow `POST` as the allowed request_phase method. This was previously handled through the recommended [mitigation](https://github.com/omniauth/omniauth/wiki/Resolving-CVE-2015-9284) using the `omniauth-rails_csrf_protection v0.x.x` gem to provide CSRF protection.
|
29
|
+
|
30
|
+
### Upgrading to omniauth-rails_csrf_protection v1.0.0
|
31
|
+
|
32
|
+
If you are using `omniauth-rails_csrf_protection` to provide CSRF protection, you will need to be upgrade to `1.x.x`.
|
33
|
+
|
34
|
+
### BREAKING CHANGES
|
35
|
+
|
36
|
+
Now that OmniAuth now defaults to only `POST` as the allowed request_phase method, if you aren't already, you will need to convert any login links to use [form helpers](https://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html#method-i-form_for) with the `POST` method.
|
37
|
+
|
38
|
+
```html+ruby
|
39
|
+
# OLD -- GET request
|
40
|
+
<a href='/auth/auth0'>Login</a>
|
41
|
+
|
42
|
+
# NEW Example #1 -- POST request
|
43
|
+
<%= link_to 'Login', 'auth/auth0', method: :post %>
|
44
|
+
|
45
|
+
# NEW Example #2 -- POST request
|
46
|
+
<%= button_to 'Login', 'auth/auth0', method: :post %>
|
47
|
+
|
48
|
+
# NEW Example #3 -- POST request
|
49
|
+
<%= form_tag('/auth/auth0', method: :post) do %>
|
50
|
+
<button type='submit'></button>
|
51
|
+
<% end %>
|
52
|
+
```
|
53
|
+
|
54
|
+
### Allowing GET Requests
|
55
|
+
|
56
|
+
In the scenario you absolutely must use GET requests as an allowed request method for authentication, you can override the protection provided with the following config override:
|
57
|
+
|
58
|
+
```ruby
|
59
|
+
# Allowing GET requests will expose you to CVE-2015-9284
|
60
|
+
OmniAuth.config.allowed_request_methods = [:get, :post]
|
61
|
+
```
|
62
|
+
|
63
|
+
## [v2.6.0](https://github.com/auth0/omniauth-auth0/tree/v2.6.0) (2021-04-01)
|
64
|
+
|
65
|
+
[Full Changelog](https://github.com/auth0/omniauth-auth0/compare/v2.5.0...v2.6.0)
|
66
|
+
|
67
|
+
**Added**
|
68
|
+
|
69
|
+
- Org Support [SDK-2395] [\#124](https://github.com/auth0/omniauth-auth0/pull/124) ([davidpatrick](https://github.com/davidpatrick))
|
70
|
+
- Add login_hint to permitted params [\#123](https://github.com/auth0/omniauth-auth0/pull/123) ([Roriz](https://github.com/Roriz))
|
71
|
+
|
72
|
+
## [v2.5.0](https://github.com/auth0/omniauth-auth0/tree/v2.5.0) (2021-01-21)
|
73
|
+
|
74
|
+
[Full Changelog](https://github.com/auth0/omniauth-auth0/compare/v2.4.2...v2.5.0)
|
75
|
+
|
76
|
+
**Added**
|
77
|
+
|
78
|
+
- Parsing claims from the id_token [\#120](https://github.com/auth0/omniauth-auth0/pull/120) ([davidpatrick](https://github.com/davidpatrick))
|
79
|
+
|
80
|
+
**Changed**
|
81
|
+
|
82
|
+
- Setup build matrix in CI [\#116](https://github.com/auth0/omniauth-auth0/pull/116) ([dmathieu](https://github.com/dmathieu))
|
83
|
+
|
84
|
+
**Fixed**
|
85
|
+
|
86
|
+
- Fixes params passed to authorize [\#119](https://github.com/auth0/omniauth-auth0/pull/119) ([davidpatrick](https://github.com/davidpatrick))
|
87
|
+
|
88
|
+
## [v2.4.2](https://github.com/auth0/omniauth-auth0/tree/v2.4.2) (2021-01-19)
|
89
|
+
|
90
|
+
[Full Changelog](https://github.com/auth0/omniauth-auth0/compare/v2.4.1...v2.4.2)
|
91
|
+
|
92
|
+
**Fixed**
|
93
|
+
|
94
|
+
- Lock Omniauth to 1.9 in gemspec
|
95
|
+
|
96
|
+
## [v2.4.1](https://github.com/auth0/omniauth-auth0/tree/v2.4.1) (2020-10-08)
|
97
|
+
|
98
|
+
[Full Changelog](https://github.com/auth0/omniauth-auth0/compare/v2.4.0...v2.4.1)
|
99
|
+
|
100
|
+
**Fixed**
|
101
|
+
|
102
|
+
- Verify the JWT Signature [\#109](https://github.com/auth0/omniauth-auth0/pull/109) ([jimmyjames](https://github.com/jimmyjames))
|
103
|
+
|
104
|
+
## [v2.4.0](https://github.com/auth0/omniauth-auth0/tree/v2.4.0) (2020-09-22)
|
105
|
+
|
106
|
+
[Full Changelog](https://github.com/auth0/omniauth-auth0/compare/v2.3.1...v2.4.0)
|
107
|
+
|
108
|
+
**Security**
|
109
|
+
|
110
|
+
- Bump rack from 2.2.2 to 2.2.3 [\#107](https://github.com/auth0/omniauth-auth0/pull/107) ([dependabot](https://github.com/dependabot))
|
111
|
+
- Update dependencies [\#100](https://github.com/auth0/omniauth-auth0/pull/100) ([Albalmaceda](https://github.com/Albalmaceda))
|
112
|
+
|
113
|
+
**Added**
|
114
|
+
|
115
|
+
- Add support for screen_hint=signup param [\#103](https://github.com/auth0/omniauth-auth0/pull/103) ([bbean86](https://github.com/bbean86))
|
116
|
+
- Add support for `connection_scope` in params [\#99](https://github.com/auth0/omniauth-auth0/pull/99) ([felixclack](https://github.com/felixclack))
|
117
|
+
|
118
|
+
## [v2.3.1](https://github.com/auth0/omniauth-auth0/tree/v2.3.1) (2020-03-27)
|
119
|
+
|
120
|
+
[Full Changelog](https://github.com/auth0/omniauth-auth0/compare/v2.3.0...v2.3.1)
|
121
|
+
|
122
|
+
**Fixed bugs:**
|
123
|
+
|
124
|
+
- Fixes dependency issue [\#97](https://github.com/auth0/omniauth-auth0/pull/97) ([davidpatrick](https://github.com/davidpatrick))
|
125
|
+
- Fix "NameError: uninitialized constant OmniAuth::Auth0::TokenValidationError" [\#96](https://github.com/auth0/omniauth-auth0/pull/96) ([stefanwork](https://github.com/stefanwork))
|
126
|
+
|
127
|
+
## [v2.3.0](https://github.com/auth0/omniauth-auth0/tree/v2.3.0) (2020-03-06)
|
128
|
+
|
129
|
+
[Full Changelog](https://github.com/auth0/omniauth-auth0/compare/v2.2.0...v2.3.0)
|
130
|
+
|
131
|
+
**Added**
|
132
|
+
|
133
|
+
- Improved OIDC Compliance [\#92](https://github.com/auth0/omniauth-auth0/pull/92) ([davidpatrick](https://github.com/davidpatrick))
|
134
|
+
|
135
|
+
## [v2.2.0](https://github.com/auth0/omniauth-auth0/tree/v2.2.0) (2018-04-18)
|
136
|
+
|
137
|
+
[Full Changelog](https://github.com/auth0/omniauth-auth0/compare/v2.1.0...v2.2.0)
|
138
|
+
|
139
|
+
**Closed issues**
|
140
|
+
|
141
|
+
- It supports custom domain? [\#71](https://github.com/auth0/omniauth-auth0/issues/71)
|
142
|
+
- Valid Login, No Details: email=nil image=nil name="github|38257089" nickname=nil [\#70](https://github.com/auth0/omniauth-auth0/issues/70)
|
143
|
+
|
144
|
+
**Added**
|
145
|
+
|
146
|
+
- Custom issuer [\#77](https://github.com/auth0/omniauth-auth0/pull/77) ([ryan-rosenfeld](https://github.com/ryan-rosenfeld))
|
147
|
+
- Add telemetry to token endpoint [\#74](https://github.com/auth0/omniauth-auth0/pull/74) ([joshcanhelp](https://github.com/joshcanhelp))
|
148
|
+
|
149
|
+
**Changed**
|
150
|
+
|
151
|
+
- Remove telemetry from authorize URL [\#75](https://github.com/auth0/omniauth-auth0/pull/75) ([joshcanhelp](https://github.com/joshcanhelp))
|
152
|
+
|
153
|
+
## [v2.1.0](https://github.com/auth0/omniauth-auth0/tree/v2.1.0) (2018-10-30)
|
154
|
+
|
155
|
+
[Full Changelog](https://github.com/auth0/omniauth-auth0/compare/v2.0.0...v2.1.0)
|
156
|
+
|
157
|
+
**Closed issues**
|
158
|
+
|
159
|
+
- URL should be spelled uppercase outside of code [\#64](https://github.com/auth0/omniauth-auth0/issues/64)
|
160
|
+
- Add prompt=none authorization param handler [\#58](https://github.com/auth0/omniauth-auth0/issues/58)
|
161
|
+
- Could not find a valid mapping for path "/auth/oauth2/callback" [\#56](https://github.com/auth0/omniauth-auth0/issues/56)
|
162
|
+
- I had to downgrade my gems to use this strategy :-( [\#53](https://github.com/auth0/omniauth-auth0/issues/53)
|
163
|
+
- CSRF detected [\#49](https://github.com/auth0/omniauth-auth0/issues/49)
|
164
|
+
- /auth/:provider route not registered? [\#47](https://github.com/auth0/omniauth-auth0/issues/47)
|
165
|
+
|
166
|
+
**Added**
|
167
|
+
|
168
|
+
- Add ID token validation [\#62](https://github.com/auth0/omniauth-auth0/pull/62) ([joshcanhelp](https://github.com/joshcanhelp))
|
169
|
+
- Silent authentication [\#59](https://github.com/auth0/omniauth-auth0/pull/59) ([batalla3692](https://github.com/batalla3692))
|
170
|
+
- Pass connection parameter to auth0 [\#54](https://github.com/auth0/omniauth-auth0/pull/54) ([tomgi](https://github.com/tomgi))
|
171
|
+
|
172
|
+
**Changed**
|
173
|
+
|
174
|
+
- Update to omniauth-oauth2 [\#55](https://github.com/auth0/omniauth-auth0/pull/55) ([chills42](https://github.com/chills42))
|
175
|
+
|
176
|
+
**Fixed**
|
177
|
+
|
178
|
+
- Fix Rubocop errors [\#66](https://github.com/auth0/omniauth-auth0/pull/66) ([joshcanhelp](https://github.com/joshcanhelp))
|
179
|
+
- Fix minute bug in README.md [\#63](https://github.com/auth0/omniauth-auth0/pull/63) ([rahuldess](https://github.com/rahuldess))
|
180
|
+
|
3
181
|
## [v2.0.0](https://github.com/auth0/omniauth-auth0/tree/v2.0.0) (2017-01-25)
|
182
|
+
|
4
183
|
[Full Changelog](https://github.com/auth0/omniauth-auth0/compare/v1.4.1...v2.0.0)
|
5
184
|
|
6
185
|
Updated library to handle OIDC conformant clients and OAuth2 features in Auth0.
|
7
|
-
This affects how the `credentials` and `info` attributes are populated since the payload of /oauth/token and /userinfo are
|
186
|
+
This affects how the `credentials` and `info` attributes are populated since the payload of /oauth/token and /userinfo are different when using OAuth2/OIDC features.
|
8
187
|
|
9
188
|
The `credentials` hash will always have an `access_token` and might have a `refresh_token` (if it's allowed in your API settings in Auth0 dashboard and requested using `offline_access` scope) and an `id_token` (scope `openid` is needed for Auth0 to return it).
|
10
189
|
|
@@ -17,7 +196,37 @@ The `info` object will use the [OmniAuth schema](https://github.com/omniauth/omn
|
|
17
196
|
|
18
197
|
Also in `extra` will have in `raw_info` the full /userinfo response.
|
19
198
|
|
199
|
+
**Fixed**
|
200
|
+
|
201
|
+
- Use image attribute of omniauth instead of picture [\#45](https://github.com/auth0/omniauth-auth0/pull/45) ([hzalaz](https://github.com/hzalaz))
|
202
|
+
- Rework strategy to handle OAuth and OIDC [\#44](https://github.com/auth0/omniauth-auth0/pull/44) ([hzalaz](https://github.com/hzalaz))
|
203
|
+
- lock v10 update, dependencies update [\#41](https://github.com/auth0/omniauth-auth0/pull/41) ([Amialc](https://github.com/Amialc))
|
204
|
+
|
205
|
+
## [v1.4.2](https://github.com/auth0/omniauth-auth0/tree/v1.4.2) (2016-06-13)
|
206
|
+
|
207
|
+
[Full Changelog](https://github.com/auth0/omniauth-auth0/compare/v1.4.1...v1.4.2)
|
208
|
+
|
209
|
+
**Added**
|
210
|
+
|
211
|
+
- Link to OmniAuth site [\#36](https://github.com/auth0/omniauth-auth0/pull/36) ([jghaines](https://github.com/jghaines))
|
212
|
+
- add ssl fix to RoR example [\#31](https://github.com/auth0/omniauth-auth0/pull/31) ([Amialc](https://github.com/Amialc))
|
213
|
+
- Update LICENSE [\#17](https://github.com/auth0/omniauth-auth0/pull/17) ([aguerere](https://github.com/aguerere))
|
214
|
+
|
215
|
+
**Changed**
|
216
|
+
|
217
|
+
- Update lock to version 9 [\#34](https://github.com/auth0/omniauth-auth0/pull/34) ([Annyv2](https://github.com/Annyv2))
|
218
|
+
- Update Gemfile [\#22](https://github.com/auth0/omniauth-auth0/pull/22) ([Annyv2](https://github.com/Annyv2))
|
219
|
+
- Update lock [\#15](https://github.com/auth0/omniauth-auth0/pull/15) ([Annyv2](https://github.com/Annyv2))
|
220
|
+
|
221
|
+
**Fixed**
|
222
|
+
|
223
|
+
- Fix setup [\#38](https://github.com/auth0/omniauth-auth0/pull/38) ([deepak](https://github.com/deepak))
|
224
|
+
- Added missing instruction [\#30](https://github.com/auth0/omniauth-auth0/pull/30) ([Annyv2](https://github.com/Annyv2))
|
225
|
+
- Fixes undefined Auth0Lock issue [\#28](https://github.com/auth0/omniauth-auth0/pull/28) ([Annyv2](https://github.com/Annyv2))
|
226
|
+
- Update Readme [\#27](https://github.com/auth0/omniauth-auth0/pull/27) ([Annyv2](https://github.com/Annyv2))
|
227
|
+
|
20
228
|
## [v1.4.1](https://github.com/auth0/omniauth-auth0/tree/v1.4.1) (2015-11-18)
|
229
|
+
|
21
230
|
[Full Changelog](https://github.com/auth0/omniauth-auth0/compare/v1.4.0...v1.4.1)
|
22
231
|
|
23
232
|
**Merged pull requests:**
|
@@ -28,6 +237,7 @@ Also in `extra` will have in `raw_info` the full /userinfo response.
|
|
28
237
|
- Add nested module in version.rb [\#9](https://github.com/auth0/omniauth-auth0/pull/9) ([l4u](https://github.com/l4u))
|
29
238
|
|
30
239
|
## [v1.4.0](https://github.com/auth0/omniauth-auth0/tree/v1.4.0) (2015-06-01)
|
240
|
+
|
31
241
|
**Merged pull requests:**
|
32
242
|
|
33
243
|
- Client headers [\#8](https://github.com/auth0/omniauth-auth0/pull/8) ([benschwarz](https://github.com/benschwarz))
|
@@ -36,6 +246,4 @@ Also in `extra` will have in `raw_info` the full /userinfo response.
|
|
36
246
|
- Update README.md [\#3](https://github.com/auth0/omniauth-auth0/pull/3) ([pose](https://github.com/pose))
|
37
247
|
- Fix Markdown typo [\#2](https://github.com/auth0/omniauth-auth0/pull/2) ([dentarg](https://github.com/dentarg))
|
38
248
|
|
39
|
-
|
40
|
-
|
41
|
-
\* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)*
|
249
|
+
\* _This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)_
|
data/CONTRIBUTING.md
ADDED
@@ -0,0 +1,71 @@
|
|
1
|
+
# Contribution
|
2
|
+
|
3
|
+
**Thank you in advance for your contribution!**
|
4
|
+
|
5
|
+
Please read [Auth0's contribution guidelines](https://github.com/auth0/open-source-template/blob/master/GENERAL-CONTRIBUTING.md) before beginning work on your contribution here.
|
6
|
+
|
7
|
+
## Environment setup
|
8
|
+
|
9
|
+
The best way we've found to develop gems locally is by using a local setting for your Bundler config. First, checkout the project locally:
|
10
|
+
|
11
|
+
```bash
|
12
|
+
$ pwd
|
13
|
+
/PROJECT_ROOT/
|
14
|
+
$ mkdir vendor # if one does not exist
|
15
|
+
$ echo "/vendor/" >> .gitignore
|
16
|
+
$ git clone git@github.com:auth0/omniauth-auth0.git vendor/omniauth-auth0
|
17
|
+
Cloning into 'vendor/omniauth-auth0'...
|
18
|
+
```
|
19
|
+
|
20
|
+
Now, run the following command in your project root directory:
|
21
|
+
|
22
|
+
```bash
|
23
|
+
$ bundle config --local local.omniauth-auth0 /PROJECT_ROOT/vendor/omniauth-auth0
|
24
|
+
You are replacing the current local value of local.omniauth-auth0, which is currently nil
|
25
|
+
$ bundle config
|
26
|
+
Settings are listed in order of priority. The top value will be used.
|
27
|
+
local.omniauth-auth0
|
28
|
+
Set for your local app (/PROJECT_ROOT/.bundle/config): "/PROJECT_ROOT/vendor/omniauth-auth0"
|
29
|
+
```
|
30
|
+
|
31
|
+
Finally, add or change the gem include to add a `github:` param:
|
32
|
+
|
33
|
+
```ruby
|
34
|
+
source 'https://rubygems.org'
|
35
|
+
# ...
|
36
|
+
# OmniAuth strategy for authenticating with Auth0
|
37
|
+
gem 'omniauth-auth0', github: 'auth0/omniauth-auth0'
|
38
|
+
#..
|
39
|
+
```
|
40
|
+
|
41
|
+
Now you should be able to make changes locally and have them reflected in your test app. Keep in mind you'll need to restart your app between changes.
|
42
|
+
|
43
|
+
[Great explanation for why this setup works well](https://rossta.net/blog/how-to-specify-local-ruby-gems-in-your-gemfile.html).
|
44
|
+
|
45
|
+
## Testing
|
46
|
+
|
47
|
+
Tests should be added for additional or modified functionality and all tests should run successfully before submitting a PR.
|
48
|
+
|
49
|
+
### Adding tests
|
50
|
+
|
51
|
+
All new tests should be added to the `/spec/omniauth` directory. Testing resources, like JSON fixtures, should be added to the `/spec/resources` directory.
|
52
|
+
|
53
|
+
### Running tests
|
54
|
+
|
55
|
+
Running tests is as simple as:
|
56
|
+
|
57
|
+
```bash
|
58
|
+
$ bundle exec rake spec
|
59
|
+
```
|
60
|
+
|
61
|
+
## Documentation
|
62
|
+
|
63
|
+
Documentation for this gem is primarily done at the code level. All new methods should include a docblock at least.
|
64
|
+
|
65
|
+
## Code quality tools
|
66
|
+
|
67
|
+
Code quality is enforced across the entire gem with Rubocop:
|
68
|
+
|
69
|
+
```bash
|
70
|
+
$ bundle exec rake rubocop
|
71
|
+
```
|