13.24
Limity a bezpečnost
API je postavené tak, aby se token nedal zneužít proti serveru, ani kdyby unikl. Následující ochrany platí u každého požadavku.
U každého koncového bodu se Premium kontroluje dřív než cokoli jiného, ještě před vyhledáním tokenu a před započtením jakéhokoli limitu, takže server bez aktivního předplatného dostane vždy stejnou odpověď 402 místo napůl provedeného požadavku.
- Žádné hromadné označování. Ve všech zprávách z API (včetně zpráv přes webhook a značek) jsou vypnuté
@everyone,@herei libovolná označení rolí. Při zakládání tiketu lze označit jen roli nastavenou u panelu a toho, kdo tiket založil. - Žádné vydávání se za někoho jiného. Zobrazovaná jména webhooků s vyhrazenými slovy jako "discord" nebo "clyde" se nahrazují a vlastní avatar musí být platná adresa
https://. - Nutné Premium. API je funkce Premium. Bez aktivního předplatného vrací každý požadavek
402s polempremium_required: truea nové tokeny nejde vytvořit ani vyměnit. - Limity požadavků. Každý token má limit pro jednotlivé úkony (třeba: založení tiketu 10 za minutu, odeslání zprávy 30 za minutu, přejmenování 2 za 10 minut, změna panelu 2 za 10 minut, úpravy panelů 10 za minutu, opětovné odeslání panelu 4 za 10 minut, čtení 120 za minutu). Při překročení limitu přijde
429s hodnotouretry_afterv sekundách. Aktuální tabulku získáte přesGET /api/token. - Náročné čtení má vlastní limity. Hledání v přepisech a stahování přepisů v HTML mají po 10 za minutu a úplné zaindexované přepisy 30 za minutu, takže nikdy neubírají ze štědrého limitu 120 čtení za minutu. Hledání navíc běží na celém serveru nejvýše dvakrát naráz a při překročení vymezeného času se ukončí s kódem
504, takže provoz z hledání nikdy nebrzdí práci s tikety. - Strop otevřených tiketů. Jakmile server dosáhne bezpečnostního stropu otevřených tiketů, API další nezaloží, a pro uživatele na černé listině tiket nezaloží vůbec.
- Co nejméně oprávnění. Citlivá oprávnění (Čtení zpráv tiketů, Zobrazení přepisů, Hledání v přepisech, Stahování přepisů v HTML, Používání značek, Přejmenování tiketů, Správa panelů, Změna panelu tiketů) jsou ve výchozím stavu vypnutá a je třeba je u každého tokenu vědomě zapnout.
- Čtení historie se zaznamenává. Stažení úplného přepisu v HTML se zapíše do záznamu činnosti serveru spolu s tokenem, který to provedl, stejně jako každá změna, kterou API udělá.
- Panely zůstávají svázané s vaším nastavením. Oprávnění Správa panelů umí změnit jen vzhled panelu (název, vloženou zprávu, tlačítka). Kanály, kategorie, role k označení, formuláře ani týmy podpory přes API měnit nejde.
- Platnost a výměna. Tokenům lze nastavit platnost, vypnout je nebo je z nástěnky vyměnit; výměna okamžitě zneplatní předchozí tajemství.
- Vázanost na server. Token funguje jen na serveru, na kterém vznikl, a u každého požadavku se to znovu kontroluje.