apple_id 1.4.0 → 1.4.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/apple_id.gemspec +1 -1
- data/lib/apple_id/event_token/event.rb +24 -0
- data/lib/apple_id/event_token.rb +7 -6
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9d4855e908fa2ef52663c918a00ae521a50b3c103c56f437756d05038e8d6925
|
4
|
+
data.tar.gz: a9e6b71347db257406b0872c699aaf6213459fa195365e0de28a7481d72b67a0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: df5c25f4b7df766422954e4cb7d2dac4d088cc3422a6d4e4d3c12aac7119da58959604a37d310e8814dff3430db82ca83348c18e383c941bfac1494c88b2d2db
|
7
|
+
data.tar.gz: cac72a8111c8644f2c7b44fc8185ef0c84c6b4d46f855b7d19c4debf4cb5badc483886434ec505ac5171ef2a0698730cba5117f8c429c29ad05ac82bd00c389e
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.4.
|
1
|
+
1.4.3
|
data/apple_id.gemspec
CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
19
19
|
spec.require_paths = ['lib']
|
20
20
|
|
21
|
-
spec.add_runtime_dependency 'rack-oauth2', '~> 1.21'
|
21
|
+
spec.add_runtime_dependency 'rack-oauth2', '~> 1.21.2'
|
22
22
|
spec.add_runtime_dependency 'openid_connect', '~> 1.3.0'
|
23
23
|
spec.add_development_dependency 'bundler'
|
24
24
|
spec.add_development_dependency 'rake'
|
@@ -2,6 +2,30 @@ module AppleID
|
|
2
2
|
class EventToken::Event < OpenIDConnect::ConnectObject
|
3
3
|
attr_required :type, :sub, :event_time
|
4
4
|
|
5
|
+
module Type
|
6
|
+
EMAIL_ENABLED = 'email-enabled'
|
7
|
+
EMAIL_DISABLED = 'email-disabled'
|
8
|
+
CONSENT_REVOKED = 'consent-revoked'
|
9
|
+
ACCOUNT_DELETED = 'account-delete'
|
10
|
+
end
|
11
|
+
|
12
|
+
def email_enabled?
|
13
|
+
type == Type::EMAIL_ENABLED
|
14
|
+
end
|
15
|
+
|
16
|
+
def email_disabled?
|
17
|
+
type == Type::EMAIL_DISABLED
|
18
|
+
end
|
19
|
+
|
20
|
+
def consent_revoked?
|
21
|
+
type == Type::CONSENT_REVOKED
|
22
|
+
end
|
23
|
+
|
24
|
+
def account_deleted?
|
25
|
+
type == Type::ACCOUNT_DELETED
|
26
|
+
end
|
27
|
+
alias_method :account_delete?, :account_deleted?
|
28
|
+
|
5
29
|
class << self
|
6
30
|
def decode(json_string)
|
7
31
|
new JSON.parse(json_string).with_indifferent_access
|
data/lib/apple_id/event_token.rb
CHANGED
@@ -2,19 +2,20 @@ module AppleID
|
|
2
2
|
class EventToken < OpenIDConnect::ConnectObject
|
3
3
|
class VerificationFailed < Error; end
|
4
4
|
|
5
|
-
|
6
|
-
# Once they start returning an array of events, this gem might use `events` as the attribute name.
|
7
|
-
attr_required :iss, :aud, :exp, :iat, :jti, :event
|
5
|
+
attr_required :iss, :aud, :exp, :iat, :jti, :events
|
8
6
|
alias_method :original_jwt, :raw_attributes
|
7
|
+
alias_method :event, :events
|
8
|
+
|
9
|
+
delegate :type, :sub, :event_time, :email_enabled?, :email_disabled?, :consent_revoked?, :account_deleted?, to: :event
|
9
10
|
|
10
11
|
def initialize(attributes = {})
|
11
12
|
super
|
12
|
-
@
|
13
|
+
@events = Event.decode attributes[:events]
|
13
14
|
end
|
14
15
|
|
15
16
|
def verify!(verify_signature: true, client: nil)
|
16
17
|
verify_signature! if verify_signature
|
17
|
-
verify_claims! client
|
18
|
+
verify_claims! client
|
18
19
|
self
|
19
20
|
end
|
20
21
|
|
@@ -32,7 +33,7 @@ module AppleID
|
|
32
33
|
raise VerificationFailed, 'Signature Verification Failed'
|
33
34
|
end
|
34
35
|
|
35
|
-
def verify_claims!(client
|
36
|
+
def verify_claims!(client)
|
36
37
|
aud = if client.respond_to?(:identifier)
|
37
38
|
client.identifier
|
38
39
|
else
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: apple_id
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- nov
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-07-
|
11
|
+
date: 2022-07-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rack-oauth2
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 1.21.2
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 1.21.2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: openid_connect
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|