https://graph.microsoft.com/beta/subscriptions includeResourceData & encryptionCertificate - PullRequest
0 голосов
/ 08 июля 2020

Мне нужно больше указаний относительно того, что требует от меня API подписок Microsoft Graph для использования параметра includeResourceData.

Если я не использую includeResourceData, я могу без проблем подписаться на события webhook.

I POST на https://graph.microsoft.com/beta/subscriptions

Моя JSON полезная нагрузка выглядит следующим образом:

{"changeType":"created,updated,deleted","encryptionCertificateId":"butchid","encryptionCertificate":"AAAAB3NzaC1yc2EAAAABIwAAAQEA18MJo8YuC7CH2gCiu6G70wWsGqEm2Llu3csF7fVF5aFC+cv6RtCtTAajXKldkXANM9i5kbTl7pWC3qPPJmK2kftMFLcRZznRZlAnhX\/PN+VLI4s5MjLUldlXojmN5kjjAEMiN0g3jL5hDMKDk0H9N93tKRCTMK11EBsJZPXCZjvETiSn663A\/vAEa9txQNQr7cTp\/EwLplQZmqLRcMP2mNdvY6NCMXCTvz3Es8MplOSc3HgGlze\/GP46B+7C0FkTXN+kRlkPwC7rwVjRuGjkPX8gx2jQ\/OqtK4m3U2SXHzgvbi5kIkZbFKSPlgkWGtuDMSlWUaIIU\/p7RyuK54HIiQ==","notificationUrl":"https:\/\/butch-dev-vote.polldev.com\/api\/v1\/microsoft_teams\/recognition\/subscription","resource":"teams\/allMessages","includeResourceData":true,"expirationDateTime":"2020-07-08T21:00:50.000Z","clientState":"secretClientValue","latestSupportedTlsVersion":"v1_2"}

Однако я получаю ответ ...

[error] => Array
(
    [code] => InvalidRequest
    [message] => Certificate validation error: Cannot find the requested object.

    [innerError] => Array
        (
            [date] => 2020-07-08T20:00:50
            [request-id] => 433c60fe-7aec-4ab5-9534-3af4c69ab6d7
        )

)

Если я не включаю encryptionCertificateId, я получаю ответ:

[error] => Array
    (
        [code] => InvalidRequest
        [message] => Certificate ID cannot be empty
        [innerError] => Array
            (
                [date] => 2020-07-08T19:56:57
                [request-id] => e50b21e4-ec8c-4589-9602-25b1b1700c96
            )

    )

Может ли кто-нибудь подсказать мне, какими должны быть ожидаемые encryptionCertificate и encryptionCertificateId, чтобы использовать includeResourceData?

1 Ответ

1 голос
/ 13 июля 2020

Для справки для других читателей, для создания подписки следует использовать следующие команды для создания сертификата, а затем кодировку base64 файла publickey.cer. X.509: Private / Publi c Key

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...