【问题标题】:Is it possible to target Office Add-Ins in the Ribbon based on AD Properties?是否可以根据 AD 属性在功能区中定位 Office 加载项?
【发布时间】:2018-10-31 17:29:33
【问题描述】:

我正在尝试构建一个新的加载项命令(按钮)以添加到 Outlook 功能区的“主页”选项卡。这很容易做到,但我的组织还希望根据一个人的 Active Directory 配置文件(特别是部门)中的属性来定位按钮。这可能吗?非常感谢!

【问题讨论】:

标签: outlook office365 ms-office add-in ribbon


【解决方案1】:

这对于桌面办公插件(如 VSTO)来说非常简单。您需要做的基本上就是从活动目录中获取有关当前登录用户组织单位的信息,然后根据这些信息显示/隐藏/修改按钮。

从您问题上的标签看来,这不是您要找的东西(如果我错了,请纠正我)?您添加了“office365”,可能意味着您对javascript(云/浏览器/商店)解决方案感兴趣?

对于基于 javascript 的插件,直到最近才可以从其个人资料中获取用户部门的部分。现在您可以查看Single-Sign-On API(去年添加)。它为您提供来自用户的 Azure 活动目录配置文件的信息,这意味着您的组织应该是其中的一部分。 另一个困难可能是相关按钮的动态显示(显示/隐藏/启用/禁用)(我可能错了,但看起来它仍然不支持 javascript)。您可以尝试通过构建自定义任务窗格来为此创建解决方法(您可以在任务窗格上做任何您想做的事情)

---更新---

如果是 .NET VSTO 插件,您可以使用以下方式获取用户组:

UserPrincipal.Current.GetAuthorizationGroups()

然后,您可以通过在代码和功能区界面定义文件中提供回调函数来控制显示/隐藏哪些按钮/控件(您需要使用 XML 定义功能区,而不是使用 UI 设计器)。有可用的回调,如getVisiblegetLabel 等。

【讨论】:

  • 我们处于混合环境中,但大多数人仍然在本地并且主要使用桌面客户​​端 - 我完全同意这个按钮只出现在桌面客户端中。我很高兴听到这是可能的 - 非常感谢!我将更多地研究 VSTO(老实说,我对 Microsoft 堆栈非常陌生,SharePoint 除外)以及我如何准确地根据 AD 属性动态显示/隐藏按钮。再次感谢!
  • 正确,web插件中没有办法动态修改Ribbon;它们是静态的,并且仅限于加载项清单中的声明
  • @JosefH:我已经更新了答案。实际上有很多信息如何使用 VSTO 来解决这个问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-16
  • 2011-09-06
  • 1970-01-01
  • 2020-01-04
  • 2016-05-10
  • 1970-01-01
  • 2019-07-12
相关资源
最近更新 更多