使用 docker 容器在 ASP.NET 中通过 Negotiate 进行身份验证

问题描述 投票:0回答:1

经过无数次尝试Negotiate授权,我转向这里。)应用程序本身在Docker中工作,krb5.conf和keytab文件等文件也已添加,但仍然存在授权错误。这是完整的错误 -

Microsoft.Asp Net Core.Authentication.AuthenticationFailureException:一般失败

Docker 文件

应用程序中的身份验证

有谁知道这个问题的解决办法吗?

问题的解决方案是 Microsoft.Asp Net Core.Authentication.AuthenticationFailureException: Generic Failure

c# asp.net kerberos ntlm negotiate
1个回答
0
投票

从我用放大镜收集到的信息来看:没有任何东西告诉服务要使用哪个密钥表。

  • 您的

    KRB5_KTNAME=
    是一个单独的运行,并且由于环境是每个进程的,因此它的影响在运行之间消失。 (更重要的是,无论如何,该命令似乎都没有将变量添加到环境中。)
    
    

  • kinit 毫无用处,因为服务器不需要自己的票证(只有客户端需要)——相反,服务器
  • 必须

    能够访问实际的密钥表,因为这就是它们从客户端解密票证的方式。

  • 您可能需要使用
export

选项,如下所示:

ENV
 KRB5_KTNAME=/etc/srvupsp.keytab

    
	
© www.soinside.com 2019 - 2024. All rights reserved.