sql >> Database teknologi >  >> RDS >> Sqlserver

oprettelse af flere brugere til en c#.net winform-applikation ved hjælp af sql server express

I SQL Server kan du enten have konti baseret på Windows-konti eller separate, specifikke SQL-konti. For begge varianter skal du bruge én konto for hver bruger der skal bruge din database.

Den eneste undtagelse er muligheden for at oprette et SQL Server-login til en sikkerhedsgruppe i Windows , for eksempel. MyAppUsers , og derefter en bruger i din database til det pågældende login. Med dette vil enhver Windows-konto, der er medlem af den pågældende sikkerhedsgruppe (i Windows/AD), også have tilladelse til at se/bruge din database.

Med denne tilgang flytter du også administrationen af, hvem der kan bruge din database, ud af SQL Server, da det egentlig kun afhænger af medlemskab af en Windows-sikkerhedsgruppe.

Et login, en bruger - flere Windows-konti, der får tilladelser med dette. Det virker som en vinder for mig!

Opdatering:

Opret et login til en Windows AD-gruppe:

CREATE LOGIN [DOMAIN\GroupName] FROM WINDOWS

Opret en bruger i din database baseret på dette login:

USE (your database)

CREATE USER GroupNameUser 
FOR LOGIN [DOMAIN\GroupName]

Forbindelsesstreng for din SQL Server-forbindelse:

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

Hvad kan jeg ellers fortælle dig?

Opdatering #2: koden ikke Brug af Windows-konti er dette:

Opret et login for hver bruger, der skal bruge din applikation

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

Opret en bruger i din database baseret på det login - igen én gang for hver bruger af din app:

USE (your database)

CREATE USER UserName
FOR LOGIN (some login name)

Forbindelsesstreng for din SQL Server-forbindelse:

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

Men igen:dette kræver et login inklusive en adgangskode og en bruger i hver database som du skal holde styr på og muligvis lave ting som "reset password" operationer osv. fra din database app. Meget mere med hensyn til administrationsomkostninger!



  1. Sådan bruger du SUBSTRING() i MySQL

  2. mysql forskel i indeksbrug mellem MyISAM og InnoDB

  3. Konfiguration af AlwaysOn-tilgængelighedsgrupper - Del 2

  4. Hvordan strukturerer man et databaseskema for at tillade 1 i en million tilfælde?