Module: SyncAttrWithAuth0::Auth0
- Defined in:
- lib/sync_attr_with_auth0/auth0.rb
Defined Under Namespace
Classes: InvalidAuth0ConfigurationException
Class Method Summary
collapse
Class Method Details
.create_auth0_client(api_version: 2, config: SyncAttrWithAuth0.configuration) ⇒ Object
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
# File 'lib/sync_attr_with_auth0/auth0.rb', line 8
def self.create_auth0_client(
api_version: 2,
config: SyncAttrWithAuth0.configuration
)
validate_auth0_config_for_api(api_version, config: config)
auth0 = Auth0Client.new(
client_id: config.auth0_client_id,
client_secret: config.auth0_client_secret,
domain: config.auth0_namespace
)
return auth0
end
|
.create_user(params, config: SyncAttrWithAuth0.configuration) ⇒ Object
.find_users_by_email(email, exclude_user_id: nil, config: SyncAttrWithAuth0.configuration) ⇒ Object
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
# File 'lib/sync_attr_with_auth0/auth0.rb', line 42
def self.find_users_by_email(email, exclude_user_id: nil, config: SyncAttrWithAuth0.configuration)
auth0 = SyncAttrWithAuth0::Auth0.create_auth0_client(config: config)
query = "email:#{email}"
unless config.search_connections.empty?
conn_query = config.search_connections
.collect { |conn| %Q{identities.connection:"#{conn}"} }
.join ' OR '
query = "#{query} AND (#{conn_query})"
end
results = auth0.get('/api/v2/users', q: query, search_engine: 'v3')
if exclude_user_id
results = results.reject { |r| r['user_id'] == exclude_user_id }
end
return results
end
|
.patch_user(uid, params, config: SyncAttrWithAuth0.configuration) ⇒ Object
.validate_auth0_config_for_api(api_version = 2, config: SyncAttrWithAuth0.configuration) ⇒ Object
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# File 'lib/sync_attr_with_auth0/auth0.rb', line 24
def self.validate_auth0_config_for_api(api_version=2, config: SyncAttrWithAuth0.configuration)
settings_to_validate = []
invalid_settings = []
settings_to_validate = [:auth0_client_id, :auth0_client_secret, :auth0_namespace]
settings_to_validate.each do |setting_name|
unless config.send(setting_name)
invalid_settings << setting_name
end
end
if invalid_settings.length > 0
raise InvalidAuth0ConfigurationException.new("The following required auth0 settings were invalid: #{invalid_settings.join(', ')}")
end
end
|