· 9 years ago · Sep 28, 2016, 09:00 PM
1DO
2$$
3BEGIN
4 IF NOT EXISTS (SELECT * FROM pg_catalog.pg_user WHERE usename = 'core_app')
5 THEN
6 CREATE USER core_app WITH PASSWORD 'core_app_password';
7 END IF;
8END
9$$;
10
11GRANT ALL ON schema core TO core_app;
12GRANT ALL ON ALL TABLES IN SCHEMA core TO core_app;
13GRANT ALL ON ALL SEQUENCES IN SCHEMA core TO core_app;
14
15GRANT ALL ON schema audt TO core_app;
16GRANT ALL ON ALL TABLES IN SCHEMA audt TO core_app;
17GRANT ALL ON ALL SEQUENCES IN SCHEMA audt TO core_app;
18
19DO
20$$
21BEGIN
22 IF NOT EXISTS (SELECT * FROM pg_catalog.pg_user WHERE usename = 'manager_app')
23 THEN
24 CREATE USER manager_app WITH PASSWORD 'manager_app_password';
25 END IF;
26END
27$$;
28
29GRANT ALL ON schema core TO manager_app;
30GRANT ALL ON ALL TABLES IN SCHEMA core TO manager_app;
31GRANT ALL ON ALL SEQUENCES IN SCHEMA core TO manager_app;
32
33GRANT ALL ON schema audt TO manager_app;
34GRANT ALL ON ALL TABLES IN SCHEMA audt TO manager_app;
35GRANT ALL ON ALL SEQUENCES IN SCHEMA audt TO manager_app;
36
37DO
38$$
39BEGIN
40 IF NOT EXISTS (SELECT * FROM pg_catalog.pg_user WHERE usename = 'customer_app')
41 THEN
42 CREATE USER customer_app WITH PASSWORD 'customer_app_password';
43 END IF;
44END
45$$;
46
47GRANT ALL ON schema core TO customer_app;
48GRANT ALL ON ALL TABLES IN SCHEMA core TO customer_app;
49GRANT ALL ON ALL SEQUENCES IN SCHEMA core TO customer_app;
50
51GRANT ALL ON schema audt TO customer_app;
52GRANT ALL ON ALL TABLES IN SCHEMA audt TO customer_app;
53GRANT ALL ON ALL SEQUENCES IN SCHEMA audt TO customer_app;
54
55DO
56$$
57BEGIN
58 IF NOT EXISTS (SELECT * FROM pg_catalog.pg_user WHERE usename = 'priority_app')
59 THEN
60 CREATE USER priority_app WITH PASSWORD 'priority_app_password';
61 END IF;
62END
63$$;
64
65GRANT ALL ON schema core TO priority_app;
66GRANT ALL ON ALL TABLES IN SCHEMA core TO priority_app;
67GRANT ALL ON ALL SEQUENCES IN SCHEMA core TO priority_app;
68
69DO
70$$
71BEGIN
72 IF NOT EXISTS (SELECT * FROM pg_catalog.pg_user WHERE usename = 'customer_gateway_app')
73 THEN
74 CREATE USER customer_gateway_app WITH PASSWORD 'customer_gateway_app_password';
75 END IF;
76END
77$$;
78
79GRANT USAGE ON SCHEMA core TO customer_gateway_app;
80GRANT All ON core.customer TO customer_gateway_app;
81GRANT ALL ON core.customer_payment_method TO customer_gateway_app;
82GRANT ALL ON core.customer_email_confirmation TO customer_gateway_app;
83
84DO
85$$
86BEGIN
87 IF NOT EXISTS (SELECT * FROM pg_catalog.pg_user WHERE usename = 'public_api_app')
88 THEN
89 CREATE USER public_api_app WITH PASSWORD 'public_api_password';
90 END IF;
91END
92$$;
93
94GRANT ALL ON schema core TO public_api_app;
95GRANT ALL ON ALL TABLES IN SCHEMA core TO public_api_app;
96GRANT ALL ON ALL SEQUENCES IN SCHEMA core TO public_api_app;
97
98GRANT ALL ON schema orders TO core_app;
99GRANT ALL ON ALL TABLES IN SCHEMA orders TO core_app;
100GRANT ALL ON ALL SEQUENCES IN SCHEMA orders TO core_app;
101
102DO
103$$
104BEGIN
105 IF NOT EXISTS (SELECT * FROM pg_catalog.pg_user WHERE usename = 'manager_gateway_app')
106 THEN
107 CREATE USER manager_gateway_app WITH PASSWORD 'manager_gateway_app_password';
108 END IF;
109END
110$$;
111
112GRANT ALL ON SCHEMA core TO manager_gateway_app;
113GRANT ALL ON ALL TABLES IN SCHEMA core TO manager_gateway_app;
114GRANT ALL ON ALL SEQUENCES IN SCHEMA core TO manager_gateway_app;
115
116ALTER TABLE orders.order_state_audit OWNER TO core_app;
117ALTER TABLE orders.order_stat OWNER TO core_app;
118
119DO
120$$
121BEGIN
122 IF NOT EXISTS (SELECT * FROM pg_catalog.pg_user WHERE usename = 'notify_app')
123 THEN
124 CREATE USER notify_app WITH PASSWORD 'notify_app_password';
125 END IF;
126END
127$$;
128
129GRANT ALL ON schema core TO notify_app;
130GRANT ALL ON ALL TABLES IN SCHEMA core TO notify_app;
131GRANT ALL ON ALL SEQUENCES IN SCHEMA core TO notify_app;
132
133GRANT ALL ON schema audt TO notify_app;
134GRANT ALL ON ALL TABLES IN SCHEMA audt TO notify_app;
135GRANT ALL ON ALL SEQUENCES IN SCHEMA audt TO notify_app;
136
137DO
138$$
139BEGIN
140 IF NOT EXISTS (SELECT * FROM pg_catalog.pg_user WHERE usename = 'guarantee_app')
141 THEN
142 CREATE USER guarantee_app WITH PASSWORD 'guarantee_app_password';
143 END IF;
144END
145$$;
146
147GRANT ALL ON schema core TO guarantee_app;
148GRANT ALL ON ALL TABLES IN SCHEMA core TO guarantee_app;
149GRANT ALL ON ALL SEQUENCES IN SCHEMA core TO guarantee_app;
150
151DO
152$$
153BEGIN
154 IF NOT EXISTS (SELECT * FROM pg_catalog.pg_user WHERE usename = 'tick_app')
155 THEN
156 CREATE USER tick_app WITH PASSWORD 'tick_app_password';
157 END IF;
158END
159$$;
160
161GRANT ALL ON schema core TO tick_app;
162GRANT ALL ON ALL TABLES IN SCHEMA core TO tick_app;
163GRANT ALL ON ALL SEQUENCES IN SCHEMA core TO tick_app;
164
165GRANT ALL ON schema orders TO tick_app;
166GRANT ALL ON ALL TABLES IN SCHEMA orders TO tick_app;
167GRANT ALL ON ALL SEQUENCES IN SCHEMA orders TO tick_app;
168
169DO
170$$
171BEGIN
172 IF NOT EXISTS(SELECT *
173 FROM pg_catalog.pg_user
174 WHERE usename = 'billing_app')
175 THEN
176 CREATE USER billing_app WITH PASSWORD 'billing_app_password';
177 END IF;
178END
179$$;
180
181GRANT ALL ON SCHEMA core TO billing_app;
182GRANT ALL ON ALL TABLES IN SCHEMA core TO billing_app;
183GRANT ALL ON ALL SEQUENCES IN SCHEMA core TO billing_app;
184
185GRANT ALL ON SCHEMA orders TO billing_app;
186GRANT ALL ON ALL TABLES IN SCHEMA orders TO billing_app;
187GRANT ALL ON ALL SEQUENCES IN SCHEMA orders TO billing_app;
188
189GRANT ALL ON SCHEMA audt TO billing_app;
190GRANT ALL ON ALL TABLES IN SCHEMA audt TO billing_app;
191GRANT ALL ON ALL SEQUENCES IN SCHEMA audt TO billing_app;
192
193DO
194$$
195BEGIN
196 IF NOT EXISTS (SELECT * FROM pg_catalog.pg_user WHERE usename = 'heatmap_app')
197 THEN
198 CREATE USER heatmap_app WITH PASSWORD 'heatmap_app_password';
199 END IF;
200END
201$$;
202
203GRANT ALL ON schema core TO heatmap_app;
204GRANT ALL ON ALL TABLES IN SCHEMA core TO heatmap_app;
205GRANT ALL ON ALL SEQUENCES IN SCHEMA core TO heatmap_app;
206
207DO
208$$
209BEGIN
210 IF NOT EXISTS (SELECT * FROM pg_catalog.pg_user WHERE usename = 'predict_srv')
211 THEN
212 CREATE USER predict_srv WITH PASSWORD 'predict_srv_password';
213 END IF;
214END
215$$;
216
217GRANT USAGE ON SCHEMA audt TO predict_srv;
218GRANT USAGE ON SCHEMA core TO predict_srv;
219GRANT SELECT ON audt.customer_location TO predict_srv;
220GRANT SELECT ON core.region TO predict_srv;
221
222DO
223$$
224BEGIN
225 IF NOT EXISTS (SELECT * FROM pg_catalog.pg_user WHERE usename = 'teller_app')
226 THEN
227 CREATE USER teller_app WITH PASSWORD 'teller_app_password';
228 END IF;
229END
230$$;
231
232GRANT ALL ON schema core TO teller_app;
233GRANT ALL ON ALL TABLES IN SCHEMA core TO teller_app;
234GRANT ALL ON ALL SEQUENCES IN SCHEMA core TO teller_app;
235
236
237GRANT ALL ON core.polygon_catalog TO predict_srv;
238GRANT ALL ON core.hexagon_catalog TO predict_srv;
239GRANT ALL ON core.predict_param_catalog TO predict_srv;
240GRANT ALL ON core.predict_interval_catalog TO predict_srv;
241
242GRANT ALL ON core.polygon_catalog TO heatmap_app;
243GRANT ALL ON core.hexagon_catalog TO heatmap_app;
244GRANT ALL ON core.predict_param_catalog TO heatmap_app;
245GRANT ALL ON core.predict_interval_catalog TO heatmap_app;