Office.context.mailbox.getCallbackTokenAsync() пустой токен

У меня проблема с веб-надстройкой для Outlook.

Клиент Outlook — 2016 (MSI), что, как мне кажется, означает, что он поддерживает JavaScript API не выше 1.4, в отличие от Outlook 2016 (C2R), который, насколько я помню, поддерживает JavaScript API 1.6 или, может быть, даже выше.

Во всяком случае, я пытаюсь использовать метод Office.context.mailbox.getCallbackTokenAsync(asyncResult), который раньше отлично работал на сервере, где он используется, но теперь он перестал работать по какой-то непонятной причине.

Теперь asyncResult пуст, точнее токен пуст.

{"value":"","status":"succeeded"}

Как токен может вдруг оказаться пустым, если раньше эта надстройка работала отлично? По словам администратора сервера, он получил обновления Windows в тот день, когда это перестало работать как для Office, так и для Outlook.

Клиенты Outlook подключаются к Exchange 2013 (CU7, 9 декабря 2014 г.: 15.0.1044.25), который также получил некоторые обновления.

С тех пор оба сервера были перезагружены, но ничего не изменилось. Токен остается пустым.

Может ли кто-нибудь пролить свет на то, что может быть причиной этого, если кто-нибудь знает, что это так, потому что все, что я действительно могу сделать сам, это догадываться?

ОБНОВЛЕНИЕ 1

Теперь мне дали разрешение на установку Fiddler, и я нашел запрос и ответ относительно попытки получить токен. Может ли кто-нибудь из вас, кто знает сервер Exchange наизнанку, увидеть, что здесь происходит, потому что я не вижу никаких причин, почему происходит сбой, за исключением того, что ответное сообщение указывает на то, что запрос каким-то образом ошибочен (что не было менял не меньше года).

Вот запрос (некоторые имена были заменены на что-то общее).

ЗАПРОС

POST https://<domain>/ews/Exchange.asmx HTTP/1.1
Cache-Control: no-cache
Connection: Keep-Alive
Pragma: no-cache
Content-Type: text/xml; charset=utf-8
User-Agent: Microsoft Office/16.0 (Windows NT 6.3; Microsoft Outlook 16.0.4849; Pro)
X-User-Identity: <account>@<domain>.com
Depth: 0
Content-Length: 801
Host: <host>
Authorization: Negotiate TlRMTVNTUAADAAAAGAAYAJ4AAABCAUIBtgAAAAAAAABYAAAANAA0AFgAAAASABIAjAAAABAAEAD4AQAAFYKI4gYDgCUAAAAPGSbYTqZVeCx7cnQxM336pnMAeQBzAHQAZQBtAGMAbwBuAG4AZQBjAHQAQABlAHMAdABpAGMAaABlAG0ALgBjAG8AbQBFAFMAVABJAC0AQwBUAFgAMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAT6dTWGCCv/rRor0Srrxd9AQEAAAAAAADJcWWYQo7VATtznMo8smALAAAAAAIACABFAFMAVABJAAEAFABFAFMAVABJAC0ARQBYAEMASAAxAAQAFABFAFMAVABJAC4AbABvAGMAYQBsAAMAKgBFAFMAVABJAC0ARQBYAEMASAAxAC4ARQBTAFQASQAuAGwAbwBjAGEAbAAFABQARQBTAFQASQAuAGwAbwBjAGEAbAAHAAgAyXFlmEKO1QEGAAQAAgAAAAgAMAAwAAAAAAAAAAAAAAAAIAAA77CK35CNnSd54Hy6NnToh6W3Oxa6tsihxlCrQ8jwDWMKABAARs+Rq8MKQZq+cmQJ8nL9/gkALABIAFQAVABQAC8AbQBhAGkAbAAuAGUAcwB0AGkAYwBoAGUAbQAuAGMAbwBtAAAAAAAAAAAAeHckPR2HOLOW0y2ri7TR1A==
Cookie: OutlookSession="{994C5944-A93C-4830-9E6F-605881790815}"; ClientId=PRHSVIWKYUDISQLQPQ


            <?xml version="1.0"?>
            <q:Envelope
                xmlns:ex12t="http://schemas.microsoft.com/exchange/services/2006/types"
                xmlns:ex12m="http://schemas.microsoft.com/exchange/services/2006/messages"
                xmlns:q="http://schemas.xmlsoap.org/soap/envelope/">
                <q:Header>
                    <ex12t:RequestServerVersion Version="Exchange2012"></ex12t:RequestServerVersion>
                </q:Header>
                <q:Body>
                    <ex12m:GetClientAccessToken>
                        <ex12m:TokenRequests>
                            <ex12t:TokenRequest>
                                <ex12t:Id>214c1212-e3ff-45eb-9218-2deb35d6b8b9</ex12t:Id>
                                <ex12t:TokenType>ScopedToken</ex12t:TokenType>
                                <ex12t:Scope>ParentItemId:AAMkADRiMzkyMjhmLWQ1NGItNDY0Mi04Nzk0LWYyNzMzZWQ2ZGE5MABGAAAAAAApHj7qoKF1QY4+pcwfu7uCBwCHPrayw2+bT5ByF4j5Y8QZAAAAAAEMAACHPrayw2+bT5ByF4j5Y8QZAAAAAAFxAAA=</ex12t:Scope>
                            </ex12t:TokenRequest>
                        </ex12m:TokenRequests>
                    </ex12m:GetClientAccessToken>
                </q:Body>
            </q:Envelope>

