@adonis-agora/authkit-core 1.0.0-rc.1 → 1.0.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -0
- package/build/src/types/server_config.d.ts +3 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# @adonis-agora/authkit-core
|
|
2
2
|
|
|
3
|
+
## 1.0.0-rc.2
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#474](https://github.com/DavideCarvalho/adonis-agora-authkit/pull/474) [`df9e49d`](https://github.com/DavideCarvalho/adonis-agora-authkit/commit/df9e49d7817c03a7cce4cac1df709c7788d6307c) Thanks [@DavideCarvalho](https://github.com/DavideCarvalho)! - AuthKit's tables can live in their own database schema: `schema: { name: 'auth' }` in `defineConfig` puts every table AuthKit owns in `auth` (`"auth"."auth_settings"`) while the app stays in `public`. The schema is written into every statement, so it works on any connection and inside the app's own transaction, with no `searchPath` (which leaks across clients behind PgBouncer in transaction mode).
|
|
8
|
+
|
|
9
|
+
- The boot creates the schema (`CREATE SCHEMA IF NOT EXISTS`; MySQL: `CREATE DATABASE IF NOT EXISTS`) when `autoManage` is on, and fails with a message naming the schema and the grant when the role cannot create it. `ensureAuthkitSchema(db, { schema })` does the same from a migration.
|
|
10
|
+
- Covers the OIDC adapter table (`adapters.database({ schema })` overrides), the Lucid keystore (`jwks.store: { driver: 'lucid', schema }` overrides), the account store's tables (MFA, password history, organizations), runtime settings, session revocations, the personal-agent tables and agent extensions (`PersonalAgentHost.table(name)`, `AuthkitTable.create(table, { table })`, `ensureAuthkitTables(db, tables, { schema })`; Poppy uses them and `ensurePoppySchema(db, { schema })`).
|
|
11
|
+
- authkit-client: `lucidRevocationStore({ schema })`.
|
|
12
|
+
- SQLite with `schema.name` fails the boot instead of ignoring the option.
|
|
13
|
+
- `agora:doctor` gains `authkit.db-schema`: the schema exists, the tables are in it, the connection can write there. Silent without `schema.name`.
|
|
14
|
+
- The key-rotation lock key includes the schema, so two installs in two schemas of one database do not share it.
|
|
15
|
+
|
|
16
|
+
Without `schema.name` nothing changes.
|
|
17
|
+
|
|
3
18
|
## 1.0.0-rc.1
|
|
4
19
|
|
|
5
20
|
### Minor Changes
|
|
@@ -15,7 +15,10 @@ export type KeystoreStoreConfig = string | {
|
|
|
15
15
|
} | {
|
|
16
16
|
driver: 'lucid';
|
|
17
17
|
table?: string;
|
|
18
|
+
/** Lucid connection. Default: `schema.connection` of the server config. */
|
|
18
19
|
connection?: string;
|
|
20
|
+
/** Database schema of the table (MySQL: the database). Default: `schema.name`. */
|
|
21
|
+
schema?: string;
|
|
19
22
|
key?: string;
|
|
20
23
|
} | {
|
|
21
24
|
driver: 'redis';
|
package/package.json
CHANGED