Jika ada pengguna yang masuk dapat membaca baris pengguna lain, basis data Anda memercayai aplikasi untuk berperilaku. Saya memindahkan aturan ke PostgreSQL itu sendiri dengan kebijakan dan peran keamanan tingkat baris, lalu membuktikan dengan tes bahwa satu pengguna tidak dapat menjangkau data pengguna lain.
Saya akan menyiapkan keamanan tingkat baris PostgreSQL sehingga setiap pengguna hanya melihat data mereka sendiri, termasuk Supabase
Tinjauan keamanan tingkat baris hingga 5 tabel, dengan setiap celah ditunjukkan oleh kueri.
- Tinjauan hingga 5 tabel
- Laporan tertulis
- Contoh kueri
Kebijakan dan peran pada hingga 10 tabel, dengan pengujian yang membuktikan aturan berlaku.
- Kebijakan pada hingga 10 tabel
- Laporan tertulis
- Contoh kueri
Hingga 25 tabel, batas paket dalam basis data, migrasi, dan pengujian di CI.
- Hingga 25 tabel, batas paket, CI
- Laporan tertulis
- Contoh kueri
Minta Penawaran Kustom
Masuk untuk Meminta Penawaran Kustom
Buat akun gratis atau masuk untuk meminta penawaran yang dipersonalisasi dari Zinner ini.
Masuk / DaftarAjukan Pertanyaan Pra-Penjualan
Masuk untuk Bertanya
Untuk mengurangi spam platform, pesan pra-penjualan hanya dapat dikirim oleh pengguna yang masuk.
Buat akun gratis atau masuk untuk mengirim pesan langsung ke Zinner ini.
Masuk / DaftarDiperlukan login
Buat akun gratis atau masuk untuk meminta penawaran yang dipersonalisasi.
Masuk / DaftarSekilas
Detail penting tentang layanan ini untuk membantu Anda memutuskan. Dihasilkan oleh Zinn Hub, bukan penjual.
Posisi Nilai
Lapisan Penegakan
Platform yang Didukung
Bukti Kerja
Format Pengiriman
Apa yang Akan Anda Terima
Deskripsi Lengkap
Aplikasi apa pun dengan akun pengguna, paket berbayar, atau beberapa tim dalam satu basis data harus memutuskan siapa yang boleh melihat baris mana. Jika aturan itu hanya ada dalam kode aplikasi, aturan itu akan gagal pertama kali seseorang mencapai data dengan cara lain: titik akhir baru yang lupa dijaga seseorang, aplikasi kedua pada basis data yang sama, atau API yang dihasilkan Supabase untuk tabel Anda. Keamanan tingkat baris menempatkan aturan di tempat data berada.
Saya telah melakukan ini pada produk langganan di bawah NDA: kebijakan keamanan tingkat baris pada tabel dan peran basis data terpisah untuk setiap tingkatan langganan, sehingga apa yang termasuk dalam paket diberlakukan oleh PostgreSQL, bukan oleh pemeriksaan yang mungkin dilupakan seseorang.
Di Starter, saya meninjau kebijakan yang dimiliki atau tidak dimiliki hingga lima tabel dan mengirim daftar celah tertulis, dengan contoh kueri yang menunjukkan masing-masing. Standar menulis atau memperbaiki kebijakan pada hingga sepuluh tabel, menyiapkan peran yang dibutuhkan aplikasi Anda, mengirimkannya sebagai file migrasi, dan menambahkan pengujian di mana pengguna A mencoba membaca dan mengubah baris pengguna B dan gagal. Lanjutan mencakup hingga dua puluh lima tabel, menambahkan batas paket atau tingkatan yang diberlakukan dalam basis data, dan menjalankan pengujian di CI.
Di Supabase, fitur PostgreSQL yang sama berlaku, dengan auth.uid() dan klaim JWT yang digunakan di dalam kebijakan. Pada PostgreSQL biasa, kebijakan membaca pengguna saat ini dari pengaturan sesi yang ditetapkan backend Anda untuk setiap permintaan.
Tidak ada panggilan. Setiap paket diakhiri dengan catatan bahasa sederhana tentang siapa yang dapat melihat apa; pada Standar dan Lanjutan, kebijakan juga tiba sebagai migrasi di repositori Anda, bersama dengan pengujian. Selama 14 hari setelah pengiriman, saya memperbaiki apa pun yang tidak berfungsi seperti yang kita sepakati, tanpa biaya.
Langkah-langkah untuk menyelesaikan proyek Anda
1. Petakan data - Saya mencantumkan tabel, siapa pemilik setiap baris, dan siapa yang harus membaca atau mengubahnya: pemilik, anggota tim, admin, setiap paket.
2. Tinjau apa yang ada - Kebijakan, hibah, dan peran saat ini diperiksa terhadap peta itu, dan setiap celah dicatat dengan kueri yang menunjukkannya.
3. Kebijakan dan peran - Kebijakan ditulis per tabel dan per tindakan, dengan peran untuk paket atau tim, sebagai file migrasi yang dapat Anda tinjau.
4. Buktikan - Pengujian masuk sebagai pengguna yang berbeda dan mencoba membaca dan mengubah data satu sama lain. Setiap tindakan terlarang harus gagal, dan setiap tindakan yang diizinkan harus berhasil.
5. Serah terima - Catatan singkat dalam kata-kata sederhana tentang siapa yang dapat melihat apa, migrasi, dan cara menambahkan kebijakan saat tabel baru muncul.
Jaminan Kualitas Zinner
Setiap Zinner ditinjau dan disetujui sebelum bergabung dengan platform.
Semua layanan didukung oleh komitmen jaminan kualitas kami.
Pembayaran Anda dilindungi sampai Anda menyetujui pekerjaan yang telah diselesaikan.
Bandingkan Paket
| Fungsi | Pemula | Standar | Lanjutan |
|---|---|---|---|
| Waktu Pengiriman | 2 hari | 5 hari | 10 hari |
| Revisi | 1 | 2 | 3 |
| Lingkup | Tinjauan hingga 5 tabel | Kebijakan pada hingga 10 tabel | Hingga 25 tabel, batas paket, CI |
| Laporan tertulis | ✓ | ✓ | ✓ |
| Contoh kueri | ✓ | ✓ | ✓ |
Detail Layanan
Pertanyaan yang Sering Diajukan
Pemeriksaan aplikasi melindungi jalur yang Anda ingat. Keamanan tingkat baris mencakup setiap kueri yang berjalan di bawah peran basis data aplikasi Anda, termasuk titik akhir yang ditambahkan nanti dan panggilan langsung ke API Supabase. Pengguna super, pemilik tabel, dan kunci layanan Supabase melewatinya berdasarkan desain, itulah sebabnya kredensial tersebut tetap ada di server. Sebagian besar tim menyimpan kedua jenis pemeriksaan.
Bisa, jika kebijakan memanggil fungsi yang lambat atau kehilangan indeks. Saya menulis kebijakan dengan mempertimbangkan hal itu, dan tinjauan mencantumkan kebijakan apa pun yang membutuhkan indeks.
Tidak. Skema tanpa data sudah cukup untuk menulis dan menguji kebijakan. Pengujian berjalan pada data awal yang saya buat.
Tidak. Keamanan tingkat baris dalam bentuk ini adalah fitur PostgreSQL, dan layanan ini dibangun di sekitar PostgreSQL.
Ulasan Pelanggan
Lihat apa kata pelanggan kami tentang Zinn ini
Kategori
Kebijakan Zinner
Zinns Terkait

jadilah pengembang perangkat lunak Anda untuk saas, CRM, menggunakan next js, python, ai

membangun, memperbaiki, meningkatkan aplikasi web dengan lovable, bolt, replit, supabase, cursor, base44





