You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
174 lines
4.1 KiB
174 lines
4.1 KiB
_format_version: "1.1" |
|
|
|
### |
|
### Consumers / Users |
|
### |
|
consumers: |
|
- username: anon |
|
keyauth_credentials: |
|
- key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.ewogICAgInJvbGUiOiAiYW5vbiIsCiAgICAiaXNzIjogInN1cGFiYXNlIiwKICAgICJpYXQiOiAxNjc0ODI0NDAwLAogICAgImV4cCI6IDE4MzI1OTA4MDAKfQ.GjK9HIRUaMB0LZiIXD-qvfKSgZwHUsmLlo6qItGRrx0 |
|
- username: service_role |
|
keyauth_credentials: |
|
- key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.ewogICAgInJvbGUiOiAic2VydmljZV9yb2xlIiwKICAgICJpc3MiOiAic3VwYWJhc2UiLAogICAgImlhdCI6IDE2NzQ4MjQ0MDAsCiAgICAiZXhwIjogMTgzMjU5MDgwMAp9.8H6IJnWB4kmhKMpRSVQPIaPs1WWOsF_FStCPOxFG-Sk |
|
|
|
### |
|
### Access Control List |
|
### |
|
acls: |
|
- consumer: anon |
|
group: anon |
|
- consumer: service_role |
|
group: admin |
|
|
|
### |
|
### API Routes |
|
### |
|
services: |
|
## Open Auth routes |
|
- name: auth-v1-open |
|
url: http://auth:9999/verify |
|
routes: |
|
- name: auth-v1-open |
|
strip_path: true |
|
paths: |
|
- /auth/v1/verify |
|
plugins: |
|
- name: cors |
|
- name: auth-v1-open-callback |
|
url: http://auth:9999/callback |
|
routes: |
|
- name: auth-v1-open-callback |
|
strip_path: true |
|
paths: |
|
- /auth/v1/callback |
|
plugins: |
|
- name: cors |
|
- name: auth-v1-open-authorize |
|
url: http://auth:9999/authorize |
|
routes: |
|
- name: auth-v1-open-authorize |
|
strip_path: true |
|
paths: |
|
- /auth/v1/authorize |
|
plugins: |
|
- name: cors |
|
|
|
## Secure Auth routes |
|
- name: auth-v1 |
|
_comment: "GoTrue: /auth/v1/* -> http://auth:9999/*" |
|
url: http://auth:9999/ |
|
routes: |
|
- name: auth-v1-all |
|
strip_path: true |
|
paths: |
|
- /auth/v1/ |
|
plugins: |
|
- name: cors |
|
- name: key-auth |
|
config: |
|
hide_credentials: false |
|
- name: acl |
|
config: |
|
hide_groups_header: true |
|
allow: |
|
- admin |
|
- anon |
|
|
|
## Secure REST routes |
|
- name: rest-v1 |
|
_comment: "PostgREST: /rest/v1/* -> http://rest:3000/*" |
|
url: http://rest:3000/ |
|
routes: |
|
- name: rest-v1-all |
|
strip_path: true |
|
paths: |
|
- /rest/v1/ |
|
plugins: |
|
- name: cors |
|
- name: key-auth |
|
config: |
|
hide_credentials: true |
|
- name: acl |
|
config: |
|
hide_groups_header: true |
|
allow: |
|
- admin |
|
- anon |
|
|
|
## Secure GraphQL routes |
|
- name: graphql-v1 |
|
_comment: "PostgREST: /graphql/v1/* -> http://rest:3000/rpc/graphql" |
|
url: http://rest:3000/rpc/graphql |
|
routes: |
|
- name: graphql-v1-all |
|
strip_path: true |
|
paths: |
|
- /graphql/v1 |
|
plugins: |
|
- name: cors |
|
- name: key-auth |
|
config: |
|
hide_credentials: true |
|
- name: request-transformer |
|
config: |
|
add: |
|
headers: |
|
- Content-Profile:graphql_public |
|
- name: acl |
|
config: |
|
hide_groups_header: true |
|
allow: |
|
- admin |
|
- anon |
|
|
|
## Secure Realtime routes |
|
- name: realtime-v1 |
|
_comment: "Realtime: /realtime/v1/* -> ws://realtime:4000/socket/*" |
|
url: http://realtime-dev.supabase-realtime:4000/socket/ |
|
routes: |
|
- name: realtime-v1-all |
|
strip_path: true |
|
paths: |
|
- /realtime/v1/ |
|
plugins: |
|
- name: cors |
|
- name: key-auth |
|
config: |
|
hide_credentials: false |
|
- name: acl |
|
config: |
|
hide_groups_header: true |
|
allow: |
|
- admin |
|
- anon |
|
|
|
## Storage routes: the storage server manages its own auth |
|
- name: storage-v1 |
|
_comment: "Storage: /storage/v1/* -> http://storage:5000/*" |
|
url: http://storage:5000/ |
|
routes: |
|
- name: storage-v1-all |
|
strip_path: true |
|
paths: |
|
- /storage/v1/ |
|
plugins: |
|
- name: cors |
|
|
|
## Secure Database routes |
|
- name: meta |
|
_comment: "pg-meta: /pg/* -> http://pg-meta:8080/*" |
|
url: http://meta:8080/ |
|
routes: |
|
- name: meta-all |
|
strip_path: true |
|
paths: |
|
- /pg/ |
|
plugins: |
|
- name: key-auth |
|
config: |
|
hide_credentials: false |
|
- name: acl |
|
config: |
|
hide_groups_header: true |
|
allow: |
|
- admin
|
|
|