- Я хочу убедиться, что все звонки на мой веб-сервис \ веб-сайт (размещенный на Google App Engine) поступают только с авторизованного устройства с использованием сертификата устройства.
Вы можете использовать канал SSL с аутентификацией клиента или добавлением цифровой подписи к своим сообщениям
- Каждое устройство будет иметь уникальный сертификат, который нельзя передать на другие устройства.
невозможно обеспечить это с помощью сертификатов программного обеспечения. Если вы распространяете их по электронной почте, пользователь может установить их на нескольких устройствах.
Вы можете использовать аппаратный токен (nfc / bluetooth) или предварительно установить сертификат в цепочку ключей Android / iOS, чтобы его нельзя было извлечь. но это сильно усложняет распределение.
- Сертификат устройства может быть отозван в любое время.
Проверьте отзыв на стороне сервера, прежде чем принимать запрос от клиента. Для этого есть стандартные протоколы (OCSP, CRL) или пользовательский механизм, поскольку вы сами их запускаете