OneLogin用户状态API

时间:2016-08-17 13:09:46

标签: api onelogin

我正在尝试与OneLogin SSO集成,在我们的应用程序中,我们有一个启用/禁用用户的系统。我们也想在OneLogin上设置该状态,因此用户无法在其帐户被禁用后登录。

唯一的问题是 - 我无法找到合适的API端点来执行此操作。 当我在管理面板上执行此操作(翻转用户'活动'切换)并保存它,然后调用用户API,我得到

GET https://api.us.onelogin.com/api/1/users

响应:

{   
    ...
    'status': 2,
    ... 
}

从文档中我读到1是活动的,2被暂停,这很好。 当我在管理员处翻转开关时,状态是唯一改变的(在API中获取用户结果)。它完全符合我的需要 - 禁用用户登录的能力。

问题是我无法通过API设置它:

PUT https://api.us.onelogin.com/api/1/users/XXXXXX

请求正文:

{"status": 2}

响应:

{
  "status": {
    "error": true,
    "code": 400,
    "type": "bad request",
    "message": {
      "description": "status is an excluded attribute for put request for user",
      "attribute": "status"
    }
  }
}

我正在使用API​​版本1,我依赖的文档: https://developers.onelogin.com/api-docs/1/users/user-resource

所以问题是:我使用哪个端点来禁用/启用用户帐户或更改此状态?可以通过API实现吗?

1 个答案:

答案 0 :(得分:1)

我明白了。当你继续使用用户时 - >映射,您可以创建一个动作映射(如果您通过API设置特定字段,将发生定义的操作)。只需设置一个你没有使用的内置字段,在我的例子中我使用'title',并设置动作来设置状态: I use title, you can select any additional field

然后创建一个simmilar规则,以停用用户。毕竟,点击映射屏幕上的“重新应用所有映射”即可。在任何进一步的API请求中,如果此字段将更改,则将触发事件。