Я разрабатываю протокол, который передает автоматизированные инструкции между отдельными организациями.
Я изо всех сил пытаюсь найти существующий механизм аутентификации, который может позволить организации аутентифицировать только своих собственных устройств в другой организации.
Так что я ищуэто то, что позволило бы:
foomy.tld
должен иметь возможность аутентифицировать new_deive.foomy.tld
. acme.tld
может выбрать доверять foomy.tld
, то есть доверять new_device.foomy.tld
действительно принадлежит foomy.tld
- НО
acme.tld
, НИКОГДА НЕ ДОЛЖНЫ доверять foomy.tld
для аутентификации чего-либо, кроме *.foomy.tld
устройств.
Учитывая использование x509 и SSL
В случае сертификатов CA x509 роль CA обычно выполняет сторонний CA.Но это не подходит для этой цели:
- Создание / уничтожение идентификаторов устройств (служб) происходит слишком быстро, чтобы рассматривать традиционный ЦС.Центры сертификации слишком дороги, слишком медленны.
- Этот механизм должен проверять подлинность клиентов и серверов.Устройства / службы не всегда имеют общедоступные IP-адреса, поэтому решения CA, такие как LetsEncrypt, не подходят.
- Создание выделенного ЦС для этой единственной цели неэффективно с точки зрения затрат и может повредить принятию.
Организации могут выступать в качестве своих собственных ЦС для этой цели, но, как выясняется,x509 действительно не поддерживает это.Как только вы примете CA как заслуживающий доверия, вы не сможете достаточно ограничить область этого доверия.IE: Вы не можете доверять ему только для подписи сертификатов для своего собственного домена .
Рассматривая возможность повторного использования механизмов единой регистрации
Механизмы единой регистрации, которые я имеюсмотрелся, кажется, строится вокруг концепции аутентификации пользователей.Фоновые автоматизированные сервисы не поддерживаются.
Может быть, я что-то здесь упустил.
Вопрос - Как можно более узко это сделать.
Есть ли другой подход, позволяющийэтот тип межорганизационной аутентификации, который я могу использовать для моей проблемы?