[英]API authentication and authorization
如果我确实使用了 No Auth 类型,同时我可以在正文中传递令牌,我将请求该令牌并制作我自己的过滤器,结果会怎样?
如果您不喜欢内置的授权和/或身份验证库,您最好找到一个替代授权和/或身份验证库。 如果有一些关于默认身份验证配置的内容,可能有一种方法可以更改这些默认值——ASP.NET 核心授权和身份验证已得到极大改进,以支持大多数常见场景。 我建议为这两个功能项选择一个预先存在的库,并在遇到问题时发布有关它们的问题。
这完全取决于你。 但我不建议在正文中传递令牌。
在发布请求中,您必须将一些数据与令牌一起传递,然后您的请求正文将如下所示
{
"Token":"sdfjklsklfjsdkljfskljflskjfskljflsdk",
"data":{
"FirstName":"Pankaj",
"LastName":"Rawat"
}
}
C# Employee.cs
Public class Employee
{
public string FirstName {get; set;}
public string LastName {get; set;}
}
您将无法使用您的类型 object 直接 map 您的帖子数据,您需要编写额外的代码来分离令牌和数据。
大多数时候,我们在方法体中传递所有大的 JSON 参数,每次您需要反序列化您的请求体以获取令牌(即使令牌无效或不存在)
您可以编写自己的身份验证过滤器,但您应该在请求 header 中传递令牌
将来,您可能必须为不同的内容类型案例添加多个后备。 假设现在您将正文中的数据作为json 字符串传递,然后希望在使用表单数据(以支持文件)的新 API 中处理身份验证,那么您最终将处理多种情况。
我建议您使用标头来处理与身份验证相关的信息。 授权 header
(使用现有库或构建自己的库由您选择)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.