Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#ASP.NET核心2.0+;Azure AD身份验证:用户';他在一定时期内不活动_C#_Azure Active Directory_Asp.net Core 2.0 - Fatal编程技术网

C#ASP.NET核心2.0+;Azure AD身份验证:用户';他在一定时期内不活动

C#ASP.NET核心2.0+;Azure AD身份验证:用户';他在一定时期内不活动,c#,azure-active-directory,asp.net-core-2.0,C#,Azure Active Directory,Asp.net Core 2.0,我有一个ASP.NET Core 2.0 web应用程序,它使用Azure Active Directory身份验证。我需要它来注销一个用户,如果他/她处于非活动状态,比如说15分钟。我如何才能做到这一点?除了在_Layout.cshtml中使用JS脚本之外,还没有找到其他解决方法: <script> $(function () { $("body").on('click keypress', function () { ResetThisSe

我有一个ASP.NET Core 2.0 web应用程序,它使用Azure Active Directory身份验证。我需要它来注销一个用户,如果他/她处于非活动状态,比如说15分钟。我如何才能做到这一点?

除了在_Layout.cshtml中使用JS脚本之外,还没有找到其他解决方法:

<script>
    $(function () {
        $("body").on('click keypress', function () {
        ResetThisSession();
        });
    });

    var timeInSecondsAfterSessionOut = 900; // change this to change session time out (in seconds).
    var secondTick = 0;

    function CheckPage() {
        if (window.location.pathname == "/Account/SignedOut") {                
            return;
        } else {                
            StartThisSessionTimer();
        }
    }

    function ResetThisSession() {
        secondTick = 0;
    }

    function StartThisSessionTimer() {
        secondTick++;
        if (secondTick > timeInSecondsAfterSessionOut) {
            clearTimeout(tick);
            window.location.href = '@Url.Action("SignOut", "Account")';
            return;
        }
        tick = setTimeout("StartThisSessionTimer()", 1000);
    }

    CheckPage();

</script>

$(函数(){
$(“正文”)。在('单击按键',函数(){
重置此会话();
});
});
var timeInSecondsAfterSessionOut=900;//更改此选项可更改会话超时(以秒为单位)。
var=0;
函数检查页(){
如果(window.location.pathname==“/Account/SignedOut”){
返回;
}否则{
开始此会话计时器();
}
}
函数ResetThisSession(){
secondTick=0;
}
函数StartThisSessionTimer(){
secondTick++;
如果(第二次勾选>时间InSecondSafterSessionOut){
清除超时(滴答声);
window.location.href='@Url.Action(“注销”、“帐户”);
返回;
}
tick=setTimeout(“starttthissessiontimer()”,1000);
}
检查页面();

您想从应用程序或Azure广告中注销它们吗?我想从应用程序和Azure广告中注销。实际上是从应用程序中注销。两个问题:1。它将我带到一个Azure“您想注销哪个帐户”页面,该页面看起来与登录页面几乎相同。2.按浏览器的“后退”按钮将我带回到应用程序中-它不会使会话过期。