Skip to main content

Make specific Datasette tables visible to the public

Project description

datasette-public

PyPI Changelog Tests License

Make specific Datasette tables visible to the public

Installation

Install this plugin in the same environment as Datasette.

datasette install datasette-public

Usage

Any tables listed in the _public_tables table will be visible to the public, even if the rest of the Datasette instance does not allow anonymous access.

The root user (and any user with the new public-tables permission) will get a new option in the table action menu allowing them to toggle a table between public and private.

Installing this plugin also causes allow-sql permission checks to fall back to checking if the user has access to the entire database. This is to avoid users with access to a single public table being able to access data from other tables using the ?_where= query string parameter.

Configuration

This plugin creates a new table in one of your databases called _public_tables.

This table defaults to being created in the first database passed to Datasette.

To create it in a different named database, use this plugin configuration:

{
  "plugins": {
    "datasette-public": {
      "database": "database_to_create_table_in"
    }
  }
}

Development

To set up this plugin locally, first checkout the code. Then create a new virtual environment:

cd datasette-public
python3 -m venv venv
source venv/bin/activate

Now install the dependencies and test dependencies:

pip install -e '.[test]'

To run the tests:

pytest

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

datasette-public-0.2.1.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

datasette_public-0.2.1-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

Details for the file datasette-public-0.2.1.tar.gz.

File metadata

  • Download URL: datasette-public-0.2.1.tar.gz
  • Upload date:
  • Size: 8.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.0

File hashes

Hashes for datasette-public-0.2.1.tar.gz
Algorithm Hash digest
SHA256 cfe113149d342c6fdc13028fba1e5cfa86160f182c1c89cb1255ca76147edcba
MD5 1728121e763276299b9249c9e74ab0c4
BLAKE2b-256 fc8a7dfb1ad748f6aec6a9f325f24ae414d693ac519716d52f6da281ff7fc7e0

See more details on using hashes here.

File details

Details for the file datasette_public-0.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for datasette_public-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 31b72ae6a8220a7581c9ac27651c4f34b5e113c10c32581ade0600fcca0cbdb1
MD5 a2d1917540020fd0f8cf79bd037e5ef8
BLAKE2b-256 21c3818e203308e6584d686430858b66cf1ce13fc556481551627836b33ba480

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page