41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
# File 'lib/ditty/components/proxes.rb', line 41
def self.seeder
proc do
require 'ditty/models/user'
require 'ditty/models/role'
require 'proxes/models/permission'
sa = ::Ditty::Role.find_or_create(name: 'super_admin')
%w[GET POST PUT DELETE HEAD OPTIONS INDEX].each do |verb|
::ProxES::Permission.find_or_create(role: sa, verb: verb, pattern: '.*')
end
::Ditty::Role.find_or_create(name: 'admin')
user_role = ::Ditty::Role.find_or_create(name: 'user')
anon = ::Ditty::User.find_or_create(email: '[email protected]')
anon.remove_role user_role
anon_role = ::Ditty::Role.find_or_create(name: 'anonymous')
anon.add_role anon_role unless anon.role?('anonymous')
::ProxES::Permission.find_or_create(role: anon_role, verb: 'GET', pattern: '/.kibana/config/*')
::ProxES::Permission.find_or_create(role: anon_role, verb: 'INDEX', pattern: '.kibana')
kibana = ::Ditty::Role.find_or_create(name: 'kibana')
::ProxES::Permission.find_or_create(role: kibana, verb: 'INDEX', pattern: '.kibana')
::ProxES::Permission.find_or_create(role: kibana, verb: 'HEAD', pattern: '/')
::ProxES::Permission.find_or_create(role: kibana, verb: 'GET', pattern: '/_nodes*')
::ProxES::Permission.find_or_create(role: kibana, verb: 'GET', pattern: '/_cluster/health*')
::ProxES::Permission.find_or_create(role: kibana, verb: 'GET', pattern: '/_cluster/settings*')
::ProxES::Permission.find_or_create(role: kibana, verb: 'POST', pattern: '/_mget')
::ProxES::Permission.find_or_create(role: kibana, verb: 'POST', pattern: '/_search')
::ProxES::Permission.find_or_create(role: kibana, verb: 'POST', pattern: '/_msearch')
::ProxES::Permission.find_or_create(role: kibana, verb: 'POST', pattern: '/_refresh')
end
end
|