sql >> Database >  >> RDS >> Sqlserver

Waarom geeft Entity Framework met Windows-verificatie mijn referenties niet door aan SQL Server?

Een van de serverjongens op het werk wees me op deze link, wat een nuttige referentie is:http://msdn.microsoft.com/en-us/library/bsz5788z%28v=vs.100%29.aspx

Hij en anderen ontmoedigden me om Windows-verificatie te gebruiken. Een reden was dat ik elke nieuwe gebruiker als een account aan de database zou moeten toevoegen en het zou erg omslachtig worden met een groot gebruikersbestand. Ook in onze omgeving waar we het potentieel hebben voor gebruikers die uit verschillende inlogdomeinen komen, spelen de problemen met het hebben van de juiste vertrouwensrelaties en authenticatiepaden tussen domeinen een rol.

Dus ik stopte met proberen om Windows-verificatie te gebruiken om verbinding te maken met de database, en maakte een enkel aanmeldingsaccount in de database voor EF in de MVC-toepassing om te gebruiken (van de webserver naar de DB-server). Het werkt geweldig op deze manier, maar ik zal een soort databasetabel moeten opzetten om bij te houden en te autoriseren welke gebruikers lees-/schrijftoegang hebben tot de hoofdgegevens versus alle alleen-lezen gebruikers (die daar niet in zitten tafel).

Mijn verbindingsreeks is gewijzigd om deze verbindingsreeks te hebben:

<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" />

Ik dacht dat Windows Authentication\Integrated Security dingen eenvoudiger en beter zou maken voor de gebruikers voor de hele applicatie, maar ontdekte dat het in onze omgeving beter is om het niet te gebruiken voor de SQL Server-verbinding.




  1. Foreign Keys - Wat doen ze voor mij?

  2. OleDB Gegevensprovider kan niet worden gevonden VBA/Excel

  3. Wat is er nieuw in PgBouncer 1.6

  4. Hoe dynamische toestemmingsbeperkingen te codificeren en op te slaan?