Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

tworzenie wielu użytkowników dla aplikacji winform c#.net przy użyciu serwera sql express

W SQL Server możesz mieć konta oparte na kontach Windows lub oddzielne, określone konta SQL. W przypadku obu odmian potrzebujesz jedno konto dla każdego użytkownika który musi korzystać z Twojej bazy danych.

Jedynym wyjątkiem jest możliwość utworzenia logowania do serwera SQL dla grupy zabezpieczeń systemu Windows , np. MyAppUsers , a następnie użytkownika w Twojej bazie danych dla tego logowania. Dzięki temu każde konto Windows, które jest członkiem tej grupy bezpieczeństwa (w Windows/AD), będzie również miało uprawnienia do przeglądania / korzystania z Twojej bazy danych.

Dzięki takiemu podejściu przenosisz również administrowanie tym, kto może korzystać z Twojej bazy danych, z SQL Server, ponieważ tak naprawdę zależy to tylko od członkostwa w grupie bezpieczeństwa Windows.

Jeden login, jeden użytkownik - wiele kont Windows, które uzyskują do tego uprawnienia. Wydaje mi się zwycięzcą!

Aktualizacja:

Utwórz login dla grupy Windows AD:

CREATE LOGIN [DOMAIN\GroupName] FROM WINDOWS

Utwórz użytkownika w swojej bazie danych na podstawie tego loginu:

USE (your database)

CREATE USER GroupNameUser 
FOR LOGIN [DOMAIN\GroupName]

Parametry połączenia dla połączenia z serwerem SQL:

server=(your server);database=(your database);integrated security=SSPI;

Co jeszcze mogę ci powiedzieć?

Aktualizacja nr 2: kod nie przy użyciu kont Windows jest to:

Utwórz login dla każdego użytkownik, który musi korzystać z Twojej aplikacji

CREATE LOGIN (some login name) WITH PASSWORD = 'Top$ecret'

Utwórz użytkownika w swojej bazie danych na podstawie tego loginu - ponownie, raz dla każdego użytkownika Twojej aplikacji:

USE (your database)

CREATE USER UserName
FOR LOGIN (some login name)

Parametry połączenia dla połączenia z serwerem SQL:

server=(your server);database=(your database);
  user id=UserName;Password=Top$ecret

Ale znowu:wymaga to jednego loginu z hasłem i jednego użytkownika w każdej bazie danych które musisz śledzić i prawdopodobnie robić takie rzeczy, jak operacje „resetowania hasła” itp. Z aplikacji bazy danych. Dużo więcej jeśli chodzi o koszty administracyjne!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. In-Memory OLTP:Co nowego w SQL Server 2016

  2. Jak SQLParameter zapobiega wstrzykiwaniu SQL?

  3. wydajność udf vs bezpośredni sql

  4. Unikanie kursorów w celu aktualizacji wielu rekordów za pomocą wyzwalacza

  5. Skrzyżowanie w MDX