Zinn Hub
0
장바구니
0

한눈에 보기

이 서비스에 대한 주요 정보로 결정을 내리는 데 도움을 드립니다. Zinn Hub에서 생성됨, 판매자가 아님.

강제 적용 계층

데이터베이스 수준(앱 수준 아님)
규칙은 PostgreSQL 자체 내에 존재하며, 어떤 앱, 엔드포인트 또는 API가 데이터베이스에 액세스하는지에 관계없이 모든 쿼리에 적용됩니다.

지원되는 플랫폼

PostgreSQL 및 Supabase
세션 설정이 있는 일반 PostgreSQL과 정책 내에서 auth.uid() 및 JWT 클레임을 사용하는 Supabase에서 작동합니다.

작업 증명

테스트 포함(표준 및 고급)
자동화된 테스트는 다른 사용자로 로그인하여 금지된 읽기 및 쓰기가 실제로 실패하는지 확인합니다. 단순히 가정하는 것이 아닙니다.

배송 형식

마이그레이션 파일 + 서면 보고서
정책은 리포지토리에 사용할 준비가 된 마이그레이션 파일로 제공됩니다. 일반 언어 보고서는 누가 무엇을 볼 수 있는지, 그리고 향후 정책을 추가하는 방법을 설명합니다.

받으실 내용

스크린샷이 포함된 버그 보고서
서면 보고서
사용자 정의 코드
배송 방법:
주문 관리자
참고: 누가 무엇을 보고 변경할 수 있는지에 대한 서면 지도를 받게 되며, 발견된 각 간격에 대한 쿼리가 제공됩니다. 표준 및 고급에서는 정책과 역할이 리포지토리에 마이그레이션 파일로 제공되며, 다른 사용자로 로그인하여 각 규칙을 증명하는 테스트가 포함됩니다. 라이브 데이터베이스에 적용할 시기를 결정합니다.

전체 설명

사용자 계정, 유료 플랜 또는 여러 팀이 하나의 데이터베이스에 있는 모든 앱은 누가 어떤 행을 볼 수 있는지 결정해야 합니다. 해당 규칙이 앱 코드에만 존재하면 다른 방법으로 데이터에 접근하는 순간 실패합니다. 누군가 보호하는 것을 잊은 새 엔드포인트, 동일한 데이터베이스의 두 번째 앱 또는 Supabase가 테이블에 대해 생성하는 API와 같은 경우입니다. 행 수준 보안은 데이터가 있는 곳에 규칙을 배치합니다.

저는 NDA에 따라 구독 제품에 이 작업을 수행했습니다. 테이블에 대한 행 수준 보안 정책과 각 구독 계층에 대한 별도의 데이터베이스 역할을 사용하여 플랜에 포함된 내용이 누군가 잊을 수 있는 확인이 아니라 PostgreSQL에 의해 강제 적용되도록 했습니다.

Starter에서는 최대 5개 테이블이 가지고 있거나 부족한 정책을 검토하고, 각 간격을 보여주는 예시 쿼리와 함께 서면 목록을 보냅니다. Standard는 최대 10개 테이블에 대한 정책을 작성하거나 수정하고, 앱에 필요한 역할을 설정하고, 마이그레이션 파일로 제공하며, 사용자 A가 사용자 B의 행을 읽고 변경하려고 시도했지만 실패하는 테스트를 추가합니다. Advanced는 최대 25개 테이블을 다루고, 데이터베이스에서 강제 적용되는 플랜 또는 계층 제한을 추가하며, CI에서 테스트를 실행합니다.

Supabase에서는 auth.uid() 및 정책 내에서 사용되는 JWT 클레임과 동일한 PostgreSQL 기능이 적용됩니다. 일반 PostgreSQL에서는 정책이 백엔드가 각 요청에 대해 설정하는 세션 설정에서 현재 사용자를 읽습니다.

