Har problem med att ansluta min ASP.NET sida till en SQL server som ligger lokalt på min maskin. Får ett exception när jag gör conn.Open() och kan inte lista ut hur jag skall sätta upp miljön för att komma förbi problemet. Hej. Hej, Som FredrikS skrev, rättighetsproblem. Du har väl knappast tilldelat användaren ASPNET behörighet som sa på SQL Servern (eller Administrator på burken). Nja, jag skulle säga att det är enklare och framförallt bättre att se till ASP.NET-applikationen kör som en annan, definierad användare, med precis de rättigheter som behövs. varför skulle det vara bättre än att skapa ett konto i databasen med de rättigheterna som behövs och använda det kontot? bara nyfiken... Nu hänger jag inte riktigt med i vem frågor riktas till, men om jag svarar på det du skrev: Ok..förlåt om jag var ospecificerad i min formulering..ber om ursäkt. En grundregel är att man inte ska använda sa kontot. Om man inte enbart kör integrerad säkerhet. Ska man skapa ett nytt administratörskonto. Helst utan admin i eller något annat som avslöjar vilka rättigheter det har.ASP.NET och SQLServer
Min connection string ser ut som följer:
Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=TravelDB;Data Source=SEMLDW10112\NetSDK
Denna connectionstring fungerar när jag använder ett Windows form men ej i ASP.NET. Har försökt med att lägga till en ASP.NET användare till SQLServer men får det ändå inte att fungera.
Är det någon som har ett bra tips?
/MagnusSv: ASP.NET och SQLServer
Troligtvis rättigheterna som strular.
Tänk på att du kör som "ASPNET"...
Vad får du för felmeddelande??
//freddaSv: ASP.NET och SQLServer
får följande fel:
Security Exception
Description: The application attempted to perform an operation not allowed by the security policy. To grant this application the required permission please contact your system administrator or change the application's trust level in the configuration file.
Exception Details: System.Security.SecurityException: Requested registry access is not allowed.
Source Error:
Line 91: try
Line 92: {
Line 93: conn.Open();
Line 94: cmd.ExecuteNonQuery();
Line 95: Response.Write("New image inserted");
Sv: ASP.NET och SQLServer
Enklare att köra SQL-inloggning med SQL Server login (ej trusted där du får ange användare och lösenord).
/TommySv: ASP.NET och SQLServer
Sv: ASP.NET och SQLServer
förresten behöver du inte speca sa i connectionstängen med windows authenticationSv: ASP.NET och SQLServer
Jag menade inte att man ej skulle skapa ett konto i databasen och sätta rättigheter i dbn till det. Vad jag menade var bara att man inte behöver skapa ett SQL Server-konto för det, utan man kan istället sätta ASP.NET-applikationen att köra som en viss NT-användare (med bara precis de rättigheter den behöver i t ex filsystem och annat), samt ge denna NT-användare inloggning i SQL Server och kopplas till den user man skapat i databasen.
> förresten behöver du inte speca sa i connectionstängen med windows authentication
Det här förstår jag inte alls. Vem har sagt något om det? Och i vilket fall som helst, nej det 'behöver' man inte, rättare sagt man _kan_ inte göra det eftersom sa inte är ett NT-user login utan ett SQL Server-konto.Sv: ASP.NET och SQLServer
Den var egentligen uppdelad i en fråga och ett påstående.
Frågan:
Jag undrar helt enkelt varför du rekommenderar att använda NT-användare istället för en användare i databasen. Jag skulle bara vilja ha reda på dina funderingar. Genom att speca en NT-användare på ASP.NET kontot kan det uppstå problem när du inte vill ha lika hög/låg säkerhet på olika virtual directories. Eller är det bara jag som är ute och simmar?
Angående connection strängen så såg jag att han hade satt User ID=sa och det var det jag ställde mig skeptiskt till. Det var bara en reflektion och som du själv skrev går ju inte detta att göra.Sv: ASP.NET och SQLServer
Man ska slumpa fram ett långt lösen ord. Skriva ner det på ett säkert ställe.
Helst låsa in det i ett kassaskåp eller bankfack. Kan vara bra att ha det på två platser för säkerhetsskull. Vet inte om det börjar brinna. Filer på hårddisken kan ju ev hacker läsa.
Detta är om man vill arbeta osäkert. typ har för mig att mer än 50% av alla SQL servrar inte har lösen ord för sa.
Det är en anledning till att välja integrerad säkerhet.
Om man ska vara ordentlig och använder integrerad säkerhet så skapar man en användare för varje webbapplikatio ger dem bara läs och skrivrättigheter till den databas och tabell de ska ha rättigheter till.
Tvivlar på att det är många som är så ordentliga. Men lite är bättre än inget. ;o)
Nu är ju inte jag expert på säkerhet i SQL server. Men detta är mina slutsastser jag har dragit av det jag läst. Om någon har något att tillägga eller korriger är jag tacksam.