Office js 检测浏览器iframe与Office加载项中的本机应用程序

Office js 检测浏览器iframe与Office加载项中的本机应用程序,office-js,outlook-web-addins,Office Js,Outlook Web Addins,我目前正在编写Outlook加载项,并通过在用户完成加载项中的潜在危险操作之前向用户显示确认弹出窗口来实现 但是,当我的外接程序在浏览器之外运行时(例如在Outlook for Mac或Outlook 2016中),似乎没有必要显示这些弹出窗口 有没有办法检测我的外接程序是在浏览器中运行还是在本机应用程序中运行?我曾考虑过检查用户代理,但这似乎有点脆弱 编辑:这与问题不同,因为这个问题是关于加载项是否正在进行iframed,而iframed是中的一个开始假设。您可以使用OfficeJsHelp

我目前正在编写Outlook加载项,并通过在用户完成加载项中的潜在危险操作之前向用户显示确认弹出窗口来实现

但是,当我的外接程序在浏览器之外运行时(例如在Outlook for Mac或Outlook 2016中),似乎没有必要显示这些弹出窗口

有没有办法检测我的外接程序是在浏览器中运行还是在本机应用程序中运行?我曾考虑过检查用户代理,但这似乎有点脆弱



编辑:这与问题不同,因为这个问题是关于加载项是否正在进行iframed,而iframed是中的一个开始假设。

您可以使用
OfficeJsHelpers
检测平台信息(在线与PC、Mac等),如中所述


这就是说,如果您担心的是恶意主机,他们也可以伪造该行为,以返回浏览器实际上是在PC版Office上运行的加载项。

您可以使用
OfficeJsHelpers
检测平台信息(在线与PC、Mac等),如中所述

也就是说,如果您担心的是恶意主机,那么他们也可以伪造该行为,以返回浏览器实际上是在PC版Office上运行的加载项。

主机名应为:Outlook、Mac Outlook、OutlookIOS或OutlookWebApp



主机名应为:Outlook、Mac Outlook、OutlookIOS、,或者OutlookWebApp

我只是检查一下是否应该显示点击劫持保护弹出窗口。

我只是检查一下是否应该显示点击劫持保护弹出窗口。

我只是检查一下是否应该显示点击劫持保护弹出窗口。

谢谢!我假设at的值也可能是伪造的?我没有该代码的第一手知识,但我会99%地假设是这样。外接程序(和Office.js)仅根据初始化期间发生的一些参数输入(无论是通过iframe、URL上的属性还是其他任何方式)获取此信息。在所有这些情况下,它看起来是伪造的。但是弹出一个级别:你想要达到的精确场景(或者你试图阻止的精确攻击向量)?基本上我的目标是当加载项在本地主机内运行时不显示点击劫持弹出窗口。正如您所描述的,我试图防止的情况是,我的加载项不显示clickjacking保护弹出窗口,因为它认为它正在本机主机上运行,但实际上,它正在恶意主机页上的浏览器中运行。不过,我可以想象,通过用户代理或从postMessage中检测主机将是安全的。谢谢!我假设at的值也可能是伪造的?我没有该代码的第一手知识,但我会99%地假设是这样。外接程序(和Office.js)仅根据初始化期间发生的一些参数输入(无论是通过iframe、URL上的属性还是其他任何方式)获取此信息。在所有这些情况下,它看起来是伪造的。但是弹出一个级别:你想要达到的精确场景(或者你试图阻止的精确攻击向量)?基本上我的目标是当加载项在本地主机内运行时不显示点击劫持弹出窗口。正如您所描述的,我试图防止的情况是,我的加载项不显示clickjacking保护弹出窗口,因为它认为它正在本机主机上运行,但实际上,它正在恶意主机页上的浏览器中运行。不过,我可以想象,通过用户代理或从postMessage中检测主机将是安全的。谢谢!恶意页面是否可能伪造这些值?您是否介意描述一下您所想到的恶意页面或攻击场景?我所想到的场景是,恶意网站可以对我的加载项进行框架化,并告诉Office.js SDK主机名为
Outlook
。然后,我的外接程序将不会显示弹出窗口(因为SDK会告诉我的外接程序它没有在浏览器中运行),这会让用户容易受到点击劫持攻击。你的问题看起来像是重复的。看起来你在另一个帖子上得到了答案。谢谢!恶意页面是否可能伪造这些值?您是否介意描述一下您所想到的恶意页面或攻击场景?我所想到的场景是,恶意网站可以对我的加载项进行框架化,并告诉Office.js SDK主机名为
Outlook
。然后,我的外接程序将不会显示弹出窗口(因为SDK会告诉我的外接程序它没有在浏览器中运行),这会让用户容易受到点击劫持攻击。你的问题看起来像是重复的。看起来你在另一篇文章上得到了答案。可能的重复