50 throw std::runtime_error(
"Macaroon handler config failed.");
62 virtual bool MatchesPath(
const char *verb,
const char *path)
override;
65 virtual int Init(
const char *cfgfile)
override {
return 0;}
70 std::string &location, std::string &secret, ssize_t &max_duration,
74 std::string
GenerateID(
const std::string &,
const XrdSecEntity &,
const std::string &,
const std::vector<std::string> &,
const std::string &);
Definition XrdMacaroonsHandler.hh:39
std::string GenerateID(const std::string &, const XrdSecEntity &, const std::string &, const std::vector< std::string > &, const std::string &)
std::string m_location
Definition XrdMacaroonsHandler.hh:89
Handler(XrdSysError *log, const char *config, XrdOucEnv *myEnv, XrdAccAuthorize *chain)
Definition XrdMacaroonsHandler.hh:41
ssize_t m_max_duration
Definition XrdMacaroonsHandler.hh:86
static bool xsecretkey(XrdOucStream &Config, XrdSysError *log, std::string &secret)
virtual int Init(const char *cfgfile) override
Initializes the external request handler.
Definition XrdMacaroonsHandler.hh:65
AuthzBehavior
Definition XrdMacaroonsHandler.hh:54
@ DENY
Definition XrdMacaroonsHandler.hh:57
@ ALLOW
Definition XrdMacaroonsHandler.hh:56
@ PASSTHROUGH
Definition XrdMacaroonsHandler.hh:55
XrdAccAuthorize * m_chain
Definition XrdMacaroonsHandler.hh:87
int ProcessOAuthConfig(XrdHttpExtReq &req)
XrdSysError * m_log
Definition XrdMacaroonsHandler.hh:88
int GenerateMacaroonResponse(XrdHttpExtReq &req, const std::string &response, const std::vector< std::string > &, ssize_t validity, bool oauth_response)
static bool xmaxduration(XrdOucStream &Config, XrdSysError *log, ssize_t &max_duration)
virtual int ProcessReq(XrdHttpExtReq &req) override
static bool Config(const char *config, XrdOucEnv *env, XrdSysError *log, std::string &location, std::string &secret, ssize_t &max_duration, AuthzBehavior &behavior)
static bool xtrace(XrdOucStream &Config, XrdSysError *log)
std::string GenerateActivities(const XrdHttpExtReq &, const std::string &) const
static bool xsitename(XrdOucStream &Config, XrdSysError *log, std::string &location)
int ProcessTokenRequest(XrdHttpExtReq &req)
std::string m_secret
Definition XrdMacaroonsHandler.hh:90
virtual bool MatchesPath(const char *verb, const char *path) override
Tells if the incoming path is recognized as one of the paths that have to be processed.
Definition XrdAccAuthorize.hh:68
Definition XrdHttpExtHandler.hh:88
Definition XrdHttpExtHandler.hh:47
Definition XrdOucEnv.hh:42
Definition XrdOucStream.hh:47
Definition XrdSecEntity.hh:65
Definition XrdSysError.hh:90
Definition XrdMacaroonsAuthz.hh:10
std::string NormalizeSlashes(const std::string &)
LogMask
Definition XrdMacaroonsHandler.hh:16
@ Debug
Definition XrdMacaroonsHandler.hh:17
@ Error
Definition XrdMacaroonsHandler.hh:20
@ Info
Definition XrdMacaroonsHandler.hh:18
@ Warning
Definition XrdMacaroonsHandler.hh:19
@ All
Definition XrdMacaroonsHandler.hh:21