High-level description: public and individual sharing
Beyond clearer errors and instructions, the major two features of this release are public sharing levels and individual sharing permissions. By default, only the owner / creator of an ayb
database can access it. It's possible to share ayb
databases in two ways:
- By setting the public sharing level of the database to give all entities some level of access to the database.
- By sharing the database with a particular entity.
To set the public sharing level of a database, select one of the following options:
# The default setting: no entity will be able to access the database
# unless they specifically get permissions.
$ ayb client update_database marcua/test.sqlite --public-sharing-level no-access
# With a public sharing level of `fork`, entities will be able to see
# the database in the owner's list of databases using `ayb client
# list` and fork a copy of the database under their own account. They
# won't be able to query the database unless they fork it. Note:
# Listing access is implemented today, but forking one database into
# another account is not yet implemented.
$ ayb client update_database marcua/test.sqlite --public-sharing-level fork
# In addition to the listing and forking access that `fork`
# allows, `read-only` access allows any entity to
# issue a read-only (e.g., SELECT) query against the database. They
# can't modify the database.
$ ayb client update_database marcua/test.sqlite --public-sharing-level read-only
To provide a specific user with access to a database, select one of the following:
# Revoke access to a database from an entity.
$ ayb client share marcua/test.sqlite sofia no-access
# Allow an entity to make read-only (e.g., SELECT) queries against a
# database.
$ ayb client share marcua/test.sqlite sofia read-only
# Allow an entity to make any type of query against a database.
$ ayb client share marcua/test.sqlite sofia read-write
# Allow an entity to not only modify a database, but also to manage
# snapshots and change the permissions of any non-owner entity.
$ ayb client share marcua/test.sqlite sofia manager
Individual pull requests
Feature/cleanup changes
- Make a few errors that new users are likely ot encounter easier to understand by @marcua in #455
- Migrations for sharing permissions data models by @marcua in #461
- Add instructions for setting up test postgres user on Linux vs macOS by @marcua in #463
- Permissions data models in Rust by @marcua in #466
- Introduce update_database endpoint to enable public sharing level update by @marcua in #473
- Permissions public_sharing_level read-only/fork support by @marcua in #479
- Database sharing with individual entities by @marcua in #487
- Documentation for public sharing level and entity-specific permissions by @marcua in #483
Various dependabot changes
- Bump aws-credential-types from 1.2.0 to 1.2.1 by @dependabot in #452
- Bump rust-s3 from 0.34.0 to 0.35.1 by @dependabot in #454
- Bump async-trait from 0.1.81 to 0.1.83 by @dependabot in #465
- Bump lettre from 0.11.7 to 0.11.9 by @dependabot in #462
- Bump serde_json from 1.0.127 to 1.0.128 by @dependabot in #459
- Bump clap from 4.5.16 to 4.5.18 by @dependabot in #464
- Bump serde from 1.0.209 to 1.0.210 by @dependabot in #460
- Bump serde_json from 1.0.128 to 1.0.129 by @dependabot in #472
- Bump regex from 1.10.6 to 1.11.0 by @dependabot in #468
- Bump uuid from 1.10.0 to 1.11.0 by @dependabot in #471
- Bump tokio-cron-scheduler from 0.11.0 to 0.13.0 by @dependabot in #467
- Bump clap from 4.5.18 to 4.5.20 by @dependabot in #470
- Bump regex from 1.11.0 to 1.11.1 by @dependabot in #477
- Bump serde from 1.0.210 to 1.0.213 by @dependabot in #475
- Bump lettre from 0.11.9 to 0.11.10 by @dependabot in #476
- Bump serde_json from 1.0.129 to 1.0.132 by @dependabot in #474
- Bump serde from 1.0.213 to 1.0.214 by @dependabot in #478
- Bump clap from 4.5.20 to 4.5.21 by @dependabot in #482
- Bump scraper from 0.20.0 to 0.21.0 by @dependabot in #480
- Bump serde from 1.0.214 to 1.0.215 by @dependabot in #481
- Bump blake3 from 1.5.4 to 1.5.5 by @dependabot in #486
- Bump serde_json from 1.0.132 to 1.0.133 by @dependabot in #485
- Bump rustyline from 14.0.0 to 15.0.0 by @dependabot in #484
Full Changelog: v0.1.8...v0.1.9