gpt4 book ai didi

.net - 如何保护 Web API 应用程序/HTML+JS 客户端的安全?

转载 作者:行者123 更新时间:2023-12-02 12:22:41 25 4
gpt4 key购买 nike

过去一周我一直在研究 SO 并阅读有关身份验证的书籍,并开始为我的 WebAPI 推出基本身份验证,以便 HTML客户端可以让用户登录/register/logout,但基本身份验证不方便注销,所以我回到了第一个方向。

详细信息:

  1. 我不需要让用户使用其他服务登录。我不需要 facebook 或 google 登录。只需一个用户名/密码。

  2. 我需要用户能够从客户端应用程序(而不是浏览器)登录/注销/注册。

  3. 我不介意通过网络发送凭据,因为我将使用 SSL。

  4. 目前只有一个客户端,但会有其他客户端访问 API,因此我将来需要实现类似于 api key 的功能。也许这是一个单独的问题。

  5. 我有一个 RESTish WebAPI,它接受/返回 JSON 到其他域中的 html/js 客户端。

  6. 这是为了原型(prototype)设计,所以我不需要最好的解决方案,只需要足够适合预发布并且实现时间短的解决方案。

我应该从哪里开始?你会做什么,为什么?表单验证是一个选项吗?

最佳答案

在你提出的问题

I don't mind sending credentials over the wire since I'll be using SSL.

在您所说的答案的评论中

I just don't want users sending plaintext passwords over the wire.

不确定您到底在寻找什么,但表单例份验证绝对是一个选择。您也可以使用基本身份验证,但它有一些缺点,如您提到的:无法注销等。您必须使用带有基本身份验证的 HTTPS。

如果浏览器弹出窗口是主要问题,您可以通过在第一个请求中抢先发送凭据来解决这个问题。通常,第一个请求没有授权请求 header 。服务以 401 进行响应,并发回 WWW-Authenticate 响应 header ,指示基本方案。这是当浏览器弹出对话框并询问用户 ID 和密码时,将其封装在基本方案中并发送授权 header 。

关于.net - 如何保护 Web API 应用程序/HTML+JS 客户端的安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15979714/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com