Sitecore Clientユーザーなら誰でも、許可されているログイン ユーザー数に達した場合にログイン ユーザーを追加したり切断することが可能です。しかし、管理者権限を有するユーザーのみがログイン ユーザーの追加や切断操作を行えたほうがよい場合があります。
非管理者ユーザーがブースト機能(ログイン ユーザー数の増加)を使用できないようにするには、以下のカスタマイズを適用していただく事ができます。このコードの例はカスタマイズの出発点としてのみ提供されており、必要に応じて変更が必要な場合がある点にご注意ください。
namespace Sitecore.Support.Client.LicenseOptions.Controllers
{
public class BoostUsersController : Controller
{
[HttpGet]
public void RedirectToBoost()
{
if (!Context.User.IsAuthenticated || !Context.User.IsAdministrator)
{
base.Response.StatusCode = 401;
}
else
{
base.Response.Redirect(GetBoostUrl(), endResponse: true);
}
}
protected string GetBoostUrl()
{ ... }
}
}
namespace Sitecore.Support.Mvc.Pipelines.Initialize
{
internal class InitializeRedirectToBoostRoute
{
public virtual void Process(PipelineArgs args)
{
Assert.ArgumentNotNull(args, "args");
this.RegisterRoutes(RouteTable.Routes, args);
}
protected virtual void RegisterRoutes(RouteCollection routes, PipelineArgs args)
{
string[] namespaces = new string[] { "Sitecore.Support.Client.LicenseOptions.Controllers" };
routes.MapRoute("RouteName", "api/sitecore/BoostUsers/{action}", new
{
controller = "BoostUsers",
action = "RedirectToBoost",
id = UrlParameter.Optional
}, namespaces);
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/" xmlns:role="http://www.sitecore.net/xmlconfig/role/">
<sitecore role:require="Standalone or ContentManagement or XMCloud"> <pipelines> <initialize> <processor type="Sitecore.Support.Mvc.Pipelines.Initialize.InitializeRedirectToBoostRoute, YourAssemblyName" patch:before="processor[@type='Sitecore.Mvc.Pipelines.Initialize.InitializeCommandRoute, Sitecore.Speak.Client']"/> </initialize>
</pipelines> </sitecore> </configuration>