При разработке API для нашего веб-приложения мы будем использовать их поддомен в качестве «имени пользователя» и сгенерировать ключ API / общий секрет. Во-первых, можно ли использовать поддомен в качестве имени пользователя? Я не вижу преимущества создания еще одного ключа.
Различные API-интерфейсы, похоже, выполняют одно из двух:
В каждом запросе имя пользователя устанавливается на субдомен и пароль к ключу API. Поскольку мы используем SSL, это должно быть защищено от подделки.
Известные API: Google Checkout , Freshbooks , GitHub , Zendesk
Обычно достигается путем упорядочивания пар ключ / значение и использования HMAC-SHA1 с общим секретом для генерации подписи. Затем подпись отправляется вместе с запросом и проверяется на другом конце.
Известные API: Google Checkout , Amazon AWS
PS: это не ошибка, Google Checkout поддерживает оба
] Редактировать: Просто прочтите, что OAuth 2 отбрасывает подписи в пользу отправки имени пользователя и пароля через SSL.
Любые мнения о том, что выбрать: SSL против подписи?