现有用户配置期间的内部配置错误

时间:2016-09-30 13:25:27

标签: scim onelogin

我们正在开发SCIM API,在OneLogin和我们的应用程序之间的集成测试期间,我们总是会遇到错误,可以通过以下步骤重现:

  1. 使用xy@email.com(SCIM用户名)
  2. 在您的应用程序中创建用户
  3. 使用相同的电子邮件地址在OneLogin中创建用户
  4. 将此用户添加到您的应用程序
  5. OneLogin应该认识到该用户已在使用该SCIM应用程序,因此不需要进一步的配置操作。但是,我们得到了一个内部供应错误"
  6. 我可以验证我们的API已被调用,以下是与此流程相关的2个SCIM Web请求:

    GET https://appurl/svc/scim/v1/Users?filter=userName+eq+"xy%40email.com"
    
    {
      "schemas": [
        "urn:scim:schemas:core:1.0"
      ],
      "totalResults": 1,
      "itemsPerPage": 1,
      "startIndex": 1,
      "Resources": [
        {
          "userName": "xy@email.com",
          "emails": [
            {
              "primary": true,
              "value": "xy@email.com"
            }
          ],
          "id": "94724df5-2338-45a3-8b96-0f68afd273d4",
          "schemas": [
            "urn:scim:schemas:core:1.0"
          ]
        }
      ]
    }
    
    GET https://appurl/svc/scim/v1/Users/94724df5-2338-45a3-8b96-0f68afd273d4
    
    {
      "userName": "xy@email.com",
      "emails": [
        {
          "primary": true,
          "value": "xy@email.com"
        }
      ],
      "id": "94724df5-2338-45a3-8b96-0f68afd273d4",
      "schemas": [
        "urn:scim:schemas:core:1.0"
      ]
    }
    

    在第二次GET请求后,OneLogin返回"内部供应错误"

    回复有问题吗?

    谢谢你, 彼得

2 个答案:

答案 0 :(得分:1)

我发现了错误。在OneLogin中,firstName和lastName是必需的,但是在我们的应用程序中它们不是。当OneLogin获取我们的用户时,它无法解析结果,因为我们没有返回名字和姓氏。

答案 1 :(得分:0)

我们实际上需要这些值来实现我们产品中的某些功能:

具体来说,我们具有使目标应用程序中的所有用户都能获得的功能,然后我们允许应用程序管理员手动映射应用程序中的哪个用户与OneLogin目录中的哪个用户匹配(同步用户功能和关联用户)

用于(无论出于何种原因)用户的情况。 SCIM用户名与OneLogin中的值不匹配,需要手动将其与应用中的特定用户记录相关联。

要执行此操作的UI的一部分显示应用程序中用户的名字/姓氏,以帮助识别它们。

我们的修复将不再需要这些字段(并且在发生这种情况时不会出现错误)但我们将仅通过其SCIM用户名和" UNKOWN"开始显示这些用户。对于first / lastname。

不是最好的用户体验,但希望您能看到在这种情况下我们能做的最好。