教程:验证 SCIM 终结点
本教程介绍如何使用 Microsoft Entra SCIM 验证程序来验证预配服务器是否与 Azure SCIM 客户端兼容。 本教程适用于希望生成 SCIM 兼容服务器以使用 Microsoft Entra 预配服务来管理标识的开发人员。
本教程介绍如何执行下列操作:
- 选择测试方法
- 配置测试方法
- 验证 SCIM 终结点
先决条件
- 具有活动订阅的 Microsoft Entra 帐户。 免费创建帐户。
- 符合 SCIM 2.0 标准且满足预配服务要求的 SCIM 终结点。 如需了解详细信息,请参阅教程:在 Microsoft Entra ID 中开发 SCIM 终结点并计划其预配。
选择测试方法
第一步是选择一种测试方法来验证 SCIM 终结点。
打开 Web 浏览器并导航到 SCIM 验证程序:https://scimvalidator.microsoft.com/。
选择三个测试选项之一。 可以使用默认特性、自动发现架构或上传架构。
使用默认特性 - 系统提供默认特性,你可以根据需要对其进行修改。
发现架构 - 如果你的终结点支持 /Schema,此选项会让工具发现支持的特性。 建议使用此选项,因为它可以减少生成应用时更新应用的开销。
上传 Microsoft Entra 架构 - 在 Microsoft Entra ID 上上传从示例应用下载的架构。
配置测试方法
选择一种测试方法后,下一步是对其进行配置。
- 如果使用默认特性选项,请填写所有指示字段。
- 如果使用发现架构选项,请输入 SCIM 终结点 URL 和令牌。
- 如果要上传架构,请选择要上传的 .json 文件。 该选项接受从 Microsoft Entra 管理中心的示例应用导出的 .json 文件。 若要了解如何导出架构,请参阅操作说明:导出预配配置并回退到已知良好状态。
注意
若要测试“组特性”,请确保选择“启用组测试”。
- 使用特性列表末尾的“添加特性”选项和页面右侧的减号 (-),根据需要为用户和组类型编辑列表特性。
- 从用户和组特性列表中选择联接属性。
注意
联接属性(又称为匹配特性)是用户和组资源在源中可以唯一查询并在目标系统中可以唯一匹配的特性。
验证 SCIM 终结点
最后,需测试和验证终结点。
在 SCIM 验证程序上使用表达式
SCIM 验证程序支持使用表达式,为属性生成所需的值。
如何使用表达式
- 转到“属性”页面。
- 在要自定义的属性的值列中输入所需的表达式。
- 运行测试
注意
这些表达式适用于“用户”和“组”属性。
可用表达式
下表列出了可用表达式
Expression | 含义 | 示例 | Result |
---|---|---|---|
generateRandomString {Count of String Characters} | 生成具有指定的字母字符数的随机字符串 | {%generateRandomString 6%}@contoso.com | CXJHYP@contoso.com |
generateRandomNumber {Count of Numbers} | 生成具有指定位数的随机数 | {%generateRandomNumber 4%} | 8821 |
generateAlphaNumeric {Count of Characters} | 使用字母和数字混合生成随机字符串,其中包含指定的字符数 | {%generateAlphaNumeric 7%} | 59Q2M9W |
generateAlphaNumericWithSpecialCharacters {Count of Characters} | 根据指定的字符数,生成包含字母、数字和特殊字符组合的随机字符串 | {%generateAlphaNumericWithSpecialCharacters 8%}TEST | D385N05’TEST |
可以在表达式之前或之后添加值,以实现所需的结果,例如,将 {% generateRandomString 6 %}@contoso.com 添加到 userName 属性的值字段时,每次测试都会生成一个新的 userName 值,而保留 contoso.com 域。
清理资源
如果在测试中创建了任何不再需要的 Azure 资源,请记得将其删除。
Microsoft Entra SCIM 验证程序的已知问题
- 尚不支持软删除(禁用)。
- 时区格式随机生成,且会因系统尝试对其进行验证而失败。
- patch user remove 特性可能会尝试删除某些系统的必需/所需特性。 应忽略此类故障。