რა არის მწკრივების დონის უსაფრთხოება?
Row-level security (RLS) არის მონაცემთა ბაზის ფუნქცია, რომელიც რიგ-რიგად წყვეტს, რომელ ჩანაწერებს შეუძლია თითოეულ მომხმარებელს ნახვა ან შეცვლა, ისე რომ კლიენტი მხოლოდ საკუთარ შეკვეთებს ხედავდეს, თუნდაც აპი მეტს ითხოვდეს.
მის გარეშე წესი „მომხმარებლები ხედავენ მხოლოდ საკუთარ მონაცემებს“ აპის კოდში ცხოვრობს. თუ რომელიმე ეკრანს ან API-ს შემოწმება დაავიწყდება, კერძო მონაცემები შეიძლება გაჟონოს.
row-level security-ით წესი თავად მონაცემთა ბაზაშია. წერ პოლიტიკას, მაგალითად „orders-ის რიგი ჩანს მხოლოდ მაშინ, როცა მისი customer_id ემთხვევა შესული მომხმარებლის ID-ს“, და ბაზა მას ყოველ მოთხოვნაზე იყენებს.
Postgres მხარს უჭერს row-level security-ს, და ზოგი ბექენდ სერვისი მას დიდად ეყრდნობა, რადგან აპები მონაცემთა ბაზას პირდაპირ ბრაუზერიდან უკავშირდებიან. ასეთ მოწყობაში პოლიტიკის გარეშე ცხრილი ნებისმიერისთვის შეიძლება იყოს წასაკითხი.
RLS დაცვის ერთი ფენაა და არა ერთადერთი. აპებს კვლავ სჭირდებათ სწორი შესვლა, სერვერზე შემოწმებები და ადმინისტრატორის წვდომის ფრთხილი მართვა.
მაგალითები
- პორტალის კლიენტები ხედავენ მხოლოდ საკუთარ დოკუმენტებს
- ინსტრუმენტში თითოეული გუნდი ხედავს მხოლოდ საკუთარ პროექტებს
კითხვები
მჭირდება თუ არა row-level security?
თუ შენი აპი ბევრი მომხმარებლის კერძო მონაცემებს ინახავს და მისი ნაწილი მონაცემთა ბაზას პირდაპირ ბრაუზერიდან უკავშირდება, დიახ. თუ მთელი წვდომა ბექენდზე გადის, რომელიც უფლებებს ამოწმებს, RLS დამატებითი დამცავი ბადეა.
row-level security იგივეა, რაც როლები?
არა. როლები აღწერს, რა ტიპის მომხმარებელია ვინმე, მაგალითად ადმინი ან წევრი. Row-level security იყენებს ფაქტებს, როგორიცაა მომხმარებლის ID ან როლი, რათა გადაწყვიტოს, რომელ კონკრეტულ რიგებს შეძლებს მიწვდომას.
ასევე იხილეთ
- როგორ დავამატოთ როლებზე დაფუძნებული წვდომის კონტროლი
- უსაფრთხოების ჩამონათვალი AI-ით აგებული აპებისთვის
Mythex · Pricing · ააშენეთ ყველაფერი AI-ით · ვებსაიტისა და აპლიკაციის შაბლონები · Mythex შედარებით · AI-ით აპლიკაციის შექმნის ტერმინოლოგია · უფასო ინსტრუმენტები AI-ით აპლიკაციის შესაქმნელად · English