Zoeken…


Opmerkingen

Sitecore biedt twee manieren om toegang te krijgen tot items waartoe de contextgebruiker geen toegangsrechten heeft. De beste manier is om de klasse UserSwitcher te gebruiken om tijdelijk de gebruiker te wijzigen die zal worden gebruikt om toegang tot het item te krijgen. De reden dat dit de voorkeur heeft, is omdat u nog steeds machtigingen kunt hebben voor het gebruikersaccount dat wordt gebruikt.

Het alternatief is om de klasse SecurityDisabler te gebruiken. Dit voert de actie uit zonder beveiligingsbeperkingen.

Het wordt aanbevolen om deze klassen alleen te gebruiken voor de bewerkingen waarvoor verhoogde machtigingen zijn vereist. De beste manier om dit te verzekeren is door het trefwoord 'gebruiken' in C # te gebruiken; dit zorgt ervoor dat de UserSwitcher / SecurityDisabler correct wordt verwijderd.

Schakel machtigingscontrole uit bij toegang tot een item

using (new Sitecore.SecurityModel.SecurityDisabler())
{
    var item = Sitecore.Context.Database.GetItem("/sitecore/content/home");               
}

Zich voordoen als een andere gebruiker bij het openen van een item

var user = Sitecore.Security.Accounts.User.FromName("sitecore/testname", false); 

using (new Sitecore.Security.Accounts.UserSwitcher(user))
{
    var item = Sitecore.Context.Database.GetItem("/sitecore/content/home");
}


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow