Matthew Nickson
Matthew Nickson
I have added the schema for the database table that would set the API keys. The thinking is that a user can create an API key, give it a name...
I have finished implementing API keys and this PR should now be ready for testing. Some design decisions I made: * The user is only shown the API key once...
Just realised I need to change this slightly, turns out prometheus can't use custom HTTP headers but can set the Authorization header so I am going to change this from...
Fixed that issue. Now instead of `X-API-Key` we use the standard `Authorization` header with the basic scheme and the username field left blank. This should mean that we can now...
Docs in louislam/uptime-kuma-wiki#31
My reason for not using bearer was due to it being used with Oauth. I didn't want to cause problems in future if we want to go about supporting that....
The empty username thing isn't really a hack, it is fairly commonly used from what I see. I wouldn't want to use bearer because it already has an assignment from...
I will change the UI stuff this weekend. With regard to the user having to input their password and 2FA details, I am not sure. I have seen it done...
@louislam I have changed the key generation mechanism to be 32 bytes from `crypto.randomBytes()` encoded in URL safe base64. This gives an API key length of 43 (plus some extra...
### New UI: ![image](https://user-images.githubusercontent.com/67638596/221428614-92f32634-8e4e-49a8-918d-79fb6a5cc488.png) Settings now contains a tab called API Keys ![image](https://user-images.githubusercontent.com/67638596/221428647-bfc066b1-1448-47fd-96b4-20038211a944.png) Adding API keys is now done through a modal ![image](https://user-images.githubusercontent.com/67638596/221428691-d834cbef-3924-4b67-bde9-343be4b5147c.png) User is then shown another modal where...