| { | |
| "task_id": "basic_security_setup", | |
| "task_name": "Basic Security Setup", | |
| "category_id": "lego", | |
| "category_name": "Lego", | |
| "description": "Create the read-only theme_analyst role with SELECT rights on LEGO reference tables and enable row-level security on sets and inventory tables.", | |
| "author": "Lingxiao Du", | |
| "created_at": "2025-11-15", | |
| "difficulty": "L1", | |
| "tags": [ | |
| "security", | |
| "access control" | |
| ], | |
| "mcp": [ | |
| "postgres" | |
| ], | |
| "meta_data": { | |
| "stateType": "text", | |
| "stateContent": "Table \"lego_colors\" {\n \"id\" int4 [pk, not null, increment]\n \"name\" varchar(255) [not null]\n \"rgb\" varchar(6) [not null]\n \"is_trans\" bpchar(1) [not null]\n}\n\nTable \"lego_inventories\" {\n \"id\" int4 [pk, not null, increment]\n \"version\" int4 [not null]\n \"set_num\" varchar(255) [not null]\n}\n\nTable \"lego_inventory_parts\" {\n \"inventory_id\" int4 [not null]\n \"part_num\" varchar(255) [not null]\n \"color_id\" int4 [not null]\n \"quantity\" int4 [not null]\n \"is_spare\" bool [not null]\n}\n\nTable \"lego_inventory_sets\" {\n \"inventory_id\" int4 [not null]\n \"set_num\" varchar(255) [not null]\n \"quantity\" int4 [not null]\n}\n\nTable \"lego_part_categories\" {\n \"id\" int4 [pk, not null, increment]\n \"name\" varchar(255) [not null]\n}\n\nTable \"lego_parts\" {\n \"part_num\" varchar(255) [pk, not null]\n \"name\" text [not null]\n \"part_cat_id\" int4 [not null]\n}\n\nTable \"lego_sets\" {\n \"set_num\" varchar(255) [pk, not null]\n \"name\" varchar(255) [not null]\n \"year\" int4\n \"theme_id\" int4\n \"num_parts\" int4\n}\n\nTable \"lego_themes\" {\n \"id\" int4 [pk, not null, increment]\n \"name\" varchar(255) [not null]\n \"parent_id\" int4\n}\n", | |
| "stateUrl": null, | |
| "stateOriginalUrl": "https://github.com/neondatabase-labs/postgres-sample-dbs/blob/main/lego.sql" | |
| } | |
| } | |