emqx_auth_mongo.hrl 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. -define(APP, emqx_auth_mongo).
  2. -define(DEFAULT_SELECTORS, [{<<"username">>, <<"%u">>}]).
  3. -record(superquery, {collection = <<"mqtt_user">>,
  4. field = <<"is_superuser">>,
  5. selector = {<<"username">>, <<"%u">>}}).
  6. -record(authquery, {collection = <<"mqtt_user">>,
  7. field = <<"password">>,
  8. hash = sha256,
  9. selector = {<<"username">>, <<"%u">>}}).
  10. -record(aclquery, {collection = <<"mqtt_acl">>,
  11. selector = {<<"username">>, <<"%u">>}}).
  12. -record(auth_metrics, {
  13. success = 'client.auth.success',
  14. failure = 'client.auth.failure',
  15. ignore = 'client.auth.ignore'
  16. }).
  17. -record(acl_metrics, {
  18. allow = 'client.acl.allow',
  19. deny = 'client.acl.deny',
  20. ignore = 'client.acl.ignore'
  21. }).
  22. -define(METRICS(Type), tl(tuple_to_list(#Type{}))).
  23. -define(METRICS(Type, K), #Type{}#Type.K).
  24. -define(AUTH_METRICS, ?METRICS(auth_metrics)).
  25. -define(AUTH_METRICS(K), ?METRICS(auth_metrics, K)).
  26. -define(ACL_METRICS, ?METRICS(acl_metrics)).
  27. -define(ACL_METRICS(K), ?METRICS(acl_metrics, K)).