问题标签 [scim2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
64 浏览

saml - 如何在 OpenLogin SCIM Provisioning 中识别 IDP 实体

在任何 B2B Web 应用程序中,用户都必须根据实体进行配置。例如,Acme 公司用户只能为 Acme 实体提供。

我正在尝试使用 OneLogin“带有 SAML 的 SCIM 配置器”连接器测试我的用户配置 API。但我不确定如何识别用户的组织实体。

除了不记名令牌之外,还有什么方法可以识别用户的组织实体?

0 投票
2 回答
700 浏览

wso2 - WSO2 Scim2 密码更改

我目前正在使用 IS 5.5.0 并利用 SCIM2 API 来配置最终需要更改密码的用户。我已经使用 POST 操作成功创建了用户,并且可以使用 PATCH 操作更新某些属性。我的问题是,我可以使用 scim2/Users/(.*) 端点的 PATCH 操作更新用户密码吗?到目前为止,我一直没有成功。这是一个示例请求:
PATCH https://myhostname:9443/scim2/Users/f7853b65-e4e8-47b0-a000-e113f95cda63 HTTP/1.1
请求正文为:
{ "schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"], "Operations":[{ "op":"replace", "path":"password", "value":"asdf" }] }
我无法找到任何导致明确答案的文档,因此我们将不胜感激。谢谢你。

0 投票
0 回答
687 浏览

c# - SCIM 和网络 API 2

我正在尝试使用 Web Api 2 (c#) 实现 SCIM,并且我找到了来自 Microsoft 的nuget 包一些文档及其示例代码

我对SCIM 文档的理解是,他们只需要一个具有指定用户/组方法和模式的 API,但在示例代码中他们使用了监视器和提供程序。

他们的代码即使在遵循说明并获取 nuget 包后也无法编译,这很可能是因为他们使用过的包上的旧资源,但除了添加一些接口之外,我看不出使用包有什么必要性对于我的控制器。

我还发现了这个: 用于 C# 的 SCIM(跨域身份管理系统)库 但遗憾的是,他们从 MS 指向的博客文章已经消失了:。

所以我要问的是: - 我走的是正确的方向吗?我应该使用nuget吗?如果是的话,Web api 有什么特别之处吗?

  • 任何建议也非常感谢。
0 投票
0 回答
3376 浏览

java - com.fasterxml.jackson.databind.exc.MismatchedInputException:缺少必需的创建者属性“状态”(索引 0)

我对 SCIM 很陌生。我尝试使用 SCIM 2.0 for WSO2 身份服务器在我的项目中创建新用户。下面是我的代码

我已记录如下错误消息:

请帮忙...

0 投票
1 回答
33 浏览

c# - 从 onelogin 发出请求

我们正在为一个应用程序编写一个 SCIM 提供程序,它适用于 Azure AD。该代码已使用 Microsoft.SystemForCrossDomainIdentityManagement 实现。

我们正在尝试支持 oneLogin 并且创建工作正常,但是在测试更新功能时它失败了,因为 Id 仅在请求中而不在正文中。

因此,该方法对 ID 没有任何想法,并且由于 user.Identifier 为空而失败。

我试图在他们网站上的文档之后在 schima 中添加 id,但 id 实际上是他们的 id,而不是我们传递给他们的那个。

如何解决这个问题?

0 投票
1 回答
413 浏览

wso2 - 为什么 WSO2 IS 5.6.0 SCIM2 Group API 在尝试插入或更新用户时会抛出错误?

我正在尝试使用 WSO2 Identity Server SCIM2 API 来创建和更新用户和组。但是我遇到了 Group Update API (PUT /scim2/Groups/{id}) 的问题:如果我尝试在消息正文中插入一些用户,API 总是返回 HTTP 错误 500(“访问 Java 时发生错误安全管理器特权块")。

以下是重现失败的方法:

1)首先我们创建一个用户:

我们收到带有正文的响应 HTTP 200:

2)接下来我们创建一个组:

我们收到带有正文的响应 HTTP 200:

3) 当我们尝试将新创建的用户与组关联时,我们收到 HTTP 500 错误。见下文:

HTTP 500 错误:

对于身份验证,我使用的是基本身份验证,身份服务器的用户为“admin”;但我也尝试创建一个具有所有可能权限的用户,但错误总是一样的。在执行控制台中,我尝试优化日志,但仅显示以下消息:

这个 Group API 真的适用于更新请求吗?

如果有人可以提供帮助,我将不胜感激。谢谢你。

0 投票
1 回答
536 浏览

c# - Azure Ad 无法使用 microsoft.systemForCrossDomainIdentityManagement nuget 包上的补丁更新用户

我们已经使用 microsoft.systemForCrossDomainIdentityManagementnuget 包创建了一个 SCIM 集成,此处已对其进行了描述:

