OAuth2 aplikace
Propojte aplikaci třetí strany s Futrou pomocí OAuth2.
Futrou podporuje dynamickou registraci OAuth2 aplikací pro automatizaci — aplikace třetí strany si tak může vyžádat přístup k Futrou, aniž by ji předtím musel někdo ručně zaregistrovat. Aplikace vznikají za běhu, dopředu je přes dashboard registrovat nejde.
Aplikaci, která není připojená k žádnému workspacu, Futrou krátce po registraci automaticky smaže — před dalším použitím se musí zaregistrovat znovu.
Automatické zjišťování
Aplikace najde autorizační a token endpointy Futrou pomocí OAuth 2.0 Authorization Server Metadata (RFC 8414):
curl https://api.futrou.com/.well-known/oauth-authorization-server{
"issuer": "https://api.futrou.com",
"authorization_endpoint": "https://api.futrou.com/v2/auth/oauth2/authorize",
"token_endpoint": "https://api.futrou.com/v2/auth/oauth2/token",
"revocation_endpoint": "https://api.futrou.com/v2/auth/oauth2/revoke",
"registration_endpoint": "https://api.futrou.com/v2/auth/oauth2/register",
"response_types_supported": ["code"],
"grant_types_supported": ["authorization_code"],
"code_challenge_methods_supported": ["S256"]
}Registrace
Aplikace se registruje sama při prvním připojení, pomocí OAuth 2.0 Dynamic Client Registration (RFC 7591) na registration_endpoint zjištěném výše — v dashboardu nic ručně nenastavujete:
curl -X POST https://api.futrou.com/v2/auth/oauth2/register \
-H "Content-Type: application/json" \
-d '{
"client_name": "My Integration",
"logo_uri": "https://myapp.example.com/icon.png",
"redirect_uris": ["https://myapp.example.com/callback"],
"token_endpoint_auth_method": "none"
}'Futrou vrátí client_id, který aplikace použije v následujícím autorizačním kroku:
{
"client_id": "app_8f2c1a9b",
"client_name": "My Integration",
"logo_uri": "https://myapp.example.com/icon.png",
"redirect_uris": ["https://myapp.example.com/callback"],
"client_id_issued_at": 1755190800
}logo_uri je nepovinné, ale doporučené — Futrou ho zobrazí jako ikonu aplikace na autorizační obrazovce, takže lidé schvalující aplikaci ji na první pohled poznají.
Samotná registrace ještě neznamená žádný přístup, vzniká jí jen identita klienta — s pouhým client_id aplikace nic nezmůže, dokud ji člověk neschválí pro konkrétní workspace a nedokončí tím autorizační krok.
Autorizace
Po registraci projde aplikace standardním OAuth2 autorizačním flow s PKCE proti https://api.futrou.com/v2/auth/oauth2/authorize a https://api.futrou.com/v2/auth/oauth2/token. Schválíte ji pro konkrétní workspace a tím se vydá API token workspacu s rolí, která nepřevyšuje vaši vlastní roli v daném workspacu.
Bezpečnost
Registrace je otevřená a neautentizovaná, takže údaje, které aplikace uvádí — client_name, logo_uri, redirect_uris — jsou čistě sebeuváděné a Futrou je nijak neověřuje. Berte registraci jako pouhé tvrzení o identitě, ne jako rozhodnutí o důvěře: skutečná bezpečnostní hranice je až autorizační obrazovka, kde člověk rozhoduje, jestli danému klientovi dá přístup ke svému workspacu.
- PKCE je povinné. Každý autorizační požadavek musí nést
code_challenge— tím se uzavírá riziko odposlechu, které by jinak hrozilo díky tomu, že se nevyžaduje client secret. redirect_urisse při autorizaci porovnávají přesně s tím, co bylo zaregistrováno — aplikace nemůže přesměrovat autorizační kód jinam, než sama předem deklarovala.- Registrace je rate-limitovaná podle IP, aby se zabránilo zneužití samotného registračního endpointu.
- Důvěryhodně vypadající název nebo logo nejsou důkaz identity. Obě pole jsou sebeuváděná, takže je může zkopírovat kdokoliv. Než aplikaci schválíte, vždy si na autorizační obrazovce zkontrolujte doménu v jejích
redirect_urisa ověřte, že jí důvěřujete — stejně jako byste si před kliknutím zkontrolovali odkaz. Hezký název nebo ikona doménu neověří za vás.
Naposledy upraveno