AzureAD C#桌面应用程序-Outlook扩展

时间:2020-08-17 22:54:46

标签: c# outlook azure-active-directory

我正在研究.net类,该类消耗了第三方系统的其余服务端点。可以使用AzureAD / OpenIDConnect / ADFS等不同的身份验证原理配置第三方系统。取决于环境的配置,取决于登录时要使用的重定向URI。我的具体方案是AzureAD,我正在为此而苦苦挣扎。

我的应用程序是Outlook VTSO,它没有框架来简化回调URL。

我无法设置localhost:3000并监视流量,因为这将需要我没有的提升权限。我无法在注册表中设置自定义应用处理程序,因此无法调用我的应用,因为它不是标准的桌面应用。

我尝试使用以下内容:

https://login.microsoftonline.com/{###########APP_ID###############}/oauth2/authorize?client_id={################CLIENT_ID#################}&redirect_uri=https://login.microsoftonline.com/common/oauth2/nativeclient&response_type=code&scope=openid

但是结果页面不是我所期望的-它的空白在&code = {的URL中带有querystring值,看起来像是Base64编码的字符串,但不是。}和&session_state = {GUID}。

以前,完成此操作后,总是会有一个自定义重定向URI在页面上显示“您现在可以关闭此页面”之类的内容,同时将访问令牌和刷新令牌嵌入到HTML标记中页面/ URL。

我确定其他人必须使用AzureAD身份验证来处理此问题,并且我必须丢失某些内容。

理想情况下,我不想启动自己的Webview并抓取详细信息{我什至不确定这是否可行},但我看不到我还能如何验证桌面VTSO扩展。

我要进行身份验证的AzureAD租户也使用多因素身份验证,因此我需要让用户对令牌进行身份验证,然后使用刷新令牌来维护访问令牌。

注意:我可以控制AzureAD企业应用程序以添加更多终结点,并可以控制第三方应用程序回调URI(这是oAuth的要求,以确保令牌来自请求的应用程序

0 个答案:

没有答案