https://docs.microsoft.com/en-us/azure/active-directory/manage-apps/use-scim-to-provision-users-and-groups

我们已经使用 Postman 测试了 API,它们可以正常工作,但是当我们使用 Azure AD 测试它们时,补丁请求会失败。

查看日志并缩小范围,我们发现请求的格式与 microsoft.systemForCrossDomainIdentityManagement 期望的格式不同。

来自 AD 的一个补丁请求如下所示(将失败):

{ "模式":["urn:ietf:params:scim:api:messages:2.0:PatchOp"], "Operations": [ {"op":"Replace","path":"displayName","value" :"用户 X"} ]}

虽然有效的请求是这样的:

{"schemas":["urn:ietf:params:scim:api:messages:2.0:PatchOp"] ,

“操作”:[ {“操作”:“替换”,“路径”:“显示名称”,“值”:

[ {"$ref":null,"value":"用户 x"}]}]

}}

  • 请注意 2 个请求之间的区别,第一个调用是字符串,第二个调用是对象列表。

我们应该如何解决这个问题?

Nuget 包接受请求并传递 IPatchRequest,因此请求甚至不会接收到我们的代码部分,并且这两部分都是 Microsoft :|

0 投票
1 回答
513 浏览

azure - 通过 Azure AD SCIM 管理 SaaS 用户和组

使用 Azure AD Premium、企业应用程序和 SCIM 2.0 预配范围 - 仅分配的用户和组

我正在尝试解决以下用例:

  1. 分配给给定 AD 组的用户的 SCIM 配置
  2. 添加用户后,它会正确触发 POST /Users 以创建用户
  3. 当用户被删除时,它会跳过用户报告 - “详细信息:用户详细信息:跳过原因 = NotEffectivelyEntitled,活动 = True,分配 = 假,通过范围过滤器:真;” 但不会发送 PATCH 或 DELETE 通知 saas 应用用户不再有效。

因此,质疑使用 SCIM 配置仅将 AD 中的一部分用户作为系统的活动用户进行管理的正确机制是什么。

例如,公司中只有 1 个部门使用 saas 应用程序,因此用于分配票证等的用户列表应该只是那些,如果用户更改部门并且不再有权访问 saas 应用程序,他们不应被视为 saas 应用程序的有效用户目录。SaaS 许可将计算所有注册用户,因此无缘无故同步 20,000 个用户不是一种选择。

似乎 SCIM 通过 PATCH & DELETE 支持此用例,但 Azure AD 并未按预期传播来自企业应用程序中用户和组的更改。

任何建议表示赞赏。

谢谢

0 投票
1 回答
759 浏览

wso2 - Swagger 定义位于 WSO2 身份服务器上的 Scim2 的什么位置

我正在寻找 WSO2 身份服务器 5.7.0 上的 swagger 文件(如果存在)的位置,尽管我似乎找不到它,以及上面的文档(链接:https ://docs.wso2.com/ display/IS570/apidocs/SCIM2-endpoints/)没有招摇文件的下载链接。

我试图从以下位置大摇大摆(主机除外和端口号)

/scim2/swagger.json(不允许返回 405 方法) /t/carbon/scim2/swagger.json(不允许返回 405 方法)

邮差

/t/carbon/scim2/me(方法 GET 返回 200 Ok 没有用户发送的内容)

0 投票
1 回答
329 浏览

ldap - WSO2 身份服务器 SCIM 2 用户删除

我在 wso2 IS 5.7 中删除用户时出现了奇怪的行为。我已经部署了一个具有辅助 LDAP 用户存储的租户 A,而主要用户存储在 Postgres 上。

所以我有 2 个新用户的域:

  1. 域 A(主用户存储)
  2. 域 B(LDAP 辅助用户存储)

和 4 个可能的新角色域:

  1. 基本的
  2. 内部的
  3. 应用
  4. D(来自 ldap 域)

案例 1)通过租户管理员调用的 scim2 API 删除任何用户都有效。返回 HTTP 204。用户被删除

案例 2)在 LDAP 中创建的 用户A具有角色R。两者都有 LDAP 域D。当我尝试通过 scim2 API 删除 LDAP 中的用户时,返回 403 Forbidden。用户未被删除。

案例 3)在主用户存储上创建的 用户B具有使用域 Internal 或 Primary 创建的角色R2 。HTTP/1.1 500 Internal Server Error已返回.. 用户已删除。

我在 wso2 控制台中没有有意义的日志。

卡塔利娜日志:127.0.0.1 - - [06/Mar/2019:11:15:25 +0100] "DELETE /t/tenant.com/scim2/Users/6c133a5e-ba74-4021-8f5f-8e1bf62af506 HTTP/1.1" 500 146 "-" "curl/7.29.0"

任何想法?谢谢你的帮助。