首页 > 其他分享 >使用EWS协议读取Exchange邮件时报GSSAPI相关错

使用EWS协议读取Exchange邮件时报GSSAPI相关错

时间:2023-06-16 15:57:39浏览次数:35  
标签:http cn Exchange GSSAPI free contrib edu EWS main

  • 错误信息:GSSAPI operation failed with error
    GSSAPI operation failed with error - An unsupported mechanism was requested.NTLM authentication requires the GSSAPI plugin 'gss-ntlmssp'
  • 错误原因:
    .NET Core的默认Docker映像不包含NTLM支持包(即gss-ntlmssp)。结果,由于未在计算机上安装与NTLM相关的软件包,因此HttpClient在尝试对NTLM服务器进行身份验证时将引发异常。
  • 解决方案:
    最开始按照网上的方法,使用了下面的代码,解决了报错
if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
{    
    AppContext.SetSwitch("System.Net.Http.UseSocketsHttpHandler", false);
    Console.WriteLine("运行平台是linux");
}

但是!!只是代码运行不报错了,后面向服务器发起请求后,就一直报错401!

Microsoft.Exchange.WebServices.Data.ServiceRequestException: The request failed. The remote server returned an error: (401) Unauthorized.

为此还以为是邮件服务器有问题,还找了微软的工程师,结果很尴尬,人家说服务器没问题,让我们找自己服务的原因,并给出了一个关键的方向:NTMLv2

要不就说人家是专业的,自己一脸懵逼的不知道啥是ntml,翻了大量的资料终于有了点头绪,这时候就恍然大悟,后知后觉的就意识到肯定跟上面的GSS报错有关系!

个人感觉应该是

  1. 我的代码想向邮件服务器发起NTML验证
  2. 服务器环境不支持NTML(缺少gss-ntlmssp),于是报错GSSAPI
    所以最终我给的解决方案就是在代码的运行环境中安装组件gss-ntlmssp。(我是在docker运行发布的),下面是Dockerfile
FROM mcr.microsoft.com/dotnet/aspnet:3.1
COPY sources.list /etc/apt/sources.list
RUN apt-get update && apt-get install -y \
    gss-ntlmssp
COPY . /app
WORKDIR /app
EXPOSE 5000/tcp
CMD ["dotnet","ApiServer.dll","--urls=http://*:5000"]

要先换源方便安装软件,dotnet/aspnet:3.1官方镜像的基础系统是Debian10,下面是sources.list

# 中科大源

deb http://mirrors.ustc.edu.cn/debian buster main contrib non-free
deb http://mirrors.ustc.edu.cn/debian buster-updates main contrib non-free
deb http://mirrors.ustc.edu.cn/debian buster-backports main contrib non-free
deb http://mirrors.ustc.edu.cn/debian-security/ buster/updates main contrib non-free

# deb-src http://mirrors.ustc.edu.cn/debian buster main contrib non-free
# deb-src http://mirrors.ustc.edu.cn/debian buster-updates main contrib non-free
# deb-src http://mirrors.ustc.edu.cn/debian buster-backports main contrib non-free
# deb-src http://mirrors.ustc.edu.cn/debian-security/ buster/updates main contrib non-free

标签:http,cn,Exchange,GSSAPI,free,contrib,edu,EWS,main
From: https://www.cnblogs.com/imwhuan/p/17485736.html

相关文章

  • Newspaper Headline
    非常蛋疼的题,做了俩小时,看题解用了一个半小时给定字符串 s1​ 和 s2​,问至少要用多少个 s1​ 首尾相接拼成新字符串,使得新字符串在删除一些字符后成为 s2​?感谢@barry_wang提供的翻译输入输出样例输入#1复制abcxyz输出#1复制-1输入#2复制abcddabc......
  • django views 序列化
      RESTframework中的序列化类与Django的Form和ModelForm类非常相似。我们提供了一个Serializer类,它提供了一种强大的通用方法来控制响应的输出,以及一个ModelSerializer类,它为创建处理模型实例和查询集的序列化提供了有效的快捷方式。Serializers 序列化器允许把像查询......
  • Hugging News #0609: 最新代码生成模型 StarCoder+ 和 StarChat Beta 重磅发布!
    每一周,我们的同事都会向社区的成员们发布一些关于HuggingFace相关的更新,包括我们的产品和平台更新、社区活动、学习资源和内容更新、开源库和模型更新等,我们将其称之为「HuggingNews」,本期HuggingNews有哪些有趣的消息,快来看看吧!重磅更新StarCoder+和StarChatβ发布!......
  • Exchange2016撤回邮件成功的必要条件
    问题:现在搭建了Exchange2016,客户端使用了Outlook2013。现在发现Outlook发出去的邮件无法撤回,失败率达到100%。对方收件人没有阅读这封邮件或者删除。请问是什么原因造成的?答案:根据我的了解,要使召回邮件生效,需要有以下必要条件:1.您必须使用Exchange帐户,并且收件人也必须位于同一......
  • 如何续订Exchange2016的自签名证书
    续订Exchange自签名证书续订Exchange自签名证书的过程基本上相当于制作了一个新的证书。使用EAC以续订Exchange自签名证书打开EAC并导航到 “服务器>证书”。Inthe Selectserver list,selecttheExchangeserverthatholdsthecertificatethatyouwa......
  • 深入Exchange2013: 邮件限制(Qos)
     这一章咱们来讲讲Exchange中对邮件的QOS设置,这些设置平常也许大多数场景中不会涉及到,因为需要大批量发送邮件的场景里都会用到邮件中间件(发送大量宣传邮件或者报表)。但是一旦让咱们碰上了,咱们也得知道从哪下手去调整这些设置不是,关于这个话题Technet上已经写得非常好了,咱这里也......
  • 帝国CMS刷新数据表news提示update ***_ecms__index set havehtml=1 where id='' limit
    今天我在进行“数据更新”时,点击“刷新所有信息内容页面”后,在“刷新数据表:article”一项出现提示Table‘empirecms.phome_ecms_’doesn’texist代码如下:Table'www_zwwiki_com.***_ecms_news_data_'doesn'texist;selectkeyid,dokey,newstempid,closepl,infotags,befrom......
  • Hugging News #0602: Transformers Agents 介绍、大语言模型排行榜发布!
    每一周,我们的同事都会向社区的成员们发布一些关于HuggingFace相关的更新,包括我们的产品和平台更新、社区活动、学习资源和内容更新、开源库和模型更新等,我们将其称之为「HuggingNews」,本期HuggingNews有哪些有趣的消息,快来看看吧!重磅更新TransformersAgents发布,通过自......
  • API NEWS | 三个Argo CD API漏洞
    欢迎大家围观小阑精心整理的API安全最新资讯,在这里你能看到最专业、最前沿的API安全技术和产业资讯,我们提供关于全球API安全资讯与信息安全深度观察。本周,我们带来的分享如下:关于三个ArgoCDAPI漏洞的文章Gartner对API安全的看法分布式标识是现代API安全的关键关于三个ArgoCDAPI......
  • API NEWS | 三个Argo CD API漏洞
    欢迎大家围观小阑精心整理的API安全最新资讯,在这里你能看到最专业、最前沿的API安全技术和产业资讯,我们提供关于全球API安全资讯与信息安全深度观察。本周,我们带来的分享如下:关于三个ArgoCDAPI漏洞的文章Gartner对API安全的看法分布式标识是现代API安全的关键 关......