oauth2 2.0.19 → 2.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: oauth2
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.19
4
+ version: 2.0.21
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Boling
@@ -45,14 +45,20 @@ dependencies:
45
45
  requirements:
46
46
  - - "~>"
47
47
  - !ruby/object:Gem::Version
48
- version: '0.1'
48
+ version: '0.2'
49
+ - - ">="
50
+ - !ruby/object:Gem::Version
51
+ version: 0.2.1
49
52
  type: :runtime
50
53
  prerelease: false
51
54
  version_requirements: !ruby/object:Gem::Requirement
52
55
  requirements:
53
56
  - - "~>"
54
57
  - !ruby/object:Gem::Version
55
- version: '0.1'
58
+ version: '0.2'
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: 0.2.1
56
62
  - !ruby/object:Gem::Dependency
57
63
  name: faraday
58
64
  requirement: !ruby/object:Gem::Requirement
@@ -150,7 +156,7 @@ dependencies:
150
156
  version: '2.0'
151
157
  - - ">="
152
158
  - !ruby/object:Gem::Version
153
- version: 2.0.3
159
+ version: 2.0.4
154
160
  type: :runtime
155
161
  prerelease: false
156
162
  version_requirements: !ruby/object:Gem::Requirement
@@ -160,7 +166,7 @@ dependencies:
160
166
  version: '2.0'
161
167
  - - ">="
162
168
  - !ruby/object:Gem::Version
163
- version: 2.0.3
169
+ version: 2.0.4
164
170
  - !ruby/object:Gem::Dependency
165
171
  name: version_gem
166
172
  requirement: !ruby/object:Gem::Requirement
@@ -170,7 +176,7 @@ dependencies:
170
176
  version: '1.1'
171
177
  - - ">="
172
178
  - !ruby/object:Gem::Version
173
- version: 1.1.9
179
+ version: 1.1.10
174
180
  type: :runtime
175
181
  prerelease: false
176
182
  version_requirements: !ruby/object:Gem::Requirement
@@ -180,145 +186,151 @@ dependencies:
180
186
  version: '1.1'
181
187
  - - ">="
182
188
  - !ruby/object:Gem::Version
183
- version: 1.1.9
189
+ version: 1.1.10
184
190
  - !ruby/object:Gem::Dependency
185
- name: addressable
191
+ name: kettle-dev
186
192
  requirement: !ruby/object:Gem::Requirement
187
193
  requirements:
188
194
  - - "~>"
189
195
  - !ruby/object:Gem::Version
190
- version: '2.8'
196
+ version: '2.1'
191
197
  - - ">="
192
198
  - !ruby/object:Gem::Version
193
- version: 2.8.7
199
+ version: 2.1.0
194
200
  type: :development
195
201
  prerelease: false
196
202
  version_requirements: !ruby/object:Gem::Requirement
197
203
  requirements:
198
204
  - - "~>"
199
205
  - !ruby/object:Gem::Version
200
- version: '2.8'
206
+ version: '2.1'
201
207
  - - ">="
202
208
  - !ruby/object:Gem::Version
203
- version: 2.8.7
209
+ version: 2.1.0
204
210
  - !ruby/object:Gem::Dependency
205
- name: nkf
211
+ name: bundler-audit
206
212
  requirement: !ruby/object:Gem::Requirement
207
213
  requirements:
208
214
  - - "~>"
209
215
  - !ruby/object:Gem::Version
210
- version: '0.2'
216
+ version: 0.9.3
211
217
  type: :development
212
218
  prerelease: false
213
219
  version_requirements: !ruby/object:Gem::Requirement
214
220
  requirements:
215
221
  - - "~>"
216
222
  - !ruby/object:Gem::Version
217
- version: '0.2'
223
+ version: 0.9.3
218
224
  - !ruby/object:Gem::Dependency
219
- name: rexml
225
+ name: rake
220
226
  requirement: !ruby/object:Gem::Requirement
