Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1u8H5E-00HXlh-1O for pgadmin-support@arkaria.postgresql.org; Fri, 25 Apr 2025 11:19:04 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1u8H5C-009kNo-6M for pgadmin-support@arkaria.postgresql.org; Fri, 25 Apr 2025 11:19:03 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1u8H5B-009kNg-V3 for pgadmin-support@lists.postgresql.org; Fri, 25 Apr 2025 11:19:02 +0000 Received: from mail-ej1-x636.google.com ([2a00:1450:4864:20::636]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1u8H59-001x2Z-2Y for pgadmin-support@lists.postgresql.org; Fri, 25 Apr 2025 11:19:02 +0000 Received: by mail-ej1-x636.google.com with SMTP id a640c23a62f3a-acb615228a4so553051466b.0 for ; Fri, 25 Apr 2025 04:19:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1745579940; x=1746184740; darn=lists.postgresql.org; h=in-reply-to:from:content-language:references:to:subject:user-agent :mime-version:date:message-id:from:to:cc:subject:date:message-id :reply-to; bh=lgVDenMCJn2j4voyQIUYbCntZpZaA2esCDuE6ev0PxA=; b=m6gh37yHmXPN5ilBqhDacE02hEiCDSuunK+afyQf+afcTuiCYhrFn/qilw0Xwvuudt GVLWPYa/e0SgfzQRq+p0lncvOTiTjBChdsLXh/tj9Als2N5yhRYYXaaZQtNkMtO8PMI8 8Ni4aRD6xTghZ1F/LqoQIln2xi8GwXeo92/J6DS3Us0L8s4Q6zVxZq8Mej6TV2+aNfY7 XBJRvq96331XdAcErf6c9VqFvdyBHKLLqtZo6LFQolglU7SELDts8fxnKDaDkGowLzqG +mC+ZrbnOl1f3VKqP2i9PSS0m5ueOQXHddWobnALLbs7gO7Hy10+k69gx4MfSyIskXoZ WG9A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1745579940; x=1746184740; h=in-reply-to:from:content-language:references:to:subject:user-agent :mime-version:date:message-id:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=lgVDenMCJn2j4voyQIUYbCntZpZaA2esCDuE6ev0PxA=; b=rwlreEjR5mfRBuqLnY3JKBEbe8BiN1ZmZ2NF623YaAdDEbco/OXCYLTeSNL+0NWNjn /BGVSu2/A15arpc3RLFNQHG0sN032C/L8gjHYaaBQTwKRB4nS/zErp8Ze2m/v1vEM4qy YKmh657pQYM3oIR/4CLCNesD/oMuJZezis3IC2PkSbPQAfzuT/K3wvsV/iH+lE97mz9F XyKUuDPYyHowOKvJlv61VBpnZA7dMmqvi1aswTciEgorc9U1GgVlla0zknJGIIXlS29j UTi6aK+VAaO5qyAVUGdNlmVXdqtF5+kY9QQmO8cHY4UnvxmDhwWrvFDgVmU9QuJ0/MY4 e3aw== X-Gm-Message-State: AOJu0Ywyru3lpO/HBUm7JOcjA+fFEdeXnpN/g64cxKDa9vNoDMdNCO2P ZE0ITZcNGPobI7InTFOGD3wadExkxqFZN+WmfWRFjDNCCNmsWkxRe7YpmqeT X-Gm-Gg: ASbGncvOYvueWbve0G5kS6cHVOoh2d7TD+eOSgK3ApkENedTI3+Nsw6aq1I69LSqNLd Ew2nSVClVeCb7btcXL4M/BnhvymShpwGpTLBE341qr6NTfz/aUqVoV9HUQ2unKCTTDQJpm96s7E zs5LGzQGjLcu23HlDn4ac9P77Hmfi7mGxMrmgM12SRim6kh8KwpwnQG3xAW97rkGiIxqqY61PnT gdAeq/hCFU4XNkOpvw+XFc1YpP9nODsQOELixIzstlyRi+RzIxOlBXEHjQEP0lyd/nlR8Zjsaf+ JxSAYUddbmvkI2/lFPLxk3irGcv6o5aX6RZsgNYplgM= X-Google-Smtp-Source: AGHT+IFJGqWc4Z93edyPHzHggQKZwUyfnY1Usi3lYjQtbvk/MAcmez6lyCKRlnCNQgeUvRxRIJ2vtA== X-Received: by 2002:a17:907:1c0e:b0:ace:51fa:be56 with SMTP id a640c23a62f3a-ace73540ef6mr150578266b.19.1745579939404; Fri, 25 Apr 2025 04:18:59 -0700 (PDT) Received: from [192.168.129.20] ([109.136.50.84]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ace6e41b804sm120167066b.1.2025.04.25.04.18.58 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 25 Apr 2025 04:18:58 -0700 (PDT) Content-Type: multipart/alternative; boundary="------------xUbPfFjYOd000TNfRnHtbnfn" Message-ID: <980c6639-2dec-46c2-86e7-2d1b38ea1506@gmail.com> Date: Fri, 25 Apr 2025 13:18:58 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Assign Role based on Table Cell value To: pgadmin-support@lists.postgresql.org References: <2094241112.614816.1745454418891.ref@mail.yahoo.com> <2094241112.614816.1745454418891@mail.yahoo.com> Content-Language: en-US, nl From: Bastiaan Wakkie In-Reply-To: <2094241112.614816.1745454418891@mail.yahoo.com> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------xUbPfFjYOd000TNfRnHtbnfn Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit There is row-level security from PostgreSQL 9.5 onwards, see if that fits your needs. On 4/24/25 02:26, Æ • wrote: > I have several users accessing PostgreSQL database managed through > pgAdmin. The database consists of a table with several columns and > rows. I want to grant permission to certain users to write/edit > certain certain rows based on the value of a certain cell i.e., if > cell value = x than user 123 has edit rights. From what I have > understood, the Grant Wizard grants access to the entire table. Is > there anyway be more granular in granting access/assigning roles? > Thanks --------------xUbPfFjYOd000TNfRnHtbnfn Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit

There is row-level security from PostgreSQL 9.5 onwards, see if that fits your needs.

On 4/24/25 02:26, Æ • wrote:
I have several users accessing PostgreSQL database managed through pgAdmin. The database consists of a table with several columns and rows. I want to grant permission to certain users to write/edit certain certain rows based on the value of a certain cell i.e., if cell value = x than user 123 has edit rights. From what I have understood, the Grant Wizard grants access to the entire table. Is there anyway be more granular in granting access/assigning roles?
Thanks
--------------xUbPfFjYOd000TNfRnHtbnfn--