Citat:
plotter: 1. Nije moguce uraditi sp_droprolemember za public rolu (SQL Server 2005)
Da, izvini. User je uvek po defaultu u public roli, a public bi trebalo da je prazan.
U svakom slucaju da bi bio siguran izvrsi sp_helpuser i vidi u kojim rolama se nalazi [user] i uradi sp_droprolemember za svaku od njih (sem restricted), ako imas neka prava sa userom onda to dolazi ili od direktnih dozvola ili od clanstva u nekoj roli. (Da vidis direktne GRANT-ove za usera koristi exec sp_helprotect @username='[user]')
Citat:
plotter:2. Ograniceni user moze da radi cak i insert na svim tablama u bazi [A]
Nisam siguran da si obavio sve kako treba. Ako restricted rola ima samo prava na jednoj tabeli i ako je user samo u toj roli onda nema druga prava sem tih. Ako postoje prava a public rola nema grantove onda ta prava dolaze od neke druge role u koju je uclanjen user, proveri sa sp_helpuser
Citat:
plotter:Ni u public roli ni u [restricted] roli ne postoji ni jedan GRANT na bazu [A]
Public je implicitna rola (npr kao Everyone u windowsu) i ne bi trebalo da ima uticaja na tvoj problem i ona treba da bude prazna. restricted rola sa druge strane mora da ima GRANT koji si malopre izvrsio. Verovatno je problem u sledecem:
Citat:
plotter: btw. Da li treba da kazem USE [A] kada kreiram user-a i rolu, ili ovo treba vezati za neki drugi objekat?
login je na nivou servera, ali su useri, role i dozvole na nivou baze, tako da je odgovor DA, treba ti USE [A] pre bilo kakvih izmena