Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.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# 在通用处理程序(ashx)中使用网络凭据进行读取和身份验证_C#_Ashx_Generic Handler_Networkcredentials - Fatal编程技术网

C# 在通用处理程序(ashx)中使用网络凭据进行读取和身份验证

C# 在通用处理程序(ashx)中使用网络凭据进行读取和身份验证,c#,ashx,generic-handler,networkcredentials,C#,Ashx,Generic Handler,Networkcredentials,我在实体框架应用程序中创建了一个通用处理程序,该应用程序显示表中的数据。我想保护处理程序,以防有人试图通过url或其他方式直接访问它。当从另一个应用程序调用数据时,在何处以及如何写入用户名和密码,以在处理和调出数据之前进行身份验证(调用应用程序将具有用户名和密码) } 调用请求正在使用 request.Credentials=新的网络凭据(用户名、密码); 双方同意使用什么用户名和密码。在我的处理程序中将这些映射到哪里?您要查找的是。这允许您使用基于角色的权限访问的类和方法 以下是一些有助于锁定

我在实体框架应用程序中创建了一个通用处理程序,该应用程序显示表中的数据。我想保护处理程序,以防有人试图通过url或其他方式直接访问它。当从另一个应用程序调用数据时,在何处以及如何写入用户名和密码,以在处理和调出数据之前进行身份验证(调用应用程序将具有用户名和密码)

}

调用请求正在使用 request.Credentials=新的网络凭据(用户名、密码);
双方同意使用什么用户名和密码。在我的处理程序中将这些映射到哪里?

您要查找的是。这允许您使用基于角色的权限访问的类和方法

以下是一些有助于锁定页面的附加属性:

[HttpPost] //URL Post method only

[HttpGet] //URL Post method only

[ChildActionOnly] //Not accessible via URL
编辑

您希望保护处理程序,以防有人试图通过url直接访问它,对吗?为此,请从MyDatahandler\u ProcessRequest中检查服务器变量
HTTP\u REFERER
。如果用户不是来自他们应该来自的地方,抛出HTTP403错误

在web.config中,尝试将其调整为:

<authorization>
    <allow verbs="POST" users="*"/>
    <deny verbs="GET" users="*"/> 
</authorization> 


这将阻止使用URL参数进行任何直接URL访问。

我在webconfig中有这个,在webconfig中有这个,但不确定在处理程序中还要做什么。但是调用函数如何使用网络凭据访问。我肯定我错过了什么
<authorization>
    <allow verbs="POST" users="*"/>
    <deny verbs="GET" users="*"/> 
</authorization>