sql >> Databáze >  >> RDS >> Sqlserver

Proč Entity Framework s ověřováním Windows nepředá moje přihlašovací údaje na SQL Server?

Jeden ze serverů v práci mě upozornil na tento odkaz, který je užitečným odkazem:http://msdn.microsoft.com/en-us/library/bsz5788z%28v=vs.100%29.aspx

On a další mě odrazovali od používání Windows Authentication. Jedním z důvodů bylo, že bych začal muset přidávat každého nového uživatele jako účet do databáze a mohlo by to být velmi těžkopádné s velkou uživatelskou základnou. V našem prostředí, kde máme potenciál pro uživatele pocházející z různých přihlašovacích domén, pak do hry vstupují problémy se správnými důvěryhodnými a ověřovacími cestami mezi doménami.

Takže jsem přestal zkoušet používat Windows Authentication pro připojení k databázi a vytvořil jsem jeden přihlašovací účet v databázi pro EF v aplikaci MVC k použití (z webového serveru na DB server). Funguje to skvěle, nicméně budu muset nastavit nějakou databázovou tabulku, abych sledoval a autorizoval, kteří uživatelé mají přístup pro čtení/zápis k hlavním datům oproti všem uživatelům pouze pro čtení (kteří v tom nebudou tabulka).

Můj připojovací řetězec se změnil na tento připojovací řetězec:

<add name="ReclosingContext" connectionString="Data Source=sqlserverbox\devtest;Initial Catalog=Reclosing;Integrated Security=False;User ID=xxxxxxxx;Password=xxxxxxxxx;MultipleActiveResultSets=True"
      providerName="System.Data.SqlClient" />

Myslel jsem si, že Windows Authentication\Integrated Security uživatelům zjednoduší a zlepší celou aplikaci, ale zjistil jsem, že v našem prostředí je lepší je nepoužívat pro připojení k SQL Serveru.




  1. Problémy s TransactionScope a Oracle

  2. Úroveň ochrany se změnila v polovině projektu – projekt se nyní nebude stavět

  3. Jak nastavit zdroj dat Spring/Heroku/postgres SSL

  4. Zobrazte řádky z MySQL, kde je datum a čas v příští hodině