Een API-sleutel is een wachtwoord dat niet verloopt en waar niemand naar omkijkt. Behandel het dan ook zo.
Geef het alleen wat het nodig heeft
Maak per integratie een sleutel aan, met alleen de machtigingen die die integratie gebruikt. Een implementatiescript heeft geen toegang tot facturering nodig, en een monitoringtool hoeft geen sites te verwijderen. Wanneer er iets misgaat, beperkt een afgebakende sleutel de schade.
Houd het uit uw code
Commit een sleutel nooit naar een repository — openbaar of privé. Repositories worden geforkt, gekloond, geback-upt en per ongeluk gedeeld, en scanners vinden sleutels daarin binnen enkele minuten na een push. Gebruik een omgevingsvariabele of de secret store van uw CI-provider.
Roteer in plaats van u zorgen te maken
Als een sleutel in een chat, een ticket, een screenshot of een logboek is geplakt, vervang deze dan. Maak de nieuwe sleutel aan, zet de integratie over en verwijder vervolgens de oude — in die volgorde, zodat er tussentijds niets uitvalt. Het kost een minuut en neemt de twijfel volledig weg.
Houd in de gaten wat ze doen
Elke aanroep die een sleutel doet, verschijnt in Activity, met de naam van de sleutel. Als een sleutel waarvan u dacht dat deze buiten gebruik was gesteld nog steeds aanroepen doet, vertelt dat u iets wat de moeite waard is om te weten.
Verwijderen
Het verwijderen van een sleutel is direct van kracht. Alles wat er gebruik van maakt, krijgt voortaan 401, en dat is precies de bedoeling.