Security 如果请求在我的web应用程序之外,我必须如何阻止请求?

Security 如果请求在我的web应用程序之外,我必须如何阻止请求?,security,asp.net-web-api,Security,Asp.net Web Api,我不知道我是否说得很清楚,但我会试试 我需要我的API来阻止我的web应用程序之外的任何人的请求,我正在使用JWT身份验证进行登录 我不知道如何开始这样做,我不知道我必须搜索/学习什么,所以我在这里寻求有关我可以搜索的主题的帮助。从广义上讲,您希望为您的API实施授权方案。当有人调用您的API时,这样做将允许您根据实体(个人、机器或其他服务/应用)和其他因素控制访问。如果您使用JWT令牌作为传递授权授权的手段,请让您的API检查1)令牌是否存在于请求中2)它是有效的3)它具有所有正确的声明。如果

我不知道我是否说得很清楚,但我会试试

我需要我的API来阻止我的web应用程序之外的任何人的请求,我正在使用JWT身份验证进行登录


我不知道如何开始这样做,我不知道我必须搜索/学习什么,所以我在这里寻求有关我可以搜索的主题的帮助。

从广义上讲,您希望为您的API实施授权方案。当有人调用您的API时,这样做将允许您根据实体(个人、机器或其他服务/应用)和其他因素控制访问。如果您使用JWT令牌作为传递授权授权的手段,请让您的API检查1)令牌是否存在于请求中2)它是有效的3)它具有所有正确的声明。如果1-3为真,则授权访问并继续执行API的核心逻辑


最有可能的是,您的技术/解决方案堆栈已经具备完成上述部分或全部工作的能力。最好的开始是阅读更多关于堆栈如何处理这些类型问题的内容,并从中开始。

您的问题很模糊。如果您想阻止人们为您的api创建另一个客户端,一般来说,这在技术上是不可能的,但对于某些特定的用例(如果您愿意,可能会受到威胁),例如从其他URL下载的javascript客户端(请参阅COR)。如果你想阻止CSRF攻击,那绝对是可能的,如果你的jwt是作为承载令牌发送的,那么它大部分已经完成了。嗯。。。我想防止有人试图访问我的数据库,我想我没有说清楚。。。如果有人得到了url,用邮递员发送,他们可以向我的数据库发送任何值,我想阻止它…这是一种游戏,你想防止作弊吗?这在技术上是不可能的。也许我无法表达我自己。。。这不是一个游戏,这是一个人力资源应用程序。。。控制支付和一些需要安全性的东西好吧,那么你的问题可能是软件设计/架构问题?问题是,为什么用户不能在一周中的某一天应该是的表列中插入“x”?嗯,1。因为在数据库(比如枚举列)中有验证,所以2。您的模型或等效模型中存在验证,以及3。因为没有这样的端点可以做到这一点。基本上,您首先验证您的用户(知道他是谁),然后授权每个操作,即在每个api端点上检查是否允许已验证的用户使用请求的参数执行请求的操作。您是否有任何资料可以让我更深入地了解这个主题(JWT声称)?嗯,我忘了说,我的身份和核心项目是不同的解决方案。。他们是独立的解决方案。。。可能是无用的信息,但我不知道索赔是如何工作的,所以只需添加信息。@LeoHenrique使用C#后端和Angular 5前端的core和identity projectsIm正在使用哪些技术堆栈看看这个