无法理解渡槽自动生成的数据库和身份验证

时间:2018-09-23 18:58:25

标签: oauth oauth-2.0 dart aqueduct

我使用aqueduct create -t db_and_auth创建了一个渡槽项目,但我不了解使用OAuth 2.0进行注册和身份验证的工作方式。有人可以解释如何从渡槽自动创建的OAuth2.0和DB模板中进行注册,以及我必须执行哪些步骤进行注册然后进行身份验证吗?

1 个答案:

答案 0 :(得分:2)

在客户端应用程序中,您.m2\repository\javax\el\javax.el-api\3.0.0带有一个包含用户的JSON有效负载。根据您使用的模板的版本不同,它可能只是POST /register-检查{"username": "bob", "password": "password"}类型的定义。

在验证现有用户时,您调用_User并将用户名,密码和其他必填字段作为x-www-form-urlencoded数据传递。用Dart代码编写的请求格式如下:http://aqueduct.io/docs/auth/controllers/

无论您是注册新用户还是对现有用户进行身份验证,都必须提供客户端标识符(以及可选的客户端密码)作为基本授权标头。客户标识符必须已经在您的应用程序中注册并存储在其数据库中。

要将客户端标识符存储在数据库中,您需要首先在数据库实例上运行应用程序的数据库迁移(有关运行数据库迁移,请参见http://aqueduct.io/docs/db/db_tools/)。这将创建用于存储OAuth 2.0客户端标识符和令牌的表。

然后,您需要将OAuth2.0客户端标识符添加到数据库中。最好使用POST /auth/token CLI来完成此操作,并且此处提供文档:http://aqueduct.io/docs/auth/cli/