SP已启动 - 通过代码(C#)向SAM发送SAML请求?

时间:2016-01-08 15:20:44

标签: c# azure single-sign-on azure-active-directory

到目前为止我做了什么...我已经设置了Azure AD,分配了用户,甚至为不同的Microsoft示例应用程序采取了端点和设置。它们都是开箱即用的。我只是没有看到通过代码(C#)直接向Azure发送原始SAML请求/响应的任何示例。

是否可以通过代码(C#)将SAML请求发布到Azure并让它返回SAML响应?基本上我们的安全架构师想要手动创建SAML AuthRequest并将其发送到Azure然后接收SAML响应以供我们查询。它甚至可以这样工作吗?

我们希望接受这一点,然后点击我们的角色和权限安全性。看起来这个信息似乎是一个身份提供者的东西,这就是我们应该使用Azure的原因。

我的想法: 我们有自己的EnterpriseSecurity,可以与FederatedServer一起使用。有一个包含FetchTokenSSOFederated()的FetchToken类。我觉得如果我们在Federated Server和Azure之间建立信任,那么SP发起的调用实际上就是FetchTokenSSOAzureFederated()。我们的Federated Server将处理我们与Azure之间的所有内容。 任何指导都表示赞赏。

感谢任何指导。

由于 -Ken

1 个答案:

答案 0 :(得分:3)

您绝对可以使用任何开发堆栈和您选择的操作系统生成请求和解析响应 - Azure AD甚至都不知道,唯一重要的是网络上的内容。 那就是说。 Azure AD主要使用SAML进行SSO目的,这意味着与之交互的习惯方式是通过Web库,1)自动处理请求生成和响应解析,作为实现SSO流程的一部分,2)期望用户通过浏览器。 从您的问题来看,目前尚不清楚您所定位的拓扑/方案,但我得到的印象是您希望以编程方式处理令牌获取(即,从排序的活动客户端)。为此,Azure AD利用OAuth2和OpenId Connect,这些协议比浏览器绑定的SAML更适合此类用例。这就是为什么我们有大量样本显示OAuth2 / OpenId Connect程序化交互(参见http://aka.ms/aaddev)而没有SAML的交互。 HTH!