首页 文章

将自定义属性添加到在PowerShell中创建的Azure AD Graph应用程序

提问于
浏览
0

我正在开发一个与Azure AD Graph对话的Web API,以获取和更新用户和组信息 . 所以我使用Windows PowerShell根据文章https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-devquickstarts-graph-dotnet实现了服务应用程序/服务主体 .

我现在想要为我的应用程序添加一些自定义属性,以便组可以有额外的字段 . 但是,当我通过其特定的应用程序ID引用它时,我只能在Azure门户中看到它,而且我无法使用AD Graph RESTful API在https://graph.windows.net/ .onmicrosoft.com / applications或/ .micmicrosoft.com / applications / / extensionProperties,因此无法使用相应的POST endpoints 添加任何新的自定义属性 .

将我的服务应用程序与我的租户中的其他企业应用程序进行比较,它也没有在企业应用程序刀片中显示的发布者 .

请任何人都可以告知这是否应该有效,如果是的话,我通过配置错过了什么?

谢谢

西蒙

1 回答

  • 2

    您在此处看到的问题是由于您使用AAD PowerShell创建服务主体时所遵循的教程,但您要查找的属性位于应用程序对象上 .

    您可以阅读有关差异的更多信息here .

    应用程序对象Azure AD应用程序由其唯一的应用程序对象定义,该应用程序对象位于注册了应用程序的Azure AD租户中,称为应用程序的“主”租户 . 应用程序对象为应用程序提供与身份相关的信息,并且是从中派生其对应的服务主体对象以供在运行时使用的模板 . 将应用程序对象视为应用程序的全局表示(用于所有租户),将服务主体视为本地表示(用于特定租户) . Azure AD Graph Application实体定义应用程序对象的架构 . 因此,应用程序对象与软件应用程序具有1:1的关系,并且与其对应的n个服务主体对象具有1:n的关系 .

    服务主体对象服务主体对象定义应用程序的策略和权限,为在运行时访问资源时表示应用程序的安全主体提供基础 . Azure AD Graph ServicePrincipal实体定义服务主体对象的模式 . 在Azure AD租户允许应用程序访问其正在保护的资源之前,必须在给定租户中创建服务主体 . 服务主体为Azure AD提供了基础,以保护应用程序访问该租户的用户所拥有的资源 . 单租户应用程序将只有一个服务主体(在其租户中) . 多租户Web应用程序还将在每个租户中拥有服务主体,其中来自该租户的管理员或用户已经同意,允许其访问其资源 . 经过同意,将咨询服务主体对象以用于将来的授权请求 .

    我的建议是首先使用Graph API / Portal UX / PowerShell创建一个Application Object,然后通过更新您创建的应用程序的服务主体来遵循教程 .

    如果这有帮助,请告诉我!

相关问题