ASP.NET Zero--基于令牌的认证&SWAGGER UI

基于令牌的认证

 任何应用程序都可以将应用程序中的任何功能认证和使用为API。例如,您可以创建一个移动应用程序消耗相同的API。在本节中,我们将演示来自Postman的API (Google Chrome扩展程序)的用法。

认证

我们建议您禁用用于远程身份验证的用户的双因素身份验证。否则,客户端应该实现两个因素认证流程。我们假设您已经 为默认租户管理员用户禁用了双因素身份验证,因为我们将在此示例中使用它。

应为所有请求配置以下标题(Abp.TenantId为默认租户的Id),单个租户应用程序不需要这些,或者如果要与主机用户合作):

邮递员验证标题

然后我们可以发送用户名和密码作为POST请求到http:// localhost:62114 / api / TokenAuth / Authenticate

邮递员获取用户列表

在返回的响应,的accessToken将用于授权的API。

使用API

在验证并获取访问令牌之后,我们可以使用它来调用任何授权的 操作。所有服务都可以远程使用。例如,我们可以使用用户服务获取用户列表

邮递员身份验证

我们向http:// localhost:62114 / api / services / app / User / GetUsers发送了一个GET请求, 并将标题添加为“ Bearer <accessToken> ”。返回JSON包含用户列表。

SWAGGER UI

SWAGGER UI被 集成到ASP.NET zero,但默认情况下禁用。Swagger UI配置位于.Web项目中的 Startup类中。您可以通过取消注释相关行来启用它:

在启动 ConfigureServices方法,启用以下行:

services.AddSwaggerGen();

并在Startup.Configure方法中,启用以下行:

app.UseSwagger();
app.UseSwaggerUi();

您可以使用此URL 浏览swagger ui:“/ swagger / ui ”。

Swagger UI

因此,任何人(或任何应用程序)都可以轻松探索,测试和使用API​​。

posted @ 2017-05-07 14:00  liyongke  阅读(871)  评论(0编辑  收藏  举报