【发布时间】:2019-05-22 15:18:52
【问题描述】:
以下链接描述了a traditional intranet client-server 使用 Kerberos 进行套接字通信
public class NegotiateStream : System.Net.Security.AuthenticatedStream
...
// Request authentication.
NetworkStream clientStream = client.GetStream();
NegotiateStream authStream = new NegotiateStream(clientStream, false);
...
// Pass the NegotiateStream as the AsyncState object
// so that it is available to the callback delegate.
IAsyncResult ar = authStream.BeginAuthenticateAsClient(
new AsyncCallback(EndAuthenticateCallback), authStream);
...
另一方面,IIS 能够使用我理解的“Kerberos with SPNego over SSL”进行身份验证...(请更正我的术语!)。
当处于这种 SPNego/SSL/Kerberos 模式时,我无法让 NegotiateStream 工作,但是我能够让 machineaccount$ 正常工作,并将 WebRequest.AuthenticationLevel 设置为 MutualAuthRequired
问题
使用
NegotiateStream与WebRequest.AuthenticationLevel之间的安全区别是什么?每个解决方案中使用的标准是什么(例如MS-SPNG)?
正在使用哪些 Windows 子系统(SIP、GSS-API 等)?
任何可以帮助我将 Linux 代理集成到此 Kerberos/SpNego 解决方案的信息都是理想的。
【问题讨论】:
标签: kerberos windows-authentication iis-8.5 spnego gssapi