ШифрованиеCertificateId Microsoft API

Я пытаюсь зарегистрировать веб-перехватчик для команд Microsoft, чтобы получать обновления после отправки сообщения в какой-либо чат. По-видимому, способ сделать это в соответствии с Microsoft API — отправить запрос с «encryptionCertificate» следующим образом: Теперь я пытаюсь выяснить, что должно быть в поле EncryptionCertificate, но я не смог найти четкого ответа в документации. Единственное, что я понял, это то, что поле содержит «Сертификат» в кодировке base64, что приводит меня к тому же вопросу. Что это за сертификат и как его найти.

Кто-нибудь, кто имеет некоторый опыт работы с MS API или знает что-нибудь об этом, и может помочь? Очень ценные ребята

Вот также некоторые наивные попытки, которые я предпринял, и каковы их результаты:

  1. "encryptionCertificate": "YWJjZGVmZw==", что привело к: Ошибка проверки сертификата: не удается найти запрошенный объект,

  2. "encryptionCertificate": "klsjdaadnkjadn", ошибка проверки сертификата: недопустимая длина для массива символов Base-64 или строки

  3. "encryptionCertificate": null, Сертификат не может быть пустым

Как сделать HTTP-запрос в Javascript?
Как сделать HTTP-запрос в Javascript?
В JavaScript вы можете сделать HTTP-запрос, используя объект XMLHttpRequest или более новый API fetch. Вот пример для обоих методов:
Создание ресурсов API Laravel: Советы по производительности и масштабируемости
Создание ресурсов API Laravel: Советы по производительности и масштабируемости
Создание API-ресурса Laravel может быть непростой задачей. Она требует глубокого понимания возможностей Laravel и лучших практик, чтобы обеспечить...
Как создать простое погодное приложение на Python с API OpenWeatherMap
Как создать простое погодное приложение на Python с API OpenWeatherMap
Этот учебник проведет вас через процесс создания простого погодного приложения с помощью Python и OpenWeatherMap API.
Пакеты Java
Пакеты Java
Пакет java - это группа классов, интерфейсов и подпакетов схожего типа. Думайте об этом как о папке в каталоге файлов. Мы используем пакеты, чтобы...
Как использовать API парсинга квитанций с помощью JavaScript за 5 минут?
Как использовать API парсинга квитанций с помощью JavaScript за 5 минут?
В этом руководстве вы узнаете, как использовать API парсинга квитанций за 5 минут с помощью JavaScript. Eden AI предоставляет простой и удобный для...
0
0
114
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

encryptionCertificate содержит закодированное по основанию 64 значение открытого ключа.

Требования к открытому ключу:

  • Ключ должен быть типа RSA
  • Размер ключа должен быть от 2048 до 4096 бит.
  • Экспортируйте сертификат в формате X.509 с кодировкой base64 и включите только открытый ключ.

Например, с помощью команд openssl

openssl genrsa -out private.key 1024
openssl req -new -x509 -key private.key -out publickey.cer -days 365
openssl pkcs12 -export -out public_privatekey.pfx -inkey private.key -in publickey.cer

Он генерирует закрытый ключ, создает сертификат X509 (файл .cer) и экспортирует сертификат x509 и закрытый ключ в файл PFX.

Когда вы создаете подписку с помощью encryptionCertificate, прочитайте весь publickey.cer файл (включая части -- Начало сертификации / Завершение сертификата) и установите для содержимого в кодировке base64 значение encryptionCertificate.

Ресурсы:

Управление ключами шифрования

Другие вопросы по теме