@@ -24,17 +24,10 @@ CREATE SCHEMA extensions;
24
24
25
25
26
26
--
27
- -- Name: pg_graphql ; Type: EXTENSION ; Schema: -; Owner: -
27
+ -- Name: graphql ; Type: SCHEMA ; Schema: -; Owner: -
28
28
--
29
29
30
- CREATE EXTENSION IF NOT EXISTS pg_graphql WITH SCHEMA extensions;
31
-
32
-
33
- --
34
- -- Name: EXTENSION pg_graphql; Type: COMMENT; Schema: -; Owner: -
35
- --
36
-
37
- COMMENT ON EXTENSION pg_graphql IS ' GraphQL support' ;
30
+ CREATE SCHEMA graphql ;
38
31
39
32
40
33
--
@@ -86,6 +79,20 @@ CREATE SCHEMA realtime;
86
79
CREATE SCHEMA storage ;
87
80
88
81
82
+ --
83
+ -- Name: pg_graphql; Type: EXTENSION; Schema: -; Owner: -
84
+ --
85
+
86
+ CREATE EXTENSION IF NOT EXISTS pg_graphql WITH SCHEMA graphql;
87
+
88
+
89
+ --
90
+ -- Name: EXTENSION pg_graphql; Type: COMMENT; Schema: -; Owner: -
91
+ --
92
+
93
+ COMMENT ON EXTENSION pg_graphql IS ' pg_graphql: GraphQL support' ;
94
+
95
+
89
96
--
90
97
-- Name: pg_stat_statements; Type: EXTENSION; Schema: -; Owner: -
91
98
--
@@ -482,6 +489,32 @@ END;
482
489
$$;
483
490
484
491
492
+ --
493
+ -- Name: TABLE key; Type: SECURITY LABEL; Schema: pgsodium; Owner: -
494
+ --
495
+
496
+ SECURITY LABEL FOR pgsodium ON COLUMN pgsodium .key .raw_key IS ' ENCRYPT WITH KEY COLUMN parent_key ASSOCIATED (id, associated_data) NONCE raw_key_nonce' ;
497
+
498
+
499
+ --
500
+ -- Name: key_encrypt_secret(); Type: FUNCTION; Schema: pgsodium; Owner: -
501
+ --
502
+
503
+ CREATE FUNCTION pgsodium .key_encrypt_secret() RETURNS trigger
504
+ LANGUAGE plpgsql
505
+ AS $$
506
+ BEGIN
507
+ new .raw_key = CASE WHEN new .parent_key IS NULL THEN NULL ELSE
508
+ pgsodium .crypto_aead_det_encrypt (new .raw_key ::bytea , pg_catalog .convert_to ((new .id ::text || new .associated_data ::text )::text , ' utf8' ),
509
+ new .parent_key ::uuid,
510
+ new .raw_key_nonce
511
+ ) END
512
+ ;
513
+ RETURN new;
514
+ END;
515
+ $$;
516
+
517
+
485
518
--
486
519
-- Name: extension(text); Type: FUNCTION; Schema: storage; Owner: -
487
520
--
@@ -685,6 +718,30 @@ CREATE TABLE auth.users (
685
718
COMMENT ON TABLE auth.users IS ' Auth: Stores user login data within a secure schema.' ;
686
719
687
720
721
+ --
722
+ -- Name: decrypted_key; Type: VIEW; Schema: pgsodium; Owner: -
723
+ --
724
+
725
+ CREATE VIEW pgsodium .decrypted_key AS
726
+ SELECT key .id ,
727
+ key .status ,
728
+ key .created ,
729
+ key .expires ,
730
+ key .key_type ,
731
+ key .key_id ,
732
+ key .key_context ,
733
+ key .name ,
734
+ key .associated_data ,
735
+ key .raw_key ,
736
+ CASE
737
+ WHEN (key .parent_key IS NULL ) THEN NULL ::bytea
738
+ ELSE pgsodium .crypto_aead_det_decrypt (key .raw_key , convert_to(((key .id )::text || key .associated_data ), ' utf8' ::name), key .parent_key , key .raw_key_nonce )
739
+ END AS decrypted_raw_key,
740
+ key .raw_key_nonce ,
741
+ key .parent_key
742
+ FROM pgsodium .key ;
743
+
744
+
688
745
--
689
746
-- Name: schema_migrations; Type: TABLE; Schema: public; Owner: -
690
747
--
0 commit comments