Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Single sign on 桌面应用程序单点登录是否应使用SAML2.0协议?_Single Sign On_Saml_Identity_Saml 2.0 - Fatal编程技术网

Single sign on 桌面应用程序单点登录是否应使用SAML2.0协议?

Single sign on 桌面应用程序单点登录是否应使用SAML2.0协议?,single-sign-on,saml,identity,saml-2.0,Single Sign On,Saml,Identity,Saml 2.0,我正在尝试为桌面应用程序实现SSO,目前我正在研究什么是最好的工具。我遇到过SAML,但据我所知,SAML实际上是用于web应用程序的。有没有一种方法可以将SAML协议用于桌面应用程序 示例用例:用户登录到机器,当他或她单击应用程序图标时,他们将自动登录 在使用SAML2.0,OpenID Connect之前,您可能想问为什么需要单点登录 我们使用单点登录的原因是,我们希望将身份提供商(或OpenID提供商)和服务提供商(中继方)。此外,它可以在两者之间进行多路复用,这就是身份联合的实现方式 当

我正在尝试为桌面应用程序实现SSO,目前我正在研究什么是最好的工具。我遇到过SAML,但据我所知,SAML实际上是用于web应用程序的。有没有一种方法可以将SAML协议用于桌面应用程序


示例用例:用户登录到机器,当他或她单击应用程序图标时,他们将自动登录

在使用
SAML2.0
OpenID Connect
之前,您可能想问为什么需要
单点登录

我们使用单点登录的原因是,我们希望将
身份提供商
(或
OpenID提供商
)和
服务提供商
中继方
)。此外,它可以在两者之间进行多路复用,这就是身份联合的实现方式

当然,会话设置是通过服务器到服务器的通信进行的。但是当涉及到
单次注销时
,它确实涉及到
前频道
UI到服务器
)通信或
后频道
服务器到服务器
)通信

现在是你的问题:

  • 我认为您可以使用
    SAML2.0
    来交换身份,但它太重了,无法完成
    SAML2.0
    在业界得到了广泛的应用,这就是为什么许多人仍在使用它
  • 较新的SSO技术是
    OpenID Connect
    ,它是位于
    OAuth 2.0
    之上的身份层,您可能想看看它
  • 但最终,您的UI(web、移动或桌面)只是通过后端服务调用检查会话或标识存储。后端如何认证用户完全取决于实现。不要将
    客户端
    服务器
    混用

  • 您的示例用例是IWA—集成的windows auth—这是一个浏览器功能,而不是协议功能。它通常只发生在加入域的PC上

    SAML依赖于重定向,所以如果您想通过SAML实现这一点,您需要添加某种浏览器弹出窗口


    您可以使用OpenID Connect(更轻量级,基于REST构建)或WS-Fed活动配置文件,即WCF,而不是http浏览器功能。

    也许有一个更具体的例子可以帮助澄清我正在寻找的功能。当您登录到windows计算机并单击microsoft outlook(桌面应用程序)时,您不必输入outlook凭据。这就是我要找的。嗯,据我所知,我不需要浏览器。请看我对@chenrui下面回答的评论,以获得更明确的示例。IWA依赖Kerberos令牌。那跟SAML一点关系都没有。如果你不想要浏览器,你必须自己处理HTTP重定向并显示登录表单等。IWA不是真正的SSO。真正的SSO需要像ADFS这样的身份提供者。我想你的问题更多的是“通过桌面应用程序进行IWA”。这可能会有帮助:你好@RobertJefferies,你解决问题了吗?我有类似的要求,我和你呆在同一个地方。你能告诉我你是如何解决这个问题的吗?