bes Updated for version 3.20.13
http::AllowedHosts Class Reference

Can a given URL be dereferenced given the BES's configuration? More...

#include <AllowedHosts.h>

Collaboration diagram for http::AllowedHosts:
Collaboration graph

Public Member Functions

bool is_allowed (std::shared_ptr< http::url > candidate_url)
 
bool is_allowed (std::shared_ptr< http::url > candidate_url, std::string &whynot)
 

Static Public Member Functions

static AllowedHoststheHosts ()
 Static accessor for the singleton.
 

Detailed Description

Can a given URL be dereferenced given the BES's configuration?

Embodies a configuration based remote access allowed list and provides a simple API, is_allowed() for determining which resources may be accessed. This enables a system administrator to control the remote systems a particular BES daemon can access.

Note
This class is a singleton

Definition at line 54 of file AllowedHosts.h.

Constructor & Destructor Documentation

◆ ~AllowedHosts()

virtual http::AllowedHosts::~AllowedHosts ( )
inlinevirtual

Definition at line 67 of file AllowedHosts.h.

Member Function Documentation

◆ is_allowed() [1/2]

bool http::AllowedHosts::is_allowed ( std::shared_ptr< http::url candidate_url)

This method provides an access condition assessment for URLs and files to be accessed by the BES. The http and https URLs are verified against a allowed hosts list assembled from configuration. All file URLs are checked to be sure that they reference a resource within the BES default catalog.

Parameters
candidate_urlThe URL to test
Returns
True if the URL may be dereferenced, given the BES's configuration, false otherwise.

Definition at line 113 of file AllowedHosts.cc.

◆ is_allowed() [2/2]

bool http::AllowedHosts::is_allowed ( std::shared_ptr< http::url candidate_url,
std::string &  whynot 
)

Definition at line 118 of file AllowedHosts.cc.

◆ theHosts()

AllowedHosts * http::AllowedHosts::theHosts ( )
static

Static accessor for the singleton.

Returns
A pointer to the singleton instance

Definition at line 69 of file AllowedHosts.cc.


The documentation for this class was generated from the following files: