Przejdź do treści

Tworzenie i uwierzytelnianie aplikacji ​

Developer Application reprezentuje jeden zewnętrzny produkt. CloudPrint przechowuje publiczne informacje o aplikacji i klucze publiczne RS256, natomiast klucz prywatny pozostaje w bezpiecznym magazynie po Twojej stronie.

Utwórz Developer Account ​

Zaloguj się do Developer Portal zwykłym kontem CloudPrint i utwórz Developer Account dla firmy lub zespołu rozwijającego integrację. Role członków określają, kto może zarządzać aplikacjami, kluczami i instalacjami. Developer Account nie jest kontem klienta i nie zawiera drukarek.

Jedna aplikacja na jeden produkt ​

Zarejestruj Developer Application ze stałą nazwą, adresem strony, polityką prywatności i dokładnymi redirect URI. Otrzymany client_id jest używany w linkach instalacyjnych i JWT. Nie twórz osobnej aplikacji dla każdego klienta — połączenie klienta reprezentuje App Installation.

Skonfiguruj Redirect URI ​

Parametr redirect_uri w linku instalacyjnym musi dokładnie odpowiadać zarejestrowanej wartości, łącznie ze schematem, hostem, portem, ścieżką i query. Poza lokalnym środowiskiem używaj HTTPS. HTTP jest dozwolony tylko dla localhost, 127.0.0.1 i [::1]; symbole wieloznaczne, fragmenty URL i dane użytkownika są zabronione.

Dodaj klucz publiczny RS256 ​

Wygeneruj parę kluczy RSA o długości co najmniej 2048 bitów w bezpiecznym środowisku. Do CloudPrint prześlij tylko klucz publiczny, a prywatny przechowuj w menedżerze sekretów lub HSM. CloudPrint nada kluczowi identyfikator używany jako JWT kid. Podczas rotacji najpierw wdroż nowy klucz, a stary odwołaj dopiero po przełączeniu wszystkich usług.

Twórz jednorazowe potwierdzenie JWT ​

Podpisz JWT z alg=RS256 i identyfikatorem aktywnego klucza w kid. Umieść client_id aplikacji w iss i sub, dokładny adres metody w aud, maksymalnie pięć minut między iat i exp oraz unikalne jti. Zsynchronizuj zegary i twórz potwierdzenie bezpośrednio przed pojedynczym żądaniem.

Sprawdzaj stan aplikacji ​

Nowa Developer Application jest aktywna od razu po utworzeniu. Uwierzytelnienie nadal wymaga aktywnych Developer Account, Application i klucza. Aplikacja w stanie suspended nie może tworzyć instalacji ani wydawać tokenów. Pokaż ten stan w swoim interfejsie zamiast bez końca ponawiać żądania.

Podpisuj wyłącznie na serwerze ​

Nie umieszczaj klucza prywatnego ani generatora potwierdzeń JWT w przeglądarce, aplikacji mobilnej, CloudPrint Agent lub środowisku klienta. Pozwól podpisywać tylko usłudze wymieniającej potwierdzenie na token. Nie zapisuj pełnego JWT w logach; do celów wsparcia przechowuj CloudPrint X-Request-Id obok własnego identyfikatora operacji.

Następne kroki ​

Przewodniki dotyczące integracji CloudPrint, podłączania lokalnego agenta i obsługi procesów drukowania.