repos
1 row where owner = 9599, permissions = "{"admin": false, "push": false, "pull": false}" and "updated_at" is on date 2020-06-12
This data as json, CSV (advanced)
Suggested facets: created_at (date), updated_at (date), pushed_at (date), topics (array)
id ▼ | node_id | name | full_name | private | owner | html_url | description | fork | created_at | updated_at | pushed_at | homepage | size | stargazers_count | watchers_count | language | has_issues | has_projects | has_downloads | has_wiki | has_pages | forks_count | archived | disabled | open_issues_count | license | topics | forks | open_issues | watchers | default_branch | permissions | temp_clone_token | organization | network_count | subscribers_count | readme | readme_html | allow_forking | visibility | is_template | template_repository | web_commit_signoff_required | has_discussions |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
271408895 | MDEwOlJlcG9zaXRvcnkyNzE0MDg4OTU= | datasette-permissions-sql | simonw/datasette-permissions-sql | 0 | simonw 9599 | https://github.com/simonw/datasette-permissions-sql | Datasette plugin for configuring permission checks using SQL queries | 0 | 2020-06-10T23:48:13Z | 2020-06-12T07:06:12Z | 2020-06-12T07:06:15Z | 25 | 0 | 0 | Python | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | Apache License 2.0 apache-2.0 | ["datasette", "datasette-plugin", "datasette-io"] | 0 | 0 | 0 | master | {"admin": false, "push": false, "pull": false} | 0 | 1 | # datasette-permissions-sql [](https://pypi.org/project/datasette-permissions-sql/) [](https://circleci.com/gh/simonw/datasette-permissions-sql) [](https://github.com/simonw/datasette-permissions-sql/blob/master/LICENSE) Datasette plugin for configuring permission checks using SQL queries ## Installation Install this plugin in the same environment as Datasette. $ pip install datasette-permissions-sql ## Usage First, read up on how Datasette's [authentication and permissions system](https://datasette.readthedocs.io/en/latest/authentication.html) works. This plugin lets you define rules containing SQL queries that are executed to see if the currently authenticated actor has permission to perform certain actions. Consider a canned query which authenticated users should only be able to execute if a row in the `users` table says that they are a member of staff. That `users` table in the `mydatabase.db` database could look like this: | id | username | is_staff | |--|--------|--------| | 1 | cleopaws | 0 | | 2 | simon | 1 | Authenticated users have an `actor` that looks like this: ```json { "id": 2, "username": "simon" } ``` To configure the canned query to only be executable by staff users, add the following to your `metadata.json`: ```json { "plugins": { "datasette-permissions-sql": [ { "action": "view-query", "resource": ["mydatabase", "promote_to_staff"], "sql": "SELECT * FROM users WHERE is_staff = 1 AND id = :actor_id" } ] }, "databases": { "mydatabase": { "queries": { "promote_to_staff": { "sql": "UPDATE users SET is is_staff=1 WHERE id=:id", "write": true } } }… | <div id="readme" class="md" data-path="README.md"><article class="markdown-body entry-content container-lg" itemprop="text"><h1><a id="user-content-datasette-permissions-sql" class="anchor" aria-hidden="true" href="#user-content-datasette-permissions-sql"><svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a>datasette-permissions-sql</h1> <p><a href="https://pypi.org/project/datasette-permissions-sql/" rel="nofollow"><img src="https://camo.githubusercontent.com/898a57540c5f63707e7d55e28f18598cd101ae1b7cbad1ff71ead7f4a12174f4/68747470733a2f2f696d672e736869656c64732e696f2f707970692f762f6461746173657474652d7065726d697373696f6e732d73716c2e737667" alt="PyPI" data-canonical-src="https://img.shields.io/pypi/v/datasette-permissions-sql.svg" style="max-width:100%;"></a> <a href="https://circleci.com/gh/simonw/datasette-permissions-sql" rel="nofollow"><img src="https://camo.githubusercontent.com/587e99cf6d88c2bcfe530b5748d7f0f2ed638809bec3aa914244b7bf2ddcdc82/68747470733a2f2f636972636c6563692e636f6d2f67682f73696d6f6e772f6461746173657474652d7065726d697373696f6e732d73716c2e7376673f7374796c653d737667" alt="CircleCI" data-canonical-src="https://circleci.com/gh/simonw/datasette-permissions-sql.svg?style=svg" style="max-width:100%;"></a> <a href="https://github.com/simonw/datasette-permissions-sql/blob/master/LICENSE"><img src="https://camo.githubusercontent.com/1698104e976c681143eb0841f9675c6f802bb7aa832afc0c7a4e719b1f3cf955/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d417061636865253230322e302d626c75652e737667" alt="License" data-canonical-src="https:/… |
Advanced export
JSON shape: default, array, newline-delimited, object
CREATE TABLE [repos] ( [id] INTEGER PRIMARY KEY, [node_id] TEXT, [name] TEXT, [full_name] TEXT, [private] INTEGER, [owner] INTEGER REFERENCES [users]([id]), [html_url] TEXT, [description] TEXT, [fork] INTEGER, [created_at] TEXT, [updated_at] TEXT, [pushed_at] TEXT, [homepage] TEXT, [size] INTEGER, [stargazers_count] INTEGER, [watchers_count] INTEGER, [language] TEXT, [has_issues] INTEGER, [has_projects] INTEGER, [has_downloads] INTEGER, [has_wiki] INTEGER, [has_pages] INTEGER, [forks_count] INTEGER, [archived] INTEGER, [disabled] INTEGER, [open_issues_count] INTEGER, [license] TEXT, [topics] TEXT, [forks] INTEGER, [open_issues] INTEGER, [watchers] INTEGER, [default_branch] TEXT, [permissions] TEXT, [temp_clone_token] TEXT, [organization] INTEGER REFERENCES [users]([id]), [network_count] INTEGER, [subscribers_count] INTEGER, [readme] TEXT, [readme_html] TEXT, [allow_forking] INTEGER, [visibility] TEXT, [is_template] INTEGER, [template_repository] TEXT, [web_commit_signoff_required] INTEGER, [has_discussions] INTEGER, FOREIGN KEY([license]) REFERENCES [licenses]([key]) ); CREATE INDEX [idx_repos_license] ON [repos] ([license]); CREATE INDEX [idx_repos_organization] ON [repos] ([organization]); CREATE INDEX [idx_repos_owner] ON [repos] ([owner]);