pkce 0.0.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2d2c1097b83e0da1e3fcc5cd869686f286de3db0152d8ebf13e351bc2155e325
4
- data.tar.gz: 3583de0e97dc4b2e1f7f836148687402f4807f3801eb61481a9f824e09030b28
3
+ metadata.gz: 17e05354b4505beffb3af6fb1c0fa1d937bf23ca76288e2efa45ee22b119a546
4
+ data.tar.gz: 1b6367c198c71e38de058dcabd203174f59f0b48b3946122d4e6d918d758481e
5
5
  SHA512:
6
- metadata.gz: 6ff848d394fad7aa5a1722fb6a5b6537d1b41fcea573e3ab732a061b2664e14396d138b028ab171334afce4c924d5b672cde5f3f9ef52ea325ea958a29f8d592
7
- data.tar.gz: 9ecbf31eba82c3592aacb455ad3444b6dadd88b6cebedafa01472c4121622bded4fafc474c51ca2bbd62f50131ccf305c11b9c854ae444c54b756bb5e2ca53eb
6
+ metadata.gz: 15acfd59c5b9dbf8a5368f50226802dd3473f9de61432df575f44f370c06fbb42519eeb6282b87ac69b3393ec9d8abb3cffcbb6f9051810f62dce573814626af
7
+ data.tar.gz: bb90f9b5c0062f03fb29347713466697f6ca9053dbeaf8f4faccbefa87f4c5f069d3d5ecf9309917727e113067faca060e49fba4ce5ae93b09b7829664ea9d30
checksums.yaml.gz.sig CHANGED
@@ -1,2 +1,3 @@
1
- #ϐƕ2E�r�X!gq���<iߜ�~_ga���5��Xy��Dwn 9���fc&��`�MZ~���@�@�m�~AY�2,1q�=���I�#,�[�����E�z��0֒��m�4 ���h��$�C:Z��,��嬴m&> �0cݛ����O[��ow� �[W�N�
2
- ,j9Ϡ;q��\"����-�>��X��������
1
+ �?�^fyb��o��5'͋8 uqV8D��:�F"¡:J��K=��:�|aՐ:�}!�͕(L8��y9ktS/rU��!������E��ux=�pE�3
2
+ TRA.�,Q8�/z1_0�e�i�b�k�̛*=փ�����o ��^�����\_�m)��[1����� �E,V<���{�츠�W
3
+ l�!q�3uʢ�>��A�s��l!�-
data/README.adoc CHANGED
@@ -6,11 +6,13 @@
6
6
 
7
7
  = Proof Key for Code Exchange (PKCE)
8
8
 
9
- PKCE ({rfc_link}) is an authorization code flow extension to link:https://oauth.net[OAuth] which is necessary for mobile authentication but works well for web flows because the added security is transparent to the end user. Specifically, PKCE prevents the following types of attacks:
9
+ Proof Key for Code Exchange (PKCE) is an authorization code flow extension to link:https://oauth.net[OAuth] which is necessary for mobile authentication but works well for web flows because the added security is transparent to the user. Specifically, PKCE prevents the following types of attacks:
10
10
 
11
11
  * Authorization code interception
12
12
  * Authorization code injection
13
13
 
14
+ This gem is an implementation of the {rfc_link} specification so you can leverage PKCE in your own code.
15
+
14
16
  toc::[]
15
17
 
16
18
  == Features
@@ -81,13 +83,16 @@ PKCE.call.success
81
83
  # #<struct PKCE::Code challenge="dTiwjdltI-SBR1wHTEWa8zQs2kegLoIxJb2fb8emno0", verify="p4uH9lxdDMLmYLaLtYV0QJMi-o0FTQT29CJWYcdRsK0xJVsaFiQ981W5nSWDsWJgA-LS5hwKHEPcOAmVgOELNpolPhi3tcelBX9Y-z_hHUOq24DAAZOe0DU6VBb6zHCZ">
82
84
  ----
83
85
 
84
- == Architecture
85
-
86
- The following documents the workflow used to process and build authorization codes.
86
+ == Development
87
87
 
88
- image::https://www.alchemists.io/images/projects/pkce/doc/sequence_diagram.svg[Sequence Diagram]
88
+ To contribute, run:
89
89
 
90
- == Development
90
+ [source,bash]
91
+ ----
92
+ git clone https://github.com/bkuhlmann/pkce
93
+ cd pkce
94
+ bin/setup
95
+ ----
91
96
 
92
97
  You can also use the IRB console for direct access to all objects:
93
98
 
@@ -96,6 +101,12 @@ You can also use the IRB console for direct access to all objects:
96
101
  bin/console
97
102
  ----
98
103
 
104
+ === Architecture
105
+
106
+ The following documents the workflow used to process and build authorization codes.
107
+
108
+ image::https://www.alchemists.io/images/projects/pkce/doc/sequence_diagram.svg[Sequence Diagram]
109
+
99
110
  == Tests
100
111
 
101
112
  To test, run:
data/pkce.gemspec CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = "pkce"
5
- spec.version = "0.0.0"
5
+ spec.version = "0.2.0"
6
6
  spec.authors = ["Brooke Kuhlmann"]
7
7
  spec.email = ["brooke@alchemists.io"]
8
8
  spec.homepage = "https://www.alchemists.io/projects/pkce"
9
- spec.summary = "Encodes Proof Key for Code Exchange (PKCE) for OAuth."
9
+ spec.summary = "Builds Proof Key for Code Exchange (PKCE) challenge and verify codes for OAuth."
10
10
  spec.license = "Hippocratic-2.1"
11
11
 
12
12
  spec.metadata = {
@@ -14,7 +14,7 @@ Gem::Specification.new do |spec|
14
14
  "changelog_uri" => "https://www.alchemists.io/projects/pkce/versions",
15
15
  "documentation_uri" => "https://www.alchemists.io/projects/pkce",
16
16
  "funding_uri" => "https://github.com/sponsors/bkuhlmann",
17
- "label" => "Pkce",
17
+ "label" => "PKCE",
18
18
  "rubygems_mfa_required" => "true",
19
19
  "source_code_uri" => "https://github.com/bkuhlmann/pkce"
20
20
  }
@@ -23,7 +23,7 @@ Gem::Specification.new do |spec|
23
23
  spec.cert_chain = [Gem.default_cert_path]
24
24
 
25
25
  spec.required_ruby_version = "~> 3.1"
26
- spec.add_dependency "dry-monads", "~> 1.4"
26
+ spec.add_dependency "dry-monads", "~> 1.5"
27
27
 
28
28
  spec.extra_rdoc_files = Dir["README*", "LICENSE*"]
29
29
  spec.files = Dir["*.gemspec", "lib/**/*"]
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pkce
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brooke Kuhlmann
@@ -28,7 +28,7 @@ cert_chain:
28
28
  CxDe2+VuChj4I1nvIHdu+E6XoEVlanUPKmSg6nddhkKn2gC45Kyzh6FZqnzH/CRp
29
29
  RFE=
30
30
  -----END CERTIFICATE-----
31
- date: 2022-06-25 00:00:00.000000000 Z
31
+ date: 2022-10-22 00:00:00.000000000 Z
32
32
  dependencies:
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: dry-monads
@@ -36,14 +36,14 @@ dependencies:
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '1.4'
39
+ version: '1.5'
40
40
  type: :runtime
41
41
  prerelease: false
42
42
  version_requirements: !ruby/object:Gem::Requirement
43
43
  requirements:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
- version: '1.4'
46
+ version: '1.5'
47
47
  description:
48
48
  email:
49
49
  - brooke@alchemists.io
@@ -69,7 +69,7 @@ metadata:
69
69
  changelog_uri: https://www.alchemists.io/projects/pkce/versions
70
70
  documentation_uri: https://www.alchemists.io/projects/pkce
71
71
  funding_uri: https://github.com/sponsors/bkuhlmann
72
- label: Pkce
72
+ label: PKCE
73
73
  rubygems_mfa_required: 'true'
74
74
  source_code_uri: https://github.com/bkuhlmann/pkce
75
75
  post_install_message:
@@ -87,8 +87,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
87
87
  - !ruby/object:Gem::Version
88
88
  version: '0'
89
89
  requirements: []
90
- rubygems_version: 3.3.16
90
+ rubygems_version: 3.3.24
91
91
  signing_key:
92
92
  specification_version: 4
93
- summary: Encodes Proof Key for Code Exchange (PKCE) for OAuth.
93
+ summary: Builds Proof Key for Code Exchange (PKCE) challenge and verify codes for
94
+ OAuth.
94
95
  test_files: []
metadata.gz.sig CHANGED
Binary file