22. februar 2005 - 08:49Der er
45 kommentarer og 3 løsninger
Login/pass til MSDE
Hvilke user accounts findes der som udgangspunkt i en MS SQL (MSDE) database? Har lige installeret MSDE for første gang, og prøver at få forbindelse til databasen med programmet SQL Buddy.
Ehm, hvad er forskellen på de to? Jeg har ikke selv valgt nogen af delene, er det et problem? Serveren skal bruges til testing på en ASP.NET applikation.
Jeg ville personligt bruge Sql server security, hvis det er til en ASP.NET applikation.
Forskellen er at windows security "læser" den bruger du er logget ind med på din maskine, og giver adgang ud fra det.
Sql Server security, der skal man oprette login, og user inde i selve databasen, og så giver den adgang ud fra det. På den måde har din windows login intet med din sql server forbindelse at gøre.
Arne, Du skal stadig tilføje dit windows login til SQL Server med mindre, at din windows konto er medlem af SQL Serverens Windows Administrator gruppe.
Det er måske korrekt, det ved jeg slet ikke nok om :) Men jeg er bare meget overbevist om at han kan logge ind med sin sa, selv om sql serveren står til windows.
Ellers vil man kunne ende med at blive låst ude af sin egen sql server, hvis man løber ind i problemer med sit login. Men jeg ved det ikke, har bare lige læst mig igennem readme, og faldt netop over det med at man skulle angive sa password, selvom man ville have windows security.
IIS kan så vidt jeg ved køre i 2 modes: - en mode hvor det er database client brugernavnet der bruges og da det er ASP.NET som er database client så er det selvfølgelig dets brugernavn der bruges - en mode hvor slut brugeren impersonates (det ligger udenfor min IIS viden)
Hvis SQLServer security (mixed mode) ikke er enabled mener jeg ikke at man kan logge ind med sa. Så det at kontoen eksisterer og at man har sat password hjælper ikke meget.
Arne> Kommer det ikke an på om ens sql server ligger på samme maskine som der hvor ens ASP.NET side ligger?
Men vil ikke blande mig, har kun personlige erfarringer at tale med ud fra. De steder hvor jeg har lavet ASP.NET og sql, har vi altid haft en sql login. Sikkerhed har altid været vores store grund til at have sql logins.
De IIS, jeg har arbejdet med, har ikke kørt med impersonation.
party_dog > sa password skal angives for at sikre SQL Serveren mod angreb som Slammer. Det er et rent sikkerhedsspørgsmål, at du skal angive det. Bortset fra det, så vil serverens Windows administratorgruppe have adgang - med mindre det login er fjernet fra SQL Serveren.
Anyway - jeg kan finde ud af at logge på med mit client program (med brug af Windows security). Når I er færdige med jeres tekniske diskussion, må I gerne smide nogle svar så I kan få points :o)
(I må da også gerne lige kaste en hurtig connection string som jeg kan bruge fra ASP.NET...)
benny> Det kan jeg godt se, nu hvor du nævner det. Så tager jeg mine udtalelser til mig, og har endnu engang lært noget nyt. Det er altid dejligt at have en god diskution med folk herinde. :)
Men stadigvæk holder jeg på at man burde bruge sql logins, når man laver ASP.NET, da man skal prøve på at begrænse brugeren så meget som muligt.
party_dog > Du begrænser faktisk også brugeren mest muligt ved at bruge Windows login med ASP.NET, da det ikke er en bruger, men en process, der står som login. Ved kun at give dbaccess til Administrator gruppen og ASP.NET processens login er alle andre spærret af fra databasen.
Benny> nu tænker jeg inde i selve sql serveren. Så brugeren kun får adgang til selve den database som han skal bruge. Hvis vi begrænser på processen, vil de have fuld adgang til hele sql serveren.
Jamen... Hvis vi snakker om rettigheder inde på selve sql serveren, så har du givet ASP.NET processen rettigheder til at logge ind så selve sql serveren, er vi enige om det?
Hvis vi nu siger du har 2 ASP.NET sider, som bruger hver deres database, på den samme server. Hvordan vil du så ud fra at du har givet ASP.NET adgang til sql serveren, begrænse de 2 sider til hver deres database, når deres rettigheder ligger helt ude på at det bare er ASP.NET som har adgang?
Jeg ville aldrig logge ind som sa fra en webside, det eneste jeg prøvede på i starten, var at hjælpe david ind, så han kunne starte op, og se om det virkede...
Det ville jeg så bruge connection string til, da connection string IMHO aldrig må kunne redigeres fra brugersiden. Du angiver jo databasen i connectionstring.
Arne> okay :-) Jeg vil ikke blande mig mere, håber I alle sammen får en god dag :-) Tak for snakken.
David> Håber ikke vi har kørt den for vidt, skriv hvis du har problemer igen, så er jeg sikker på at vi alle kan blive enige om noget som du kan bruge til noget :-)
Hehe - Jeg synes det har været spændende at læse jeres diskussion, selvom I hvis mest taler forbi hinanden. Selv har jeg en del erfaring med databaseservere, og kender godt til sikkerhedsproblematikken. Jeg har bare ikke tidligere benyttet mig af MS SQL :)
Anyways - jeg tror jeg ender med at geninstallere med SQL security, da jeg synes det giver mest mening i forhold til det jeg roder med, selvom jeg sagtens kan se at Windows security i mange tilfælde vil være smartere.
Smider I andre (arne og party) ikke også lige et svar? Så kan jeg dele lidt points ud... :)
david> I henhold til at vi taler forbi hinanden, sådan vil det altid være, fordi man tænker i andre baner. Det er jo det som er dejligt, at man kan lære at tænke i nye baner, og retninger :-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.