2

Windows Azure で Web サイトとしてホストされている、新しく作成された Lightswitch HTML アプリケーションに Windows 認証を実装しようとしています。Active Directory とアプリケーションを作成し、ポータルで参照されているブログ エントリに記載されている手順に従って、ログイン ページを取得し、検証を実行することができました。しかし、HTML Web サイトに戻ると、リクエストごとに 500 エラーが発生します。

検証をテストするために、単純にユーザー名を返す汎用ハンドラーを作成しました。

public void ProcessRequest(HttpContext context)
{
    using (var serverContext = ServerApplicationContext.CreateContext())
    {
        context.Response.ContentType = "text/plain";
        context.Response.Write(serverContext.Application.User.Name);
    }
}

そしてcustomErrorsを無効にし、エラーの詳細を取得することができました:

[NullReferenceException: Object reference not set to an instance of an object.]
   Microsoft.LightSwitch.Utilities.Server.Internal.ServerRequestSecurityState.GetSecurityGroupsForCurrentUser(IWindowsIdentity identity) +20
   Microsoft.LightSwitch.Utilities.Server.Internal.ServerRequestSecurityState.GetEffectiveRolesForUser(IIdentity identity, IEnumerable`1 currentRoles, Func`3 getRoles) +687
   Microsoft.LightSwitch.Utilities.Server.Internal.ServerRequestSecurityState.GetEffectiveRolesForUser(IIdentity identity, IEnumerable`1 currentRoles) +121
   Microsoft.LightSwitch.Security.ServerGenerated.Implementation.SecurityDataProvider.GetUserData(IPrincipal principal) +305
   Microsoft.LightSwitch.Security.ServerGenerated.Implementation.SecurityDataProvider.CreateUser(IPrincipal principal) +18
   Microsoft.LightSwitch.Security.ServerGenerated.Implementation.SecurityInfo.CreateUser(IPrincipal principal) +7
   Microsoft.LightSwitch.Utilities.Server.Internal.SecurityHelper.ConvertPrincipal(IPrincipal principal) +184
   Microsoft.LightSwitch.Framework.Server.ServerApplication`2.get_User() +166
   LightSwitchApplication.Web.GetUserName.ProcessRequest(HttpContext context) +144
   System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +341
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +69

不足しているものがあるのか​​ 、それとも、このシナリオ (Azure Web サイト + Azure AD の Lightswitch) は、現時点では Lightswitch でサポートされていないのでしょうか。

4

0 に答える 0