ОТВЕТ (некоторые имена заменены на общие).

HTTP/1.1 200 OK
Cache-Control: private
Content-Type: text/xml; charset=utf-8
Server: Microsoft-IIS/8.5
request-id: 1a7cbf79-8ba3-4a73-bfa2-1733d841b2b1
X-CalculatedBETarget: <server>.local
X-DiagInfo: <server>
X-BEServer: <server>
X-AspNet-Version: 4.0.30319
Set-Cookie: exchangecookie=2cd797c5290345a7861dfe60e16ecc12; expires=Thu, 29-Oct-2020 10:21:15 GMT; path=/; HttpOnly
Set-Cookie: X-BackEndCookie=S-1-5-21-2060358956-2462126529-2132206371-1263=u56Lnp2ejJqBmpzHns+cypzSncaZzdLLmprH0p3HxsvSm5yaycuazMieys/MgYHNz87G0s7O0s3Hq87Pxc3Oxc7K; expires=Thu, 28-Nov-2019 09:21:15 GMT; path=/ews; secure; HttpOnly
Persistent-Auth: true
X-Powered-By: ASP.NET
X-FEServer: <server>
Date: Tue, 29 Oct 2019 10:21:15 GMT
Content-Length: 1148


<?xml version="1.0" encoding="utf-8"?>
<s:Envelope
    xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
    <s:Header>
        <h:ServerVersionInfo MajorVersion="15" MinorVersion="0" MajorBuildNumber="1044" MinorBuildNumber="21" Version="V2_22"
            xmlns:h="http://schemas.microsoft.com/exchange/services/2006/types"
            xmlns="http://schemas.microsoft.com/exchange/services/2006/types"
            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
        </s:Header>
        <s:Body
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns:xsd="http://www.w3.org/2001/XMLSchema">
            <m:GetClientAccessTokenResponse
                xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages"
                xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
                <m:ResponseMessages>
                    <m:GetClientAccessTokenResponseMessage ResponseClass="Error">
                        <m:MessageText>The token for this extension could not be retrieved.</m:MessageText>
                        <m:ResponseCode>ErrorInvalidClientAccessTokenRequest</m:ResponseCode>
                        <m:DescriptiveLinkKey>0</m:DescriptiveLinkKey>
                    </m:GetClientAccessTokenResponseMessage>
                </m:ResponseMessages>
            </m:GetClientAccessTokenResponse>
        </s:Body>
    </s:Envelope>

comment
Вы можете проверить, возвращает ли сервер Exchange ошибку, найдя запрос GetClientAccessToken EWS от Outlook в трассировке скрипача на клиентском компьютере. Ошибка укажет, что не так. Как вы указали, для Exchange 2013 CU7 является старым обновлением, поэтому вы также можете обновить его до последней версии. Последнее обновление — CU23, которое в настоящее время является единственным обновлением, поддерживаемым Microsoft.   -  person Outlook Add-ins Team - MSFT    schedule 24.10.2019
comment
Я обновил свой пост (ОБНОВЛЕНИЕ 1) с запросом и ответом относительно токена. Пожалуйста, может ли кто-нибудь из вас увидеть, в чем проблема?   -  person Aidal    schedule 29.10.2019
comment
Ребята, кто-то должен знать, что здесь происходит и почему сервер выдает такую ​​ошибку. Код, запрашивающий токен, очень давно не менялся — он просто перестал работать. См. ОБНОВЛЕНИЕ 1 в сообщении для выходных данных Fiddler.   -  person Aidal    schedule 30.10.2019
comment
Exchange 2013 CU7 — это древняя сборка. Можете ли вы перейти на CU23, так как мы больше не поддерживаем CU7?   -  person Outlook Add-ins Team - MSFT    schedule 06.11.2019
comment
Я знаю, что они пытались это сделать, но это не удалось. Теперь они перешли на Office365, и проблемы больше нет. Мне все равно хотелось бы узнать, что это за ошибка, поскольку в сообщении об этом не говорится.   -  person Aidal    schedule 06.11.2019
comment
Спасибо за добавление дополнительной информации. Одной из причин этой ошибки является просроченный сертификат на сервере Exchange (см. >этот вопрос для получения дополнительной информации, включая шаги по устранению проблемы). Мне интересно, обновляется ли этот сертификат также при применении обновления Exchange, поэтому более старое обновление Exchange может быть косвенной причиной ошибки.   -  person Outlook Add-ins Team - MSFT    schedule 12.11.2019