221
227
  requirements:
222
228
  - - "~>"
223
229
  - !ruby/object:Gem::Version
224
- version: '3.2'
225
- - - ">="
226
- - !ruby/object:Gem::Version
227
- version: 3.2.5
230
+ version: '13.0'
228
231
  type: :development
229
232
  prerelease: false
230
233
  version_requirements: !ruby/object:Gem::Requirement
231
234
  requirements:
232
235
  - - "~>"
233
236
  - !ruby/object:Gem::Version
234
- version: '3.2'
235
- - - ">="
236
- - !ruby/object:Gem::Version
237
- version: 3.2.5
237
+ version: '13.0'
238
238
  - !ruby/object:Gem::Dependency
239
- name: kettle-dev
239
+ name: require_bench
240
240
  requirement: !ruby/object:Gem::Requirement
241
241
  requirements:
242
242
  - - "~>"
243
243
  - !ruby/object:Gem::Version
244
- version: '2.0'
244
+ version: '1.0'
245
+ - - ">="
246
+ - !ruby/object:Gem::Version
247
+ version: 1.0.4
245
248
  type: :development
246
249
  prerelease: false
247
250
  version_requirements: !ruby/object:Gem::Requirement
248
251
  requirements:
249
252
  - - "~>"
250
253
  - !ruby/object:Gem::Version
251
- version: '2.0'
254
+ version: '1.0'
255
+ - - ">="
256
+ - !ruby/object:Gem::Version
257
+ version: 1.0.4
252
258
  - !ruby/object:Gem::Dependency
253
- name: bundler-audit
259
+ name: appraisal2
254
260
  requirement: !ruby/object:Gem::Requirement
255
261
  requirements:
256
262
  - - "~>"
257
263
  - !ruby/object:Gem::Version
258
- version: 0.9.2
264
+ version: '3.1'
265
+ - - ">="
266
+ - !ruby/object:Gem::Version
267
+ version: 3.1.1
259
268
  type: :development
260
269
  prerelease: false
261
270
  version_requirements: !ruby/object:Gem::Requirement
262
271
  requirements:
263
272
  - - "~>"
264
273
  - !ruby/object:Gem::Version
265
- version: 0.9.2
274
+ version: '3.1'
275
+ - - ">="
276
+ - !ruby/object:Gem::Version
277
+ version: 3.1.1
266
278
  - !ruby/object:Gem::Dependency
267
- name: rake
279
+ name: kettle-test
268
280
  requirement: !ruby/object:Gem::Requirement
269
281
  requirements:
270
282
  - - "~>"
271
283
  - !ruby/object:Gem::Version
272
- version: '13.0'
284
+ version: '2.0'
285
+ - - ">="
286
+ - !ruby/object:Gem::Version
287
+ version: 2.0.3
273
288
  type: :development
274
289
  prerelease: false
275
290
  version_requirements: !ruby/object:Gem::Requirement
276
291
  requirements:
277
292
  - - "~>"
278
293
  - !ruby/object:Gem::Version
279
- version: '13.0'
294
+ version: '2.0'
295
+ - - ">="
296
+ - !ruby/object:Gem::Version
297
+ version: 2.0.3
280
298
  - !ruby/object:Gem::Dependency
281
- name: require_bench
299
+ name: turbo_tests2
282
300
  requirement: !ruby/object:Gem::Requirement
283
301
  requirements:
284
302
  - - "~>"
285
303
  - !ruby/object:Gem::Version
286
- version: '1.0'
304
+ version: '3.1'
287
305
  - - ">="
288
306
  - !ruby/object:Gem::Version
289
- version: 1.0.4
307
+ version: 3.1.1
290
308
  type: :development
291
309
  prerelease: false
292
310
  version_requirements: !ruby/object:Gem::Requirement
293
311
  requirements:
294
312
  - - "~>"
295
313
  - !ruby/object:Gem::Version
