Jag får det inte att fungera när jag ska anslutat till min sql serverdatabas med hjälp av web.config Ifall du ska använda SQL-login så måste du ange det i datakällan. Nu verkar det som om du har den inställd på att använda windows användarkonto. Då struntar den i det användarnamn och lösenord du skrivit där. Det Mange som det talas om är alltså användarkontot, inte det som står i strängen. Ifall du vill använda windows-kontot (trusted connection) så måste du lägga till det i SQL-servern. Okej, Man ska skriva precis så som du gjort. Användaren ska vara en användare som finns i databasen. Okej, kan man se någonstans vilka användare det finns? > Okej, kan man se någonstans vilka användare det finns? Om du skall köra trusted connetion kan du skriva: Hmm, nu får jag det här felmeddelandet: Data Source (med mellanslag) Okej, Du behöver i detta fallet lägga in 'MAGNUS\ASPNET' Nu har jag gjort en användare i "Security-mappen" som heter test och har lösenordet test, jag har kopplat den till databasen som heter test. Så här ser det ut i web.config: Men din server är inställd att inte tillåta SQL Server logins, då det betraktas som en stor säkerhetsrisk. Okej, Ange "datasource=sqlservernamn; initial catalog=databas;integrated security=sspi" och tillåt inte s.k. mixed mode authentication, dvs både sql och windows. Sen kan man fortsätta genom att köra SSL mellan webb och sql om man nu vill det. < "datasource=sqlservernamn; initial catalog=databas;integrated security=sspi" Connectionstring + web.config
Hur ska man skriva i web.config?
<code>
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="ConnectionString" value="Data Source=MAGNUS;User Id=Mange;Password=;" />
</appSettings>
</configuration>
</code>
Sådär har jag skrivit och får det här felmeddelandet:
Login failed for user 'Mange'. Reason: Not associated with a trusted SQL Server connection.
Användaren jag är inloggad på heter Mange, men det kanske är fel. Kan man kolla upp nånstans vad det ska stå där? Sv: Connectionstring + web.config
Sv:Connectionstring + web.config
Hur ska man skriva i web.config för att ansuluta till SQL-login? Sv: Connectionstring + web.config
Sv:Connectionstring + web.config
När jag testade att göra en SP kikade jag på redan gjorda användare och där var Usern dbo och den funkade när man sparade SP:n, men den vill inte funka när jag connectar.
Jag undrar även om vart man skriver in vilken databas man vill ansluta till, gör man det i web.config? Sv: Connectionstring + web.config
I Enterprise Manager.
> Jag undrar även om vart man skriver in vilken databas man vill ansluta till, gör man det i web.config?
Det gör du i datakällan. Du kan dock ange i uppkopplingssträngen att du ska använda en annan tabell än den som står i datakällan.Sv:Connectionstring + web.config
datasource=localhost; initial source=databasnamn; integrated security=sspi;
så funkar det om du har kontot aspnet inlagt som konto på din sqlserverSv: Connectionstring + web.config
Keyword not supported: 'datasource'.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.ArgumentException: Keyword not supported: 'datasource'.
Vad är det för skillnad på trusted connection och den andra varianten? Sv:Connectionstring + web.config
Initial Catalog (inte source)
/mickeSv: Connectionstring + web.config
Nu verkar sökvägs-strängen vara rätt, men jag får det här felmeddelandet:
Login failed for user 'MAGNUS\ASPNET'.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Data.SqlClient.SqlException: Login failed for user 'MAGNUS\ASPNET'.Sv:Connectionstring + web.config
som en login under Security i SQL server Enterprise manager.
Samt ge användaren de behörigheter som behövs i din databas.
Men det är rekommenderat att du använder SQL-Login i stället av säkerhetsskäl.
Dvs skapa en användare med ett lösenord i SQL server och ge den behörighet till databasen.
I din connection string ska du sedan ange User id och Password.Sv: Connectionstring + web.config
<code>
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="ConnectionString" value="data source=localhost;
User id=test;
Password=test;
initial Catalog=test;
" />
</appSettings>
</configuration>
</code>
Jag får nu samma felmeddelande som jag fick i början:
Login failed for user 'test'. Reason: Not associated with a trusted SQL Server connection.Sv:Connectionstring + web.config
Om du vill göra det ändå, så gör du såhär:
Högerklick Properties på datorn i Enterprise Manager.
Security-fliken
Kryssa i Windows and SQL
Starta om tjänsten
Klart!
/mickeSv: Connectionstring + web.config
Är det en stor säkerhetsrisk?
Hur ska man göra om man vill göra det så säkert som möjligt? Sv:Connectionstring + web.config
Sv: Connectionstring + web.config
Om man skall vara petig...
"Data Source=sqlservernamn;Initial Catalog=databas;Integrated Security=SSPI"
Sen KAN det vara bra att låta webben köra som en annan user än ASPNET - om man kör fler siter på samma maskin (är en host) Annars är dte bara att lägga in ASPNET som user i din databas.
/micke