5

Mam prostą usługę internetową, do której dostęp mają programiści stron trzecich. Interfejs API jest w większości zgodny z zasadami REST.Rozwiązania dla certyfikatów klienta usług sieciowych/najlepszych praktyk autorskich

Jestem zainteresowany rozwiązaniami, które zwiększają bezpieczeństwo API, wymagając od deweloperów korzystania z certyfikatów klienta. Czy istnieją jakieś rozwiązania Open Source lub inne porady dotyczące wdrożenia, które mogłyby pomóc w korzystaniu z interfejsów API opartych na REST przy użyciu certyfikatów na poziomie użytkownika dla uwierzytelniania?

Odpowiedz

3

Moja ogólna rada będzie polegać na oddzieleniu interfejsu API od procedur uwierzytelniania. Twój serwer powinien obsłużyć interakcję za Ciebie.

Rozwiązania po twojej stronie scenariusza certyfikatu klienta zależą od twojego środowiska. Nie opublikowałeś tego tutaj, ale wydaje się, że ukierunkowane wyszukiwanie w Google powinno dać ci wyobrażenie o tym, co jest konieczne.

Od kiedy udostępniasz interfejs API innym stronom, masz pewną uwagę na temat wsparcia środowiska dla tych programistów. Dobrze sobie radzisz z REST, a większość środowisk programistycznych będzie raczej dobrze współpracować z tymi programami.

Obsługa certyfikatów klienta prawdopodobnie różni się pod względem wydajności obsługi w środowiskach, platformach itp. Ponadto, teraz, gdy potrzebujesz certyfikatów, masz wpływ na implementację po stronie klienta. To z pewnością sprawi, że będziesz potrzebować wsparcia swoich klientów i wdrożyć je za pomocą interfejsu API. Oznacza to znajomość innych języków, serwerów internetowych, frameworków itp.

0

Biblioteka HTTP Pythona obsługuje client certificates, podobnie jak biblioteka Urllib, która znajduje się na niej.

Powiązane problemy