296
- version: '1.0'
314
+ version: '3.1'
297
315
  - - ">="
298
316
  - !ruby/object:Gem::Version
299
- version: 1.0.4
317
+ version: 3.1.1
300
318
  - !ruby/object:Gem::Dependency
301
- name: appraisal2
319
+ name: ruby-progressbar
302
320
  requirement: !ruby/object:Gem::Requirement
303
321
  requirements:
304
322
  - - "~>"
305
323
  - !ruby/object:Gem::Version
306
- version: '3.0'
307
- - - ">="
308
- - !ruby/object:Gem::Version
309
- version: 3.0.6
324
+ version: '1.13'
310
325
  type: :development
311
326
  prerelease: false
312
327
  version_requirements: !ruby/object:Gem::Requirement
313
328
  requirements:
314
329
  - - "~>"
315
330
  - !ruby/object:Gem::Version
316
- version: '3.0'
317
- - - ">="
318
- - !ruby/object:Gem::Version
319
- version: 3.0.6
331
+ version: '1.13'
320
332
  - !ruby/object:Gem::Dependency
321
- name: kettle-test
333
+ name: stone_checksums
322
334
  requirement: !ruby/object:Gem::Requirement
323
335
  requirements:
324
336
  - - "~>"
@@ -326,7 +338,7 @@ dependencies:
326
338
  version: '1.0'
327
339
  - - ">="
328
340
  - !ruby/object:Gem::Version
329
- version: 1.0.10
341
+ version: 1.0.3
330
342
  type: :development
331
343
  prerelease: false
332
344
  version_requirements: !ruby/object:Gem::Requirement
@@ -336,81 +348,101 @@ dependencies:
336
348
  version: '1.0'
337
349
  - - ">="
338
350
  - !ruby/object:Gem::Version
339
- version: 1.0.10
351
+ version: 1.0.3
340
352
  - !ruby/object:Gem::Dependency
341
- name: ruby-progressbar
353
+ name: gitmoji-regex
342
354
  requirement: !ruby/object:Gem::Requirement
343
355
  requirements:
344
356
  - - "~>"
345
357
  - !ruby/object:Gem::Version
346
- version: '1.13'
358
+ version: '2.0'
359
+ - - ">="
360
+ - !ruby/object:Gem::Version
361
+ version: 2.0.1
347
362
  type: :development
348
363
  prerelease: false
349
364
  version_requirements: !ruby/object:Gem::Requirement
350
365
  requirements:
351
366
  - - "~>"
352
367
  - !ruby/object:Gem::Version
353
- version: '1.13'
368
+ version: '2.0'
369
+ - - ">="
370
+ - !ruby/object:Gem::Version
371
+ version: 2.0.1
354
372
  - !ruby/object:Gem::Dependency
355
- name: stone_checksums
373
+ name: addressable
356
374
  requirement: !ruby/object:Gem::Requirement
357
375
  requirements:
358
376
  - - "~>"
359
377
  - !ruby/object:Gem::Version
360
- version: '1.0'
378
+ version: '2.8'
361
379
  - - ">="
362
380
  - !ruby/object:Gem::Version
363
- version: 1.0.3
381
+ version: 2.8.7
364
382
  type: :development
365
383
  prerelease: false
366
384
  version_requirements: !ruby/object:Gem::Requirement
367
385
  requirements:
368
386
  - - "~>"
369
387
  - !ruby/object:Gem::Version
370
- version: '1.0'
388
+ version: '2.8'
371
389
  - - ">="
372
390
  - !ruby/object:Gem::Version
373
- version: 1.0.3
391
+ version: 2.8.7
374
392
  - !ruby/object:Gem::Dependency
375
- name: gitmoji-regex
393
+ name: backports
376
394
  requirement: !ruby/object:Gem::Requirement
377
395
  requirements:
378
396
  - - "~>"
379
397
  - !ruby/object:Gem::Version
