Asp.net web api ASP.NET Web API 2-如何在默认VS 2013模板中启用基本身份验证?

Asp.net web api ASP.NET Web API 2-如何在默认VS 2013模板中启用基本身份验证?,asp.net-web-api,http-status-code-401,Asp.net Web Api,Http Status Code 401,我刚刚在VS中创建了WebAPI2项目,并选择了个人用户帐户身份验证。我还使用POST创建了一个帐户(帐户存在,我签入了创建的数据库) 我尝试使用[Authorize]属性调用操作,但收到401响应。接下来,我尝试在Fiddler中添加请求的授权:基本QWxhZGRpbjpvcGVuIHNlc2FtZQ=头(在TextWizard粘贴username:password并转换为Base64) 但我还是拿到了401英镑。要启用身份验证,我需要在default VS project中更改什么?总之,我

我刚刚在VS中创建了
WebAPI2
项目,并选择了个人用户帐户身份验证。我还使用POST创建了一个帐户(帐户存在,我签入了创建的数据库)

我尝试使用[Authorize]属性调用操作,但收到
401
响应。接下来,我尝试在Fiddler中添加请求的
授权:基本QWxhZGRpbjpvcGVuIHNlc2FtZQ=
头(在
TextWizard
粘贴
username:password
并转换为Base64)


但我还是拿到了401英镑。要启用身份验证,我需要在default VS project中更改什么?总之,我只得到了
401
响应。

看起来您首先需要通过调用/tokens操作来获取承载令牌,然后在后续请求中包含该令牌


请阅读教程以获得详细解释。

基本身份验证是一种不受欢迎的协议,不推荐用于任何新项目,主要是因为密码本身是通过每个请求发送的。在HTTP上,密码只是用纯文本发送(Base64加密),通过SSL加密,但中间的人只显示密码。

因此,它没有包含在内置提供程序中,主要是为了鼓励您查看其他机制

该团队确实为aspnet codeplex项目中提供的basic auth构建了一个示例,该项目公开了许多其他Web API、MVC和其他项目的示例

可以找到基本的auth示例

这个示例相当长,但通常它涉及编写身份验证过滤器和实现质询流

本文介绍了基本身份验证的设计和身份验证流程

本文详细介绍了另一种适用于WebAPI1的方法,它仅适用于IIS,并且仅当您必须使用WebAPI1时才推荐使用