c# - 使用 SCIM 和 Asp.Net Web 服务进行 Azure AD 同步

标签 c# azure active-directory azure-active-directory scim

我想要将 Azure AD 上的用户与我的数据库同步并保持最新。 我发现这篇文章使用 SCIM 和 C#,这正是我正在寻找的,但我无法理解一些步骤,并且我研究了替代方法来做到这一点,但大多数结果都在引用同一篇文章: https://learn.microsoft.com/en-us/azure/active-directory/active-directory-scim-provisioning 我尝试下载文章中引用的代码,这里https://github.com/Azure/AzureAD-BYOA-Provisioning-Samples/tree/master 我运行它没有错误, 我顺着步骤走,却走到了死胡同。 我的问题是:

  • 有其他选择吗?或者这是唯一的方法?
  • 在“创建示例 SCIM 端点”一文的第 7 步中,我不明白为什么它应该像这样运行“FileAgnt.exe http://ip-address:9000 TargetFile.csv”
  • “在 Azure AD 中注册示例 SCIM 端点”部分中提到的“SCIM 端点”是什么以及步骤 6 到 11,但它不适合我。

如果我能有不同的引用资料或其他教程或遵循 1 2 3 个步骤,我将不胜感激。 提前致谢。

最佳答案

in the article, "To create a sample SCIM endpoint" step 7, I didn't understand why it should run like this "FileAgnt.exe http://ip-address:9000 TargetFile.csv"

我检查了您提供的教程,该说明与相关的github示例不匹配。对于FileProvisioningAgent项目,如果我们运行FileAgnt.exe,我们可能会检索到以下结果:

enter image description here

根据我的测试,您需要构建 FileProvisioningService 项目并在 Windows 计算机上执行它,以监听您指定的地址,并将所有分配和配置的用户和组输出到 CSV 文件中。

FileSvc.exe http://<ip-address>:9000 TargetFile.csv

What is the "SCIM endpoint " mentioned in section "To register the sample SCIM endpoint in Azure AD" and also steps from 6 to 11 it didn't work with me.

根据我的理解,Azure AD 会尝试访问 Windows 计算机公开的端点。您的 Windows 计算机将监听端点并接收来自 Azure AD 的配置用户。我没有条件进行此配置,但您可以检查您的 SCIM 端点是否可以通过互联网访问,并且相关端口没有被 Windows 防火墙阻止。

is there any alternatives or this is the only way to do it?

Automate provisioning to SCIM-enabled apps提及如下:

The initial sync takes longer to perform than subsequent syncs, which occur approximately every 20 minutes as long as the service is running.

根据我的理解,您可以尝试构建您的应用程序并使用 Azure AD GraphMicrosoft Graph检索用户和组,然后插入/更新到您的数据库中。

关于c# - 使用 SCIM 和 Asp.Net Web 服务进行 Azure AD 同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49412093/

相关文章:

c# - 如何在 VS 2010 中创建 DirectShow 项目

azure - 如何将 Azure ML sklearn 模型保存到特定的 Blob 存储容器?

azure - 在项目/解决方案中编写/组织 Azure 函数的最佳实践

c++ - 事件目录实现

c# - 将 UserPrincipal.FindByIdentity 和 PrincipalContext 与嵌套 OU 结合使用

c# - Azure 辅助角色的多个实例有多少个队列?

c# - Telerik Reporting 在本地生成 pdf,但不在 Azure 上生成

c# - 我是否应该避免在测试中访问数据库作为用有效数据填充对象的快捷方式?

angular - IIS 允许路由到虚拟目录

c# - 以编程方式设置防止意外删除 Microsoft Active Directory 中的 ou