Wir haben mehrere Seiten, die von einer Instanz von Sitecore ausgehen. Für eine der Sites müssen die Benutzer & Rollen über ein externes Back-End-System verwaltet werden. Daher haben wir benutzerdefinierte Rollenanbieter für die Mitgliedschaft & zusammen mit Domänen für jede Site konfiguriert. Aus irgendeinem Grund scheint der Umschalter des Rollenanbieters jedoch nicht respektiert zu werden. Wenn ich mich als Sitecore-Benutzer beim CMS anmelde, wird mein eigener Rollenanbieter dennoch aufgefordert, Rollen für diesen Benutzer zu versuchen, obwohl der Rollenanbieter für eine andere Domäne konfiguriert ist.Sitecore - Wechselanbieter für Rollenanbieter, der die Domain nicht respektiert
Der Rollenanbieter arbeitet gut, wenn der tatsächliche Nutzer in die Website einzuloggen, aber es sollte nicht getroffen werden, dass, wenn CMS-Benutzer bearbeiten Seiten usw.
Config in unserem Web.config:
<roleManager defaultProvider="sitecore" enabled="true" cookieRequireSSL="false" createPersistentCookie="false" cookieSlidingExpiration="true" cacheRolesInCookie="false">
<providers>
<clear />
<add name="sitecore" type="Sitecore.Security.SitecoreRoleProvider, Sitecore.Kernel" realProviderName="switcher" raiseEvents="true" />
<add name="sql" type="System.Web.Security.SqlRoleProvider" connectionStringName="core" applicationName="sitecore" />
<add name="MyProvider" type="MyApp.Web.Infrastructure.Security.RoleProviders.MyProvider, MyApp.Web" applicationName="sitecore" />
<add name="switcher" type="Sitecore.Security.SwitchingRoleProvider, Sitecore.Kernel" applicationName="sitecore" mappings="switchingProviders/roleManager" />
</providers>
</roleManager>
plus unsere gepatchten in Sitecores config:
<switchingProviders>
<roleManager>
<provider providerName="MyProvider" storeFullNames="false" wildcard="%" domains="mydomain" patch:after="provider[@providerName='sql']"/>
</roleManager>
</switchingProviders>