W dzisiejszych czasach widzę to słowo w prawie każdej aplikacji cross-service.
Czym dokładnie jest klucz API i jakie są jego zastosowania?
Jaka jest różnica między publicznymi i prywatnymi kluczami API.
W dzisiejszych czasach widzę to słowo w prawie każdej aplikacji cross-service.
Czym dokładnie jest klucz API i jakie są jego zastosowania?
Jaka jest różnica między publicznymi i prywatnymi kluczami API.
Odpowiedzi:
Do czego „dokładnie” jest używany klucz API, zależy w dużej mierze od tego, kto go wydał i do jakich usług jest używany. Jednak ogólnie rzecz biorąc, klucz API to nazwa nadana jakiejś formie tajnego tokenu, który jest przesyłany wraz z żądaniami usług internetowych (lub podobnych) w celu zidentyfikowania źródła żądania. Klucz może być zawarty w pewnym skrócie treści żądania, aby dodatkowo zweryfikować pochodzenie i zapobiec manipulowaniu wartościami.
Zwykle, jeśli można pozytywnie zidentyfikować źródło żądania, działa to jako forma uwierzytelnienia, która może prowadzić do kontroli dostępu. Na przykład możesz ograniczyć dostęp do niektórych akcji API w zależności od tego, kto wykonuje żądanie. Dla firm, które zarabiają na sprzedaży takich usług, jest to również sposób na śledzenie, kto używa rzeczy do celów rozliczeniowych. Co więcej, blokując klucz, można częściowo zapobiec nadużyciom w przypadku zbyt dużej liczby żądań.
Ogólnie rzecz biorąc, jeśli masz zarówno publiczny, jak i prywatny klucz API, sugeruje to, że same klucze są tradycyjną parą kluczy publiczny / prywatny używaną w jakiejś formie asymetrycznej kryptografii lub powiązanego podpisu cyfrowego. Są to bezpieczniejsze techniki do pozytywnej identyfikacji źródła żądania, a dodatkowo do ochrony treści żądania przed szpiegowaniem (oprócz manipulacji).
Ogólnie mówiąc:
Klucz API po prostu Cię identyfikuje.
Jeśli istnieje rozróżnienie między publicznym a prywatnym, kluczem publicznym jest klucz, który możesz przekazać innym, aby umożliwić im uzyskanie pewnego podzbioru informacji o tobie z interfejsu API. Klucz prywatny służy wyłącznie do Twojego użytku i zapewnia dostęp do wszystkich Twoich danych.
Wygląda na to, że wiele osób używa kluczy API jako rozwiązania zabezpieczającego. Najważniejsze jest to: nigdy nie traktuj kluczy API jako tajnych tak nie jest. Na https lub nie, każdy, kto może odczytać żądanie, może zobaczyć klucz API i może wykonać dowolne wywołanie. Klucz API powinien być po prostu identyfikatorem „użytkownika”, ponieważ nie jest to kompletne rozwiązanie zabezpieczające, nawet jeśli jest używane z protokołem SSL.
Lepszy opis znajduje się w Eugene Osovetsky, link do: Dlaczego podczas pracy z większością interfejsów API wymagają one dwóch rodzajów uwierzytelniania, a mianowicie klucza i sekretu? Lub sprawdź http://nordicapis.com/why-api-keys-are-not-enough/
Klucz API to unikatowa wartość przypisywana użytkownikowi tej usługi, gdy zostanie zaakceptowany jako użytkownik usługi.
Serwis utrzymuje wszystkie wydane klucze i sprawdza je na każde żądanie.
Spoglądając na dostarczony klucz na żądanie, usługa sprawdza, czy jest to ważny klucz, aby zdecydować, czy przyznać dostęp użytkownikowi, czy nie.
Pomyśl o tym w ten sposób, że „publiczny klucz API” jest podobny do nazwy użytkownika, której Twoja baza danych używa jako logowania do serwera weryfikacyjnego. „Prywatny klucz API” byłby wtedy podobny do hasła. Przez witrynę / bazę danych korzystającą z tej metody, bezpieczeństwo jest utrzymywane na serwerze zewnętrznym / serwerze weryfikacyjnym w celu autentycznego żądania opublikowania lub edycji Twojej witryny / bazy danych.
Ciąg API to po prostu adres URL logowania do Twojej witryny / bazy danych, aby skontaktować się z serwerem weryfikacyjnym.