sql >> Database >  >> RDS >> Mysql

asp.net winkelrollen in sessie Roles.AddUsertoRole (niet wat ik zoek?)

Is Roles.AddUserToRole echt wat ik zoek om aan mijn behoeften te voldoen. Ik denk dat ik de gebruikersrollen in de sessie moet opslaan, nietwaar?

NEE! Door gebruiker aan rollen toe te voegen, zal de provider de gebruiker aan de rol koppelen. Aangezien je de gebruiker al hebt gekoppeld, is dit een waardeloze richting.

die rollen op de een of andere manier opslaan, zodat ik bedieningselementen en links kan weergeven op basis van hun rollidmaatschap

Waarom moet je dit doen? Op paginaniveau kunt u ASP.NET-beveiliging instellen met afsnijdingen, zodat u automatisch pagina's kunt uitsluiten van de gebruikersweergave als ze niet de juiste rol(len) hebben. Wat betreft secties/besturingselementen/etc, kunt u controleren of een gebruiker een IS in een rol heeft en vervolgens bepalen of u deze wel of niet wilt weergeven. Als je secties gebruikt, kan veel hiervan declaratief worden gedaan in plaats van programmatisch.

Het enige voorbehoud is wat uw lidmaatschapsaanbieder ondersteunt. De "out of the box" providers (Access en SQL Server) ondersteunen beveiligingsaanpassingen en declaratieve syntaxis voor uitsluitingen van secties van een pagina, enz. Als de MySQL-provider alle methoden volledig implementeert, zou het ook goed moeten zijn om het te gebruiken . Als u een aangepaste provider maakt, zijn er bepaalde onderdelen die u moet implementeren om dingen werkend te krijgen.

Het korte verhaal is dat als je eenmaal een lidmaatschapsgebruiker hebt (authenticeer de persoon), je toegang hebt tot of de persoon in functie is of niet. Dit maakt allemaal deel uit van de standaard implementatie van een lidmaatschapsprovider in .NET. Zolang de provider die u gebruikt voor MySQL dezelfde methoden dekt, kunt u een snelle Google-zoekopdracht uitvoeren en talloze sites vinden die laten zien hoe u bits kunt weergeven/verbergen op basis van rollen.




  1. Hoe PostgreSQL-database profileren?

  2. mysql:BRON fout 2?

  3. orakel | dubbele records verwijderen

  4. OracleParameter en IN-clausule