- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
身份验证服务允许禁用用户帐户(一种软删除)。
如果服务器随后收到对禁用用户的身份验证请求,否则该请求是有效的,服务器应该返回 401 还是 403?使用任一状态代码,我都会返回一条消息,指示该帐户已被禁用。
为了快速引用,相关报价来自 HTTP/1.1 spec (强调我的):
401未经授权
The request requires user authentication. The response MUST include aWWW-Authenticate header field (section 14.47) containing a challengeapplicable to the requested resource. The client MAY repeat therequest with a suitable Authorization header field (section 14.8). Ifthe request already included Authorization credentials, then the 401response indicates that authorization has been refused for thosecredentials. If the 401 response contains the same challenge as theprior response, and the user agent has already attemptedauthentication at least once, then the user SHOULD be presented theentity that was given in the response, since that entity mightinclude relevant diagnostic information. HTTP access authenticationis explained in "HTTP Authentication: Basic and Digest AccessAuthentication" [43].
403 禁止访问
The server understood the request, but is refusing to fulfill it.Authorization will not help and the request SHOULD NOT be repeated.If the request method was not HEAD and the server wishes to makepublic why the request has not been fulfilled, it SHOULD describe thereason for the refusal in the entity. If the server does not wish tomake this information available to the client, the status code 404(Not Found) can be used instead.
最佳答案
基于 an email由 Roy T. Fielding 撰写,显然有 a bug在当前的 HTTP 规范中。
规范预期的阅读方式如下(使用上述电子邮件中的引号):
401“未经验证”:
you can't do this because you haven't authenticated
403“未经授权”:
user agent sent valid credentials but doesn't have access
因此,在禁用用户的情况下,403 是正确的响应(404 也是一个选项)。
关于 "disabled"用户的 HTTP 401 Unauthorized 或 403 Forbidden?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9220432/
尝试使用以下命令将我的Docker容器推送到Bluemix: sudo docker push registry.ng.bluemix.net//testproj:latest ...但是它保持这种状
我正在运行最新的 Raspbian 发行版并且刚刚安装了 transmission包。 但是,每当我运行 transmission-remote命令 - 例如,要更改一些基本配置 - 我不断收到相同的
我已经使用 Ruby Gem rest-client 来请求网站的 url。我收到以下错误... RestClient::Unauthorized (401 Unauthorized): app/
安装 kube-dns 插件时出现问题。 我的操作系统是 CentOS Linux release 7.0.1406 (Core) Kernel:Linux master 3.10.0-693.el7
我在 ubunto 16 上安装了 Coturn 服务器 目前我正在检查它 function checkTURNServer(turnConfig, timeout){ return new Pr
我正在尝试使用Azure上部署的Kubernetes 1.9.9在新设置的AKS群集上使用Kubernetes仪表板。 我运行kubectl proxy并打开http://localhost:8001
我想测试来自java的Rest接口(interface)。目的是检查 jpg 图像中是否找到任何人脸。我为此使用的 res 调用是 ../face/v1.0/detect 我将 Ocp-Apim-Su
所以我有自己的解析服务器,运行着heroku。 此云代码功能: Parse.Cloud.define("ReadyUp", function(request, response) {
今天,我开始收到此错误,据我所知,没有任何原因。这不是一个一致的错误。今天突然开始了。它昨天运行完美,并且几个星期都没有任何错误。 文件中只有 file_get_contents()。 一段时间以来,
我试图让用户在 Laravel 8 中查看类别页面 CategoryPolicy.php use App\Models\Category; use App\Models\User; use Illum
我正在尝试从 Nexus 存储库中查看我的代码。 首先,我已经生成了密码 mvn --encrypt-master-password _mypassword_ 这是我的 c:/Users/joanet
我使用的是最新的开源 formsflow.ai v4.0.2。我将整个项目带到了我的个人笔记本电脑上。我遵循了 Docker 完整安装指南。 Docker 运行良好。在 http://localhos
我已根据 ADLS Gen2 容器中存储的 parquet 文件在 Azure Synapse 中创建了一个外部表。我使用以下三个查询来创建数据源、文件格式和表: CREATE EXTERNAL DA
我正在尝试按照示例项目和来自 here 的教程将示例 Power BI 仪表板嵌入到 WPF 应用程序中.当我启动该应用程序时,我必须输入我的密码来验证我自己,当它尝试使用 getAppWorkspa
因此,我正在尝试使用kubernetes(minikube)。我是一个初学者,对docker有一些基本的经验。 事实证明,我2天前安装了kubernetes,却没有做任何事情。 我几乎没有设法连接到仪
所以问题是:我最近做了 this post . 我提到的解决方案适用于一个 token 和一个 API,但当我尝试使用两个 token (gmail 和 Sheets API)处理两个 API 时,它
我正在使用 Java 开发一个包含文本转语音功能的应用程序。我使用了 IBM Watson Text-to Speech API,但我的代码总是出现未经授权的错误。有人能帮我修复它吗?非常感谢! Ia
我正在尝试按照示例项目和来自 here 的教程将示例 Power BI 仪表板嵌入到 WPF 应用程序中.当我启动该应用程序时,我必须输入我的密码来验证我自己,当它尝试使用 getAppWorkspa
我们已将 TFS 2013 服务器升级到 TFS 2015,我们正在设置新的构建代理。 在此之前,我们进行了试运行,并在我们对现有 TFS 数据库进行最终转换之前让一切都运行良好。构建代理工作得很好。
我需要一些有关 Azure Durable Functions 的帮助。 我在 C# 中使用 VS Code 创建了一个新的持久函数,并通过 VS Code azure 函数扩展将其部署到 Azure
我是一名优秀的程序员,十分优秀!