19declare(strict_types=1);
42 private readonly
bool $activated =
false,
43 private readonly ?
string $content_domain =
null,
57 $preconditions = [new \ilIniFilesLoadedObjective()];
59 $preconditions[] = new \ilHttpConfigStoredObjective($environment->
getConfigFor(
'http'));
61 return $preconditions;
70 && $this->content_domain !==
null
71 && $ilias_domain !==
null
73 (
string) parse_url($this->content_domain, PHP_URL_HOST),
74 (
string) parse_url($ilias_domain, PHP_URL_HOST)
78 'IRSS User Content Isolation requires the content domain to differ from the '
79 .
'ILIAS domain (http_path); serving user content from the same host defeats '
114 $ini->readVariable(
'server',
'http_path') ?:
null
Read-only configuration of the IRSS User Content Isolation feature.
static originFromUrl(mixed $value)
Reduce a (trusted) application URL to its bare origin "scheme://host[:port]".
Writes the IRSS User Content Isolation settings to a static PHP artefact so the FileDelivery runtime ...
buildIn(Environment $env)
getPreconditions(Environment $environment)
Objectives might depend on other objectives.
readIliasDomain(Environment $env)
Read the installed http_path from ilias.ini.php and reduce it to a bare origin to be used as the CORS...
__construct(private readonly bool $activated=false, private readonly ?string $content_domain=null,)
Signals that some goal won't be achievable by actions of the system ever.
INI file parser — compatibility wrapper.
An artifact is some file that is build on demand per installation and is not shipped with the ILIAS s...
An environment holds resources to be used in the setup process.
hasConfigFor(string $component)
getConfigFor(string $component)
getResource(string $id)
Consumers of this method should check if the result is what they expect, e.g.