Pro některé případy je nutné umožnit, aby externí aplikace mohla ovlivnit, pod kterým uživatelem přistupuje. K tomu slouží tzv. serverová autorizace. ABRA Flexi ji podporuje ve třech variantách.
Serverové jméno a heslo
Tato varianta se konfiguruje souborem server-auth.xml a není použitelná v cloudu. Vytvořte soubor /etc/flexibee/server-auth.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<comment>WinStrom server configuration</comment>
<entry key="username">winstrom-server-admin</entry>
<entry key="password">velmi-tajne-a-hodne-dlouhe-heslo</entry>
</properties>
Po restartu serveru se zadané jméno a heslo začne akceptovat.
🚨 Heslo musí být minimálně 15 znaků dlouhé, jinak nebude přijato. Toto heslo umožňuje přístup ke všem datům na dané instalaci — ukládejte jej bezpečně.
Pomocí HTTP hlavičky X-FlexiBee-Authorization lze pak určit, pod kterým uživatelem má být sezení přihlášeno.
Klientský certifikát
Bezpečnějším způsobem je autorizace klientským certifikátem, kterým lze získat administrátorský přístup. Pro komunikaci je nutné použít protokol HTTPS a připojovat se na port 7000. Na serveru je uložen pouze otisk certifikátu (SHA1 fingerprint).
Otisk certifikátu získáte příkazem:
openssl x509 -noout -in cert.pem -fingerprint
Otisk je nutné zaslat na podporu, která jej nastaví do dané instance, případně do celého stromu instancí. Tato varianta je zatím dostupná pouze v cloudu.
Přihlášený administrátor
Na verzovaných cestách /v2/admin/batch a /v3/admin/batch smí dávkové API použít i běžně přihlášený uživatel s právy manageAll a licenseMgmt.
Na rozdíl od serverové autorizace je ale omezen na licenční skupiny, ke kterým má přístup — položka mířící do cizí licenční skupiny skončí se stavem FAILED. Neverzovaná cesta /admin/batch zůstává vyhrazena serverové autorizaci.
Import SSL certifikátu přes API je možný bez přihlášení uživatele právě s využitím serverové autorizace. Podrobnosti k dávkovému API pro správu instancí najdete ve vývojářské dokumentaci.
