http_auth.h 632 B

123456789101112131415161718192021
  1. // SPDX-License-Identifier: GPL-3.0-or-later
  2. #ifndef NETDATA_HTTP_AUTH_H
  3. #define NETDATA_HTTP_AUTH_H
  4. #include "web_api.h"
  5. struct web_client;
  6. extern bool netdata_is_protected_by_bearer;
  7. bool extract_bearer_token_from_request(struct web_client *w, char *dst, size_t dst_len);
  8. time_t bearer_create_token(uuid_t *uuid, struct web_client *w);
  9. bool web_client_bearer_token_auth(struct web_client *w, const char *v);
  10. static inline bool web_client_has_enough_access_level(HTTP_ACCESS user_level, HTTP_ACCESS endpoint_level) {
  11. return user_level != HTTP_ACCESS_NONE && user_level <= endpoint_level;
  12. }
  13. #endif //NETDATA_HTTP_AUTH_H