Applies ToExchange Server 2016 Standard Edition Exchange Server 2016 Enterprise Edition

อาการ

หลัง จากที่คุณติดตั้งการปรับรุ่นเป็น Microsoft Exchange Server 2016 สะสมปรับปรุง 6 (CU6), คุณไม่สามารถเข้าถึง Outlook Web App (OWA) หรือแลกเปลี่ยนควบคุมแผง (ECP),และคุณได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:

:-( บางสิ่งที่ผิดเราไม่สามารถรับข้อมูลดังกล่าวในขณะนี้ กรุณาลองอีกครั้งX-ClientId: ClientIDX FEServer: Exch1

นอกจากนี้ ข้อมูลเหตุการณ์ต่อไปนี้ถูกบันทึกในบันทึกของโปรแกรมประยุกต์ของเซิร์ฟเวอร์ Exchange ที่เป็นโฮสต์ของฐานข้อมูลกล่องจดหมาย:

ชื่อบันทึก: แอปพลิเคชันแหล่งที่มา: การใช้ MSExchange OAuthรหัสเหตุการณ์: 2004ประเภทของงาน: ตั้งค่าคอนฟิกระดับ: คำเตือนคำสำคัญ: แบบคลาสสิคผู้ใช้: N/Aคอมพิวเตอร์: mail.contoso.comคำอธิบาย:ไม่พบใบรับรองที่ มีรหัสประจำตัวCertificateValueในคอมพิวเตอร์ปัจจุบันหรือใบรับรองไม่มีคีย์ส่วนตัว จำเป็นต้องใช้ใบรับรองการเซ็นชื่อโทเค็นออก

ชื่อการเข้าสู่ระบบ: แอพลิเคชัน Source:        ASP.NET 4.0.30319.0รหัสเหตุการณ์: 1309ประเภทงาน: เว็บเหตุการณ์ระดับ: คำเตือนคำสำคัญ: แบบคลาสสิค User:          N/Aคำอธิบาย:รหัสเหตุการณ์: 3005ข้อความเหตุการณ์: เกิดข้อยกเว้นเกิดขึ้นรหัสเหตุการณ์: EventIDลำดับเหตุการณ์: 2เกิดเหตุการณ์: 1รหัสรายละเอียดเหตุการณ์: 0  ข้อมูลของโปรแกรมประยุกต์:โดเมนของแอพลิเคชัน: / LM/W3SVC/2/ราก/owa-2-DomainIDเชื่อถือระดับ: ทั้งหมดเส้นทางเสมือนของแอพลิเคชัน: /owaเส้นทางของโปรแกรมประยุกต์: Server\V15\ClientAccess\owa\ Files\Microsoft\Exchange C:\Programชื่อเครื่อง: Exch1  ประมวลผลข้อมูล:รหัสกระบวนการ: 21508ชื่อกระบวนการ: w3wp.exeชื่อบัญชี: NT AUTHORITY\SYSTEM  ข้อมูลข้อยกเว้น:ชนิดของข้อยกเว้น: TargetInvocationExceptionข้อความข้อยกเว้น: ข้อยกเว้นตามเป้าหมายของการเรียกใน System.RuntimeMethodHandle.InvokeMethod (วัตถุเป้าหมาย วัตถุ[]อาร์กิวเมนต์ ลายเซ็นลายเซ็น คอนสตรัคเตอร์บูลีน)ใน System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal (กับวัตถุวัตถุ พารามิเตอร์[]วัตถุ วัตถุ[]อาร์กิวเมนต์)ใน System.Reflection.RuntimeMethodInfo.Invoke (กับวัตถุวัตถุ BindingFlags invokeAttr, Binder binder พารามิเตอร์[]วัตถุ CultureInfo culture)ที่อยู่ Owin.Loader.DefaultLoader <> c__DisplayClass12 b__b < MakeDelegate > (ตัวสร้าง IAppBuilder)ที่อยู่ Owin.Loader.DefaultLoader <> c__DisplayClass1 b__0(IAppBuilder builder) < LoadImplementation >ใน Microsoft.Owin.Host.SystemWeb.OwinAppContext.Initialize (การเริ่มต้นการดำเนินการ ' 1)ใน Microsoft.Owin.Host.SystemWeb.OwinBuilder.Build (การเริ่มต้นการดำเนินการ ' 1)ใน Microsoft.Owin.Host.SystemWeb.OwinHttpModule.InitializeBlueprint()ใน System.Threading.LazyInitializer.EnsureInitializedCore[T] (T & เป้าหมาย บูลีน & เตรียมใช้งาน วัตถุ & syncLock, valueFactory Func'1)ที่ Microsoft.Owin.Host.SystemWeb.OwinHttpModule.Init (HttpApplication บริบท)ที่ System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS (IntPtr appContext, HttpContext บริบท ตัวจัดการ[] MethodInfo)ใน System.Web.HttpApplication.InitSpecial (สถานะ HttpApplicationState ตัวจัดการ[] MethodInfo, IntPtr appContext, HttpContext บริบท)ที่ System.Web.HttpApplicationFactory.GetSpecialApplicationInstance (IntPtr appContext, HttpContext บริบท)ที่ System.Web.Hosting.PipelineRuntime.InitializeApplication (IntPtr appContext)

ใบรับรองการเข้ารหัสลับไม่มีใน Microsoft.Exchange.Security.Authentication.Utility.GetCertificates()ใน Microsoft.Exchange.Clients.Owa2.Server.Core.notifications.SignalR.SignalRStartup.Configuration (โปรแกรมประยุกต์ IAppBuilder)

ข้อมูลที่ร้องขอ:URL ที่ร้องขอ: การ https://mail.contoso.com:URLID/owa/ ? กล่อง = 1เส้นทางที่ร้องขอ: /owa/ผู้ใช้ที่อยู่โฮสต์: UserHostAddressC:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\owa\     User: มีการรับรองความถูกต้อง: เท็จชนิดการรับรองความถูกต้อง:เธรดชื่อบัญชี: NT AUTHORITY\SYSTEM  รายละเอียดของเธรด:หมายเลขหัวข้อ: 24เธรดชื่อบัญชี: NT AUTHORITY\SYSTEMถูกปลอม: เท็จติดตามสแต็ค: ที่ System.RuntimeMethodHandle.InvokeMethod (วัตถุเป้าหมาย วัตถุ[]อาร์กิวเมนต์ ลายเซ็นลายเซ็น คอนสตรัคเตอร์บูลีน)ใน System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal (กับวัตถุวัตถุ พารามิเตอร์[]วัตถุ วัตถุ[]อาร์กิวเมนต์)ใน System.Reflection.RuntimeMethodInfo.Invoke (กับวัตถุวัตถุ BindingFlags invokeAttr, Binder binder พารามิเตอร์[]วัตถุ CultureInfo culture)ที่อยู่ Owin.Loader.DefaultLoader <> c__DisplayClass12 b__b < MakeDelegate > (ตัวสร้าง IAppBuilder)ที่อยู่ Owin.Loader.DefaultLoader <> c__DisplayClass1 b__0(IAppBuilder builder) < LoadImplementation >ใน Microsoft.Owin.Host.SystemWeb.OwinAppContext.Initialize (การเริ่มต้นการดำเนินการ ' 1)ใน Microsoft.Owin.Host.SystemWeb.OwinBuilder.Build (การเริ่มต้นการดำเนินการ ' 1)ใน Microsoft.Owin.Host.SystemWeb.OwinHttpModule.InitializeBlueprint()ใน System.Threading.LazyInitializer.EnsureInitializedCore[T] (T & เป้าหมาย บูลีน & เตรียมใช้งาน วัตถุ & syncLock, valueFactory Func'1)ที่ Microsoft.Owin.Host.SystemWeb.OwinHttpModule.Init (HttpApplication บริบท)ที่ System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS (IntPtr appContext, HttpContext บริบท ตัวจัดการ[] MethodInfo)ใน System.Web.HttpApplication.InitSpecial (สถานะ HttpApplicationState ตัวจัดการ[] MethodInfo, IntPtr appContext, HttpContext บริบท)ที่ System.Web.HttpApplicationFactory.GetSpecialApplicationInstance (IntPtr appContext, HttpContext บริบท)ที่ System.Web.Hosting.PipelineRuntime.InitializeApplication (IntPtr appContext)

สาเหตุ

ปัญหานี้เกิดขึ้นหากการแลกเปลี่ยนรับรองความถูกต้องใบรับรองเซิร์ฟเวอร์ที่มีใช้งานสำหรับการลงชื่อเข้าใช้ OAuth ขาดหายไปจากเซิร์ฟเวอร์ Exchange คุณสามารถเรียกใช้คำสั่งต่อไปนี้เพื่อตรวจสอบว่า ใบรับรองขาดหายไป:

รับ ExchangeCertificate (การรับการ AuthConfig) CurrentCertificateThumbprint

ถ้าใบรับรองหายไป คุณจะได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:

มีข้อผิดพลาด Rpc พิเศษเกิดขึ้นบนเซิร์ฟเวอร์ Exch1: ไม่พบใบรับรองที่ มีรหัสประจำตัวCertificateValue + CategoryInfo: NotSpecified: (:) [การรับการ ExchangeCertificate], InvalidOperationException+ FullyQualifiedErrorId: [เซิร์ฟเวอร์ = Exch1, RequestId =RequestID] [FailureCategory = Cmdlet InvalidOperationException] CEA009BC,Microsoft.Exchange.Management.SystemConfigurationTasks.GetExchangeCertificate

การแก้ปัญหา

เมื่อต้องการแก้ไขปัญหานี้ ติดตั้ง7 ปรับปรุงสะสมสำหรับ Exchange Server 2016 หรือเป็นวันหลังจากการปรับปรุงสะสมสำหรับ Exchange Server 2016.

วิธีแก้ปัญหา

ถ้าองค์กรของคุณมีหลายเซิร์ฟเวอร์ Exchange เรียกใช้คำสั่งต่อไปนี้ในเชลล์จัดการการแลกเปลี่ยนเพื่อยืนยันว่า ใบรับรองใช้ OAuth มีอยู่บนเซิร์ฟเวอร์ Exchange อื่น ๆ:

รับ ExchangeCertificate (การรับการ AuthConfig) CurrentCertificateThumbprint

ถ้าใบรับรองมีอยู่บน Exchange เซิร์ฟเวอร์ส่งออกใบรับรองและอื่น ๆ แล้วนำเข้าแฟ้มนั้นไปยัง Exchange serverที่มีปัญหา

ถ้าใบรับรองไม่มีอยู่บนเซิร์ฟเวอร์ Exchange ทั้งหมดในองค์กร ให้ทำตามขั้นตอนเหล่านี้เพื่อสร้าง และปรับใช้ใบรับรองใช้ OAuth ใหม่ไปยังเซิร์ฟเวอร์ Exchange:

  1. สร้างใบรับรองการใช้ OAuth ใหม่ โดยการเรียกใช้คำสั่งต่อไปนี้:

    2048ใหม่-ExchangeCertificate - KeySize - PrivateKeyExportable $true - SubjectName " cn =ใบรับรองการรับรองความถูกต้องเซิร์ฟเวอร์ Microsoft Exchange " - FriendlyName DomainName "Microsoft Exchange รับรองความถูกต้องใบรับรองเซิร์ฟเวอร์" - "contoso.com"

    หมายเหตุ เปลี่ยนค่าของพารามิเตอร์DomainNameในตัวอย่าง (contoso.com) ไปยังโดเมน SMTP ที่ใช้ในองค์กรของคุณ

  2. ตั้งค่าการสร้างใบรับรองที่จะใช้สำหรับการรับรองความถูกต้องของเซิร์ฟเวอร์ ด้วยการเรียกใช้คำสั่งต่อไปนี้:

    ชุด-AuthConfig - NewCertificateThumbprint <ThumbprintFromStep1> - NewCertificateEffectiveDate (รับ-วัน) ชุด AuthConfig – PublishCertificateชุด-AuthConfig - ClearPreviousCertificate

  3. เริ่มบริการ Microsoft Exchange บริการโฮสต์ใหม่

  4. เรียกใช้คำสั่งIISResetเพื่อเริ่ม IIS ใหม่ หรือเรียกใช้คำสั่งต่อไปนี้ (ในโหมดผู้ดูแล) รีไซเคิลกลุ่ม OWA และ ECP APP อย่างใดอย่างหนึ่ง:

    รีสตาร์ WebAppPool MSExchangeOWAAppPool รีสตาร์ WebAppPool MSExchangeECPAppPool

    หมายเหตุ ในสภาพแวดล้อมบางอย่าง อาจใช้เวลาหนึ่งชั่วโมงสำหรับใบรับรองการใช้ OAuth เพื่อเผยแพร่

สถานะ

Microsoft ยืนยันว่านี่เป็นปัญหาในผลิตภัณฑ์ของ Microsoft ซึ่งแสดงไว้ในส่วน "นำไปใช้กับ"

ข้อมูลอ้างอิง

เรียนรู้เกี่ยวกับ คำศัพท์เฉพาะทาง ที่ Microsoft ใช้เพื่ออธิบายการปรับปรุงซอฟต์แวร์

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ

ชุมชนช่วยให้คุณถามและตอบคําถาม ให้คําติชม และรับฟังจากผู้เชี่ยวชาญที่มีความรู้มากมาย