통화는 없습니다. 모든 패키지는 누가 무엇을 볼 수 있는지에 대한 일반 언어 메모로 끝납니다. Standard 및 Advanced에서는 정책도 테스트와 함께 리포지토리에 마이그레이션으로 제공됩니다. 배송 후 14일 동안 합의한 대로 작동하지 않는 모든 것을 무료로 수정해 드립니다.

프로젝트 완료 단계
1. 데이터 매핑 - 테이블, 각 행의 소유자, 누가 읽거나 변경해야 하는지(소유자, 팀원, 관리자, 각 플랜)를 나열합니다.
2. 기존 내용 검토 - 현재 정책, 권한 및 역할이 해당 맵과 비교되고, 모든 간격은 이를 보여주는 쿼리와 함께 기록됩니다.
3. 정책 및 역할 - 정책은 테이블별, 작업별로 작성되며, 플랜 또는 팀에 대한 역할과 함께 검토할 수 있는 마이그레이션 파일로 제공됩니다.
4. 증명 - 테스트는 다른 사용자로 로그인하여 서로의 데이터를 읽고 변경하려고 시도합니다. 모든 금지된 작업은 실패해야 하며, 모든 허용된 작업은 작동해야 합니다.
5. 인계 - 누가 무엇을 볼 수 있는지, 마이그레이션, 새 테이블이 나타날 때 정책을 추가하는 방법에 대한 간략한 일반 언어 메모.

Zinner 품질 보증

✓
검증된 전문가
모든 Zinner는 플랫폼에 참여하기 전에 검토 및 승인됩니다.
✓
품질 보장
모든 서비스는 당사의 품질 보증 약속으로 뒷받침됩니다.
✓
안전한 결제
배송된 작업을 승인할 때까지 결제가 보호됩니다.

패키지 비교

기능스타터표준고급
배송 시간2일5일10일
수정123
범위최대 5개 테이블 검토최대 10개 테이블에 대한 정책최대 25개 테이블, 계획 제한, CI
서면 보고서✓✓✓
예시 쿼리✓✓✓

서비스 상세정보

서비스 유형
스탠다드
Zinner 유형
프리랜서
가용성
주중
판매자의 국가
카자흐스탄
수락하는 언어
영어
러시아어
NDA 이용 가능
네
처리된 프로젝트 규모
소형에서 중형
응답 시간
12시간 이내
경력 연수
10+

자주 묻는 질문

앱 검사는 기억하는 경로를 보호합니다. 행 수준 보안은 나중에 추가된 엔드포인트와 Supabase의 API에 대한 직접 호출을 포함하여 앱의 데이터베이스 역할에서 실행되는 모든 쿼리를 다룹니다. 슈퍼유저, 테이블 소유자 및 Supabase의 서비스 키는 의도적으로 이를 우회하므로 해당 자격 증명은 서버에 유지됩니다. 대부분의 팀은 두 가지 종류의 검사를 모두 유지합니다.

정책이 느린 함수를 호출하거나 인덱스를 놓치면 그럴 수 있습니다. 저는 이를 염두에 두고 정책을 작성하며, 검토에서는 인덱스가 필요한 모든 정책을 나열합니다.

아니요. 데이터가 없는 스키마만으로도 정책을 작성하고 테스트하기에 충분합니다. 테스트는 제가 생성한 시드 데이터에서 실행됩니다.

아니요. 이러한 형태의 행 수준 보안은 PostgreSQL 기능이며, 이 서비스는 PostgreSQL을 기반으로 구축되었습니다.

고객 리뷰

이 Zinn에 대해 고객들이 무엇을 말하는지 확인하세요

카테고리

Zinner 정책

각 사용자가 자신의 데이터만 볼 수 있도록 PostgreSQL 행 수준 보안을 설정해 드립니다(Supabase 포함) 2 &Raquo; Zinn Hub

이 상품을 구매한 로그인된 고객만 리뷰를 남길 수 있습니다.

옵션 & 주문

Zinn Hub 앱 다운로드

알림 · 빠른 접근 · 전체 화면

브라우저에서 공유를 탭하세요

➜ 그 다음 "홈 화면에 추가"를 탭하세요