380
- version: '1.0'
398
+ version: '3.25'
381
399
  - - ">="
382
400
  - !ruby/object:Gem::Version
383
- version: 1.0.3
401
+ version: 3.25.1
384
402
  type: :development
385
403
  prerelease: false
386
404
  version_requirements: !ruby/object:Gem::Requirement
387
405
  requirements:
388
406
  - - "~>"
389
407
  - !ruby/object:Gem::Version
390
- version: '1.0'
408
+ version: '3.25'
391
409
  - - ">="
392
410
  - !ruby/object:Gem::Version
393
- version: 1.0.3
411
+ version: 3.25.1
394
412
  - !ruby/object:Gem::Dependency
395
- name: backports
413
+ name: nkf
396
414
  requirement: !ruby/object:Gem::Requirement
397
415
  requirements:
398
416
  - - "~>"
399
417
  - !ruby/object:Gem::Version
400
- version: '3.25'
418
+ version: '0.2'
419
+ type: :development
420
+ prerelease: false
421
+ version_requirements: !ruby/object:Gem::Requirement
422
+ requirements:
423
+ - - "~>"
424
+ - !ruby/object:Gem::Version
425
+ version: '0.2'
426
+ - !ruby/object:Gem::Dependency
427
+ name: rexml
428
+ requirement: !ruby/object:Gem::Requirement
429
+ requirements:
430
+ - - "~>"
431
+ - !ruby/object:Gem::Version
432
+ version: '3.2'
401
433
  - - ">="
402
434
  - !ruby/object:Gem::Version
403
- version: 3.25.1
435
+ version: 3.2.5
404
436
  type: :development
405
437
  prerelease: false
406
438
  version_requirements: !ruby/object:Gem::Requirement
407
439
  requirements:
408
440
  - - "~>"
409
441
  - !ruby/object:Gem::Version
410
- version: '3.25'
442
+ version: '3.2'
411
443
  - - ">="
412
444
  - !ruby/object:Gem::Version
413
- version: 3.25.1
445
+ version: 3.2.5
414
446
  description: "\U0001F510 A Ruby wrapper for the OAuth 2.0 Authorization Framework,
415
447
  including the OAuth 2.1 draft spec, and OpenID Connect (OIDC)"
416
448
  email:
@@ -424,30 +456,24 @@ extra_rdoc_files:
424
456
  - CODE_OF_CONDUCT.md
425
457
  - CONTRIBUTING.md
426
458
  - FUNDING.md
427
- - IRP.md
428
- - LICENSE.txt
429
- - OIDC.md
459
+ - LICENSE.md
430
460
  - README.md
431
- - REEK
432
461
  - RUBOCOP.md
433
462
  - SECURITY.md
434
- - THREAT_MODEL.md
435
463
  files:
436
464
  - CHANGELOG.md
437
465
  - CITATION.cff
438
466
  - CODE_OF_CONDUCT.md
439
467
  - CONTRIBUTING.md
440
468
  - FUNDING.md
441
- - IRP.md
442
- - LICENSE.txt
443
- - OIDC.md
469
+ - LICENSE.md
444
470
  - README.md
445
- - REEK
446
471
  - RUBOCOP.md
447
472
  - SECURITY.md
448
- - THREAT_MODEL.md
473
+ - certs/pboling.pem
449
474
  - lib/oauth2.rb
450
475
  - lib/oauth2/access_token.rb
476
+ - lib/oauth2/auth_sanitizer.rb
451
477
  - lib/oauth2/authenticator.rb
452
478
  - lib/oauth2/client.rb
453
479
  - lib/oauth2/error.rb
@@ -475,43 +501,16 @@ homepage: https://github.com/ruby-oauth/oauth2
475
501
  licenses:
476
502
  - MIT
477
503
  metadata:
478
- homepage_uri: https://oauth2.galtzo.com/
479
- source_code_uri: https://github.com/ruby-oauth/oauth2/tree/v2.0.19
480
- changelog_uri: https://github.com/ruby-oauth/oauth2/blob/v2.0.19/CHANGELOG.md
504
+ homepage_uri: https://oauth2.galtzo.com
505
+ source_code_uri: https://github.com/ruby-oauth/oauth2/tree/v2.0.21
506
+ changelog_uri: https://github.com/ruby-oauth/oauth2/blob/v2.0.21/CHANGELOG.md
481
507
  bug_tracker_uri: https://github.com/ruby-oauth/oauth2/issues
482
- documentation_uri: https://www.rubydoc.info/gems/oauth2/2.0.19
483
- mailing_list_uri: https://groups.google.com/g/oauth-ruby
508
+ documentation_uri: https://www.rubydoc.info/gems/oauth2/2.0.21
484
509
  funding_uri: https://github.com/sponsors/pboling
485
- wiki_uri: https://gitlab.com/ruby-oauth/oauth2/-/wiki
510
+ wiki_uri: https://github.com/ruby-oauth/oauth2/wiki
486
511
  news_uri: https://www.railsbling.com/tags/oauth2
487
512
  discord_uri: https://discord.gg/3qme4XHNKN
488
513
  rubygems_mfa_required: 'true'
489
- post_install_message: |2
490
-
491
- ---+++--- oauth2 v2.0.19 ---+++---
492
-
493
- (minor) ⚠️ BREAKING CHANGES ⚠️ when upgrading from < v2
494
- • Summary of breaking changes: https://gitlab.com/ruby-oauth/oauth2#what-is-new-for-v20
495
- • Changes in this patch: https://gitlab.com/ruby-oauth/oauth2/-/blob/v2.0.19/CHANGELOG.md#2015-2025-09-08
496
-
497
- News:
498
- 1. New documentation website, including for OAuth 2.1 and OIDC: https://oauth2.galtzo.com
499
- 2. New official Discord for discussion and support: https://discord.gg/3qme4XHNKN
500
- 3. New org name "ruby-oauth" on Open Source Collective, GitHub, GitLab, Codeberg (update git remotes!)
501
- 4. Non-commercial support for the 2.x series will end by April, 2026. Please make a plan to upgrade to the next version prior to that date.
502
- Support will be dropped for Ruby 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, 3.0, 3.1 and any other Ruby versions which will also have reached EOL by then.
503
- 5. Gem releases are cryptographically signed with a 20-year cert; SHA-256 & SHA-512 checksums by stone_checksums.
504
- 6. Please consider supporting this project:
505
- • https://opencollective.com/ruby-oauth (new!)
506
- • https://liberapay.com/pboling
507
- • https://github.com/sponsors/pboling
508
- • https://www.paypal.com/paypalme/peterboling
509
- • https://ko-fi.com/pboling
510
- • https://www.buymeacoffee.com/pboling
511
- • https://tidelift.com/funding/github/rubygems/oauth
512
- • Hire me - I can build anything
513
- • Report issues, and star the project
514
- Thanks, @pboling / @galtzo
515
514
  rdoc_options:
516
515
  - "--title"
517
516
  - "oauth2 - \U0001F510 OAuth 2.0, 2.1 & OIDC Core Ruby implementation"
@@ -535,7 +534,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
535
534
  - !ruby/object:Gem::Version
536
535
  version: '0'
537
536
  requirements: []
538
- rubygems_version: 4.0.11
537
+ rubygems_version: 4.0.10
539
538
  specification_version: 4
540
539
  summary: "\U0001F510 OAuth 2.0, 2.1 & OIDC Core Ruby implementation"
541
540
  test_files: []
metadata.gz.sig CHANGED
@@ -1,2 +1,3 @@
1
- /xF��D���Šn`ҧ������ރ0 ��B���h<0�t�T��C� }̒��Gw@��@h�L�"�w��f'����'�[��8��㳭�쑈_�)&�W��=���U��|Ud`b��;�E�ZW�H�%R�6B�yZ^���x��EЯ~5����31y-l%k��k��̔�,�DX`J�[��
2
- ���myɈ���q{/J(a����V~��Tej��ҁ}>g�?��v�����2.�S������n�[��i)
1
+ ^��z[� ��#N��N9��=!��“��W�)(\��lan#�
2
+
3
+ g3�� �g{��Y�dH�^Nབ��x���!�O�p+ח"��s�:���jצ�L�3��)�0ʲ3�UWK�^�2;�
data/IRP.md DELETED
@@ -1,107 +0,0 @@
1
- # Incident Response Plan (IRP)
2
-
3
- Status: Draft
4
-
5
- ## Purpose
6
-
7
- This Incident Response Plan (IRP) defines the steps the project maintainer(s) will follow when handling security incidents related to the `oauth2` gem. It is written for a small project with a single primary maintainer and is intended to be practical, concise, and actionable.
8
-
9
- ## Scope
10
-
11
- Applies to security incidents that affect the `oauth2` codebase, releases (gems), CI/CD infrastructure related to building and publishing the gem, repository credentials, or any compromise of project infrastructure that could impact users.
12
-
13
- ## Key assumptions
14
- - This project is maintained primarily by a single maintainer.
15
- - Public vulnerability disclosure is handled via Tidelift (see `SECURITY.md`).
16
- - The maintainer will act as incident commander unless otherwise delegated.
17
-
18
- ## Contact & Roles
19
-
20
- - Incident Commander: Primary maintainer (repo owner). Responsible for coordinating triage, remediation, and communications.
21
- - Secondary Contact: (optional) A trusted collaborator or organization contact if available.
22
-
23
- ### If you are an external reporter
24
- - Do not publicly disclose details of an active vulnerability before coordination via Tidelift.
25
- - See `SECURITY.md` for Tidelift disclosure instructions. If the reporter has questions and cannot use Tidelift, they may open a direct encrypted report as described in `SECURITY.md` (if available) or email the maintainer contact listed in the repository.
26
-
27
- ## Incident Handling Workflow (high level)
28
- 1. Identification & Reporting
29
- - Reports may arrive via Tidelift, issue tracker, direct email, or third-party advisories.
30
- - Immediately acknowledge receipt (within 24-72 hours) via the reporting channel.
31
-
32
- 2. Triage & Initial Assessment (first 72 hours)
33
- - Confirm the report is not duplicative and gather: reproducer, affected versions, attack surface, exploitability, and CVSS-like severity estimate.
34
- - Verify the issue against the codebase and reproduce locally if possible.
35
- - Determine scope: which versions are affected, whether the issue is in code paths executed in common setups, and whether a workaround exists.
36
-
37
- 3. Containment & Mitigation
38
- - If a simple mitigation or workaround (configuration change, safe default, or recommended upgrade) exists, document it clearly in the issue/Tidelift advisory.
39
- - If immediate removal of a release is required (rare), consult Tidelift for coordinated takedown and notify package hosts if applicable.
40
-
41
- 4. Remediation & Patch
42
- - Prepare a fix in a branch with tests and changelog entries. Prefer minimal, well-tested changes.
43
- - Include tests that reproduce the faulty behavior and demonstrate the fix.
44
- - Hardening: add fuzz tests, input validation, or additional checks as appropriate.
45
-
46
- 5. Release & Disclosure
47
- - Coordinate disclosure through Tidelift per `SECURITY.md` timelines. Aim for a coordinated disclosure and patch release to minimize risk to users.
48
- - Publish a patch release (increment gem version) and an advisory via Tidelift.
49
- - Update `CHANGELOG.md` and repository release notes with non-sensitive details.
50
-
51
- 6. Post-Incident
52
- - Produce a short postmortem: timeline, root cause, actions taken, and follow-ups.
53
- - Add/adjust tests and CI checks to prevent regressions.
54
- - If credentials or infrastructure were compromised, rotate secrets and audit access.
55
-
56
- ## Severity classification (guidance)
57
- - High/Critical: Remote code execution, data exfiltration, or any vulnerability that can be exploited without user interaction. Immediate action and prioritized patching.
58
- - Medium: Privilege escalation, sensitive information leaks that require specific conditions. Patch in the next release cycle with advisory.
59
- - Low: Minor information leaks, UI issues, or non-exploitable bugs. Fix normally and include in the next scheduled release.
60
-
61
- ## Preservation of evidence
62
- - Preserve all reporter-provided data, logs, and reproducer code in a secure location (local encrypted storage or private branch) for the investigation.
63
- - Do not publish evidence that would enable exploitation before coordinated disclosure.
64
-
65
- ## Communication templates
66
- Acknowledgement (to reporter)
67
-
68
- "Thank you for reporting this issue. I've received your report and will triage it within 72 hours. If you can, please provide reproduction steps, affected versions, and any exploit PoC. I will coordinate disclosure through Tidelift per the project's security policy."
69
-
70
- Public advisory (after patch is ready)
71
-
72
- "A security advisory for oauth2 (versions X.Y.Z) has been published via Tidelift. Please upgrade to version A.B.C which patches [brief description]. See the advisory for details and recommended mitigations."
73
-
74
- ## Runbook: Quick steps for a maintainer to patch and release
75
- 1. Create a branch: `git checkout -b fix/security-brief-description`
76
- 2. Reproduce the issue locally and add a regression spec in `spec/`.
77
- 3. Implement the fix and run the test suite: `bundle exec rspec` (or the project's preferred test command).
78
- 4. Bump version in `lib/oauth2/version.rb` following semantic versioning.
79
- 5. Update `CHANGELOG.md` with an entry describing the fix (avoid exploit details).
80
- 6. Commit and push the branch, open a PR, and merge after approvals.
81
- 7. Build and push the gem: `gem build oauth2.gemspec && gem push pkg/...` (coordinate with Tidelift before public push if disclosure is coordinated).
82
- 8. Publish a release on GitHub and ensure the Tidelift advisory is posted.
83
-
84
- ## Operational notes
85
- - Secrets: Use local encrypted storage for any sensitive reporter data. If repository or CI secrets may be compromised, rotate them immediately and update dependent services.
86
- - Access control: Limit who can publish gems and who has admin access to the repo. Keep an up-to-date list of collaborators in a secure place.
87
-
88
- ## Legal & regulatory
89
- - If the incident involves user data or has legal implications, consult legal counsel or the maintainers' employer as appropriate. The maintainer should document the timeline and all communications.
90
-
91
- ## Retrospective & continuous improvement
92
- After an incident, perform a brief post-incident review covering:
93
- - What happened and why
94
- - What was done to contain and remediate
95
- - What tests or process changes will prevent recurrence
96
- - Assign owners and deadlines for follow-up tasks
97
-
98
- ## References
99
- - See `SECURITY.md` for the project's official disclosure channel (Tidelift).
100
-
101
- ## Appendix: Example checklist for an incident
102
- - [ ] Acknowledge report to reporter (24-72 hours)
103
- - [ ] Reproduce and classify severity
104
- - [ ] Prepare and test a fix in a branch
105
- - [ ] Coordinate disclosure via Tidelift
106
- - [ ] Publish patch release and advisory
107
- - [ ] Postmortem and follow-up actions
data/LICENSE.txt DELETED
@@ -1,22 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2017-2026 Peter H. Boling, of Galtzo.com, and oauth2 contributors
4
- Copyright (c) 2011-2013 Michael Bleigh and Intridea, Inc.
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining a copy
7
- of this software and associated documentation files (the "Software"), to deal
8
- in the Software without restriction, including without limitation the rights
9
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
- copies of the Software, and to permit persons to whom the Software is
11
- furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in all
14
- copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
- SOFTWARE.