Prihlásenie cez Millida na tvojej stránke
Pripojenie tlačidla „Prihlásiť sa cez Millida“ — prihlásenie návštevníkov tvojej stránky cez účet Millida. Registrácia aplikácie, priebeh autorizácie, overenie tokenu.
Aktualizované 7. septembra 2026
Millida môže vystupovať ako poskytovateľ identity: návštevník klikne na tvojom webe na „Prihlásiť sa cez Millida“, potvrdí prenos údajov a vráti sa už prihlásený. Funguje to cez OpenID Connect — rovnako ako prihlasovanie cez Google, Apple alebo Discord — takže bude fungovať akákoľvek hotová knižnica pre OIDC.
Sprístupnená je len identita: Minecraft prezývka, meno, avatar a — ak o to požiadaš a daná osoba súhlasí — email, skin, prepojený Discord a Telegram a reputácia na platforme. Zostatky, transakcie a servery nie sú pre aplikácie dostupné.
Čo musíš urobiť
1. Vytvor aplikáciu
Profil → API a webhooky → karta Prihlásenie cez Millida → „Vytvoriť aplikáciu“.
Budeš potrebovať:
- Názov — daná osoba ho uvidí na prihlasovacej obrazovke. Slovo „Millida“ je v názve cudzej aplikácie zakázané.
- Redirect URI — kam sa má používateľ po potvrdení vrátiť. Iba
https(na vývoj je povolenéhttp://localhost). Zhoda sa vyžaduje úplná: lomka navyše alebo pridaný parameter už nebudú sedieť. - Odkaz na zásady ochrany osobných údajov — daná osoba ho uvidí pred prenosom údajov k tebe.
Po vytvorení dostaneš client_id a pri serverovej aplikácii aj client_secret. Tajný kľúč sa zobrazí iba raz — hneď si ho ulož.
Typ aplikácie: serverová, ak máš backend, ktorý dokáže uchovať tajný kľúč; verejná, ak ide o SPA alebo mobilnú aplikáciu a tajný kľúč nemáš kde skryť.
2. Zadaj knižnici URL poskytovateľa
https://id.millida.net
To stačí: knižnica si sama prečíta https://id.millida.net/.well-known/openid-configuration a nájde zvyšné URL.
3. Pošli danú osobu na prihlásenie
https://id.millida.net/oauth/authorize
?response_type=code
&client_id=your_client_id
&redirect_uri=https://your-site.ru/auth/millida/callback
&scope=openid profile email
&state=random_string
&nonce=random_string
&code_challenge=base64url(sha256(code_verifier))
&code_challenge_method=S256
PKCE je povinné pre všetkých, vrátane serverových aplikácií. Ulož state do relácie a pri návrate ho over — bez toho sa dá do tvojej relácie podstrčiť cudzia odpoveď.
4. Vymeň kód za tokeny
POST https://id.millida.net/oauth/token
Content-Type: application/x-www-form-urlencoded
Authorization: Basic base64(client_id:client_secret)
grant_type=authorization_code&code=…&redirect_uri=…&code_verifier=…
Odpoveď obsahuje access_token, id_token a, ak si požiadal o offline_access, aj refresh_token.
5. Zisti, kto sa prihlásil
Rozparsuj id_token (over podpis voči JWKS, iss, aud, exp, nonce) alebo si vyžiadaj:
GET https://id.millida.net/oauth/userinfo
Authorization: Bearer <access_token>
Aké údaje môžeš žiadať
| Čo žiadaš | Čo dostaneš |
|---|---|
openid | sub — identifikátor používateľa, povinné |
profile | prezývka, meno, avatar, odkaz na profil |
email | emailová adresa a informácia, či je overená |
minecraft | Minecraft prezývka, jej UUID, edícia a odkazy na aktuálny skin a plášť |
discord | identifikátor a meno prepojeného Discordu |
telegram | identifikátor a @meno prepojeného Telegramu |
reputation | lajky profilu, počet úspechov, dátum registrácie, označenie overeného účtu |
offline_access | právo obnovovať prístup, kým ho daná osoba neodvolá |
Offline prezývka nemá UUID — minecraft_uuid bude prázdne a minecraft_username sa vyplní z účtu. telegram_id prichádza ako reťazec: Telegram chat id sa nezmestí do presného čísla v JSON a parsovanie ako číslo pokazí posledné číslice.
Žiadaj len to, čo je potrebné na fungovanie prihlásenia: daná osoba číta každú položku navyše na obrazovke súhlasu a môže si to tam ešte rozmyslieť.
O identifikátore používateľa
sub je pre tú istú osobu iné v každej aplikácii. Pre tvoj web je nemenné, ale nezhoduje sa s sub na iných weboch — nedá sa podľa neho spájať publikum medzi aplikáciami.
Ukladaj sub ako kľúč používateľa. Email sa na to nehodí: dá sa zmeniť.
Overenie aplikácie
Nová aplikácia funguje hneď, ale na prihlasovacej obrazovke je označená ako neoverená. Keď je web pripravený, klikni v dashboarde na „Odoslať na kontrolu“ — pozrieme sa naň a označenie odstránime.
Časté chyby
„redirect_uri does not match any registered address“ — adresa sa porovnáva ako celý reťazec. Skontroluj lomku na konci, schému a port.
„Only code_challenge_method=S256 is supported“ — PKCE je povinné, plain sa neakceptuje.
„The authorization code has already been used“ — kód je jednorazový a platí minútu. Opakovaná výmena sa považuje za znak úniku a úplne zruší prístup aplikácie.
Token prestal fungovať po odvolaní — daná osoba vypnula aplikáciu v nastaveniach zabezpečenia profilu. Je to očakávané správanie: pošli ju prihlásiť sa znova.
Ako daná osoba odvolá prístup
Profil → Zabezpečenie → „Prepojené aplikácie“ → „Odvolať“. Prístup sa okamžite zastaví a všetky vydané tokeny prestanú platiť.