Różnica między posiadanymi schematami a członkostwem ról dla Microsoft SQL Server


24

Czy są różnice między Owned Schemasi Role Members?

Z mojego zrozumienia wynika, że Role Memberssą obowiązkowe - użytkownik musi mieć Role Memberszaznaczone przynajmniej jedno pole wyboru .

Nie Owned Schemasjest to jednak obowiązkowe. Naprawdę zastanawiam się, dlaczego istnieje taka potrzeba Owned Schemas.

wprowadź opis zdjęcia tutaj

Odpowiedzi:


17

Jabłka i Pomarańcze. Role to role, a schematy to schematy. Fakt, że istnieje rola o nazwie, db_accessadmina także o nazwie schematu db_accessadmin, nie oznacza, że ​​rola jest schematem ani że schemat jest rolą. Role to kontenery członkostwa w zabezpieczeniach, główny zobowiązany jest członkiem roli. Schematy zawierają obiekty powiązane ze schematem bazy danych i są własnością zleceniodawcy. Podczas tworzenia nowego użytkownika możesz wybrać jego domyślny schemat, dodać go do niektórych ról i przyznać mu własność schematów. Chociaż akcje są osobne, projektanci tego okna dialogowego uważają, że są w jakiś sposób spokrewnieni z zasługami dla całej tej nieruchomości UX (co jest wątpliwe, ale zupełnie inny temat).


Czytając między wierszami , przypuszczam, że sens posiadania tych schematów jest taki, że np. Możesz mieć możliwość zapisywania określonych obiektów przez użytkowników z db_datareaderrolą i schematem, które niekoniecznie są czytelne dla nikogo innego. Działa dobrze w przypadku aplikacji, która potrzebuje tylko dostępu do odczytu dbo, ale musi zainstalować niektóre zapisane procesy lub wyzwalacze. Oczywiście nadal wymaga to ręcznego dodania każdego użytkownika do roli i schematu.
jpaugh

-1

Cóż ... to jest bardzo stary wątek, ale wciąż 2 centy ode mnie dla tych, którzy będą tu nadal odwiedzać. Ten link ma najlepszą odpowiedź na powyższe zapytanie.

https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/sql/ownership-and-user-schema-separation-in-sql-server

Fragment tego samego:

SQL Server jest dostarczany z dziesięcioma predefiniowanymi schematami, które mają takie same nazwy jak wbudowani użytkownicy bazy danych i role. Istnieją one głównie dla kompatybilności wstecznej. Możesz usunąć schematy o tych samych nazwach, co ustalone role bazy danych, jeśli ich nie potrzebujesz.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.