06 października 2020
Scope w API Allegro
Dzisiaj na środowisku testowym (allegro.pl.allegrosandbox.pl) udostępniliśmy funkcjonalność tzw. scope'ów, czyli zakresów określających poziom uprawnień aplikacji do korzystania z API Allegro. Każdy scope ma przypisany zestaw uprawnień, który definiuje:
- zestaw zasobów, do których można uzyskać dostęp za pomocą scope'a,
- zestaw operacji, które można wykonać w scope'ie.
Dotychczas, każda z aplikacji zarejestrowanych na stronie Zarządzanie aplikacjami Allegro Sandbox prosiła o dostęp do wszystkich dostępnych w API Allegro scope'ów. Od dzisiaj możesz wystąpić tylko o te scope'y, które faktycznie są niezbędne do prawidłowego funkcjonowania aplikacji. Aby ograniczyć dostęp aplikacji tylko do wybranych zasobów, podczas uzyskiwania autoryzacji musisz przekazać odpowiednie scope'y - każdy kolejny scope oddziel od siebie spacją (“%20”). Listę dostępnych scope'ów znajdziesz tu.
Przykładowy request pozwalający na dostęp aplikacji tylko do zasobów do zarządzania ofertami oraz odczytu zamówień:
https://allegro.pl.allegrosandbox.pl/auth/oauth/authorize?response_type=code&redirect_uri=http://www.example.com&client_id=438f71d3a26e4d829783a0a621873465&scope=allegro:api:sale:offers:write%20allegro:api:orders:read
Od dnia 11.01.2021 na środowisku produkcyjnym uzyskasz dostęp tylko do zasobów, których scope'y przekażesz w żądaniu. Jeśli na liście scope'ów w tokenie nie znajdzie się wymagany scope, to twoje zapytanie zostanie odrzucone z kodem błędu 403.
Dlatego już dzisiaj rozpocznij prace nad prawidłową obsługą scope przez twoje oprogramowanie. Jeżeli nie podejmiesz żadnych kroków, to twoja aplikacja będzie za każdym razem autoryzować się z pełną listą scope'ów - wyświetlimy je użytkownikowi na ekranie zgody (consent screen) podczas potwierdzania połączenia aplikacji z kontem użytkownika oraz na liście aplikacji w zakładce Powiązane aplikacje. Korzystaj wyłącznie z niezbędnych scope'ów - dzięki temu ograniczysz liczbę pytań od użytkowników oraz odrzuconych powiązań aplikacji. Dzięki wdrożeniu obsługi scope'ów zapewnisz wzrost bezpieczeństwa użytkowników, którzy korzystają z API Allegro oraz aplikacjom, które używają naszego API.
Więcej informacji o scope'ach znajdziesz w naszym poradniku.