Szukaj…


Uwagi

Sitecore oferuje dwa sposoby dostępu do elementów, do których użytkownik kontekstu nie ma uprawnień dostępu. Preferowanym sposobem jest użycie klasy UserSwitcher do tymczasowej zmiany użytkownika, który będzie używany do uzyskania dostępu do elementu. Jest to preferowane, ponieważ nadal możesz mieć uprawnienia dla konta użytkownika, które jest używane.

Alternatywą jest użycie klasy SecurityDisabler. Spowoduje to wykonanie akcji bez żadnych ograniczeń bezpieczeństwa.

Zaleca się używanie tych klas tylko do operacji wymagających podwyższonych uprawnień. Najlepszym sposobem na zapewnienie tego jest użycie słowa kluczowego „using” w języku C #; zapewni to prawidłowe usunięcie UserSwitcher / SecurityDisabler.

Wyłącz sprawdzanie uprawnień podczas uzyskiwania dostępu do elementu

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

Podszywaj się pod innego użytkownika podczas uzyskiwania dostępu do elementu

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
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow