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.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for datasette-public-0.2.tar.gz
Algorithm Hash digest
SHA256 a806e8c5fc3f309582af314fdf792b8a4ea41d2d712c40adae6fc4b6ff18acde
MD5 f7ab20077984a5af39858669cf8bdfbe
BLAKE2b-256 f59c6d1f0999ad25f462d5010fd3c01aa53c86224376f1cd231717e6c9ca4186

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for datasette_public-0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d4dcdca25ff477812310840a133f4845f560d48cfce1a38ffacc4d4b339076cf
MD5 0afb24b77b592014d1cb45675ced1dfa
BLAKE2b-256 ab9959a85301de62511ab421baf977d1fa863646770446aa2564f6b7ece376ab

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