我正在使用dreamfactory并尝试创建具有不同角色的用户,并使用这些用户发送请求,但这些用户并不适合我。但是管理员用户。我不明白为什么会这样。
以下是我采取的步骤;
在管理控制台中,单击“角色”选项卡,然后单击左侧边栏中的“创建”。
输入角色的名称,然后选中“活动”框。
转到“访问”标签。
在“服务访问”下添加一个新条目(稍后可以使其更具限制性)。
设置Service = All
设置Component = *
检查Access
下的所有HTTP谓词设置Requester = API
单击“创建角色”。
单击“服务”选项卡,然后编辑用户服务。转到配置并启用 允许开放注册。 将Open Reg Role Id设置为您刚刚创建的角色的名称。 确保Open Reg Email Service Id为空,以便新用户无需确认电子邮件即可注册。
保存更改。
然后我注册了用户隐身模式
我使用名为Postman的Google扩展程序休息客户端发出请求 在邮递员中我使用Basic Auth输入了用户名和密码并发送了请求
{ “错误”:{ “context”:null, “消息”:“访问被禁止。”, “代码”:403 }
...
以上是我使用刚刚注册的用户时得到的结果。但是,当我使用管理员用户名和密码时,我得到以下响应。
状态200确定
{“resource”:[{“name”:“_ schema”},{“name”:“_ table”},{“name”:“_ proc”},{“name”:“_ func”}]}
这是我想要的其他用户的结果。
请让我知道我做错了什么,所以我可以解决它。再次感谢您的帮助
答案 0 :(得分:0)
我已经配置了我的系统,并将完成这些步骤。这是在DreamFactory 2.0测试版06 Oct 2015 commit上完成的。
首先,注册用户:
POST /api/v2/user/register
X-DreamFactory-Api-Key: 0d430cc287b5dd88b0f615d2bb69d84ba7201e8d4214fee2eabcc96bcd937d7d
{
"email": "user@domain.com",
"first_name": "Basic",
"last_name": "User",
"display_name": "Basic User",
"new_password": "password"
}
回复:{"success":true}
接下来,以该用户身份登录:
POST /api/v2/user/session
X-DreamFactory-Api-Key: 0d430cc287b5dd88b0f615d2bb69d84ba7201e8d4214fee2eabcc96bcd937d7d
{
"email": "user@domain.com",
"password": "password"
}
响应:
{
"session_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOjMsInVzZXJfaWQiOjMsImZvcmV2ZXIiOmZhbHNlLCJpc3MiOiJodHRwczpcL1wvZGVtby5lbnRlcnByaXNlLmRyZWFtZmFjdG9yeS5jb21cL2FwaVwvdjJcL3VzZXJcL3Nlc3Npb24iLCJpYXQiOiIxNDQ0Njc1NDU0IiwiZXhwIjoiMTQ0NDY3OTA1NCIsIm5iZiI6IjE0NDQ2NzU0NTQiLCJqdGkiOiIyMjFiYTg5M2E2YTc4OThlNDdlZGI4MGY5YjVkY2M2ZCJ9.V8y2B_2vlh8QdFhRqyuSG8SbfIVe8g71RvNjKoW2Bi8",
"session_id":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOjMsInVzZXJfaWQiOjMsImZvcmV2ZXIiOmZhbHNlLCJpc3MiOiJodHRwczpcL1wvZGVtby5lbnRlcnByaXNlLmRyZWFtZmFjdG9yeS5jb21cL2FwaVwvdjJcL3VzZXJcL3Nlc3Npb24iLCJpYXQiOiIxNDQ0Njc1NDU0IiwiZXhwIjoiMTQ0NDY3OTA1NCIsIm5iZiI6IjE0NDQ2NzU0NTQiLCJqdGkiOiIyMjFiYTg5M2E2YTc4OThlNDdlZGI4MGY5YjVkY2M2ZCJ9.V8y2B_2vlh8QdFhRqyuSG8SbfIVe8g71RvNjKoW2Bi8",
"id":3,
"name":"Basic User",
"first_name":"Basic",
"last_name":"User",
"email":"user@domain.com",
"is_sys_admin":false,
"last_login_date":"2015-10-12 18:44:14",
"host":"console",
"role":"basic",
"role_id":1
}
由于您尝试使用基本身份验证,我也这样做了:
GET /api/v2/db
X-DreamFactory-Api-Key: 0d430cc287b5dd88b0f615d2bb69d84ba7201e8d4214fee2eabcc96bcd937d7d
Authorization: Basic dXNlckBkb21haW4uY29tOnBhc3N3b3Jk
响应:
{
"resource":
[
{"name":"_schema"},
{"name":"_table"},
{"name":"_proc"},
{"name":"_func"}
]
}
DreamFactory 2.0的文档:http://wiki.dreamfactory.com/DreamFactory/API
可以在DreamFactory实例的API文档标签中找到每个可能的API调用的深入文档。 API文档使用Swagger UI自动生成并自我记录。