Uprawnienia i klucze w Oracle Cloud

payload.pl 3 lat temu

W ostatnich 2 tygodniach omówiliśmy różnice pomiędzy Amazon Web Services, Microsoft Azure i Google Cloud odnośnie zarządzania użytkownikami, uprawnieniami i kluczami dostępowymi. Oprócz trzech największych graczy pozostało jeden, wprawdzie posiadający znacznie mniejszą chmurę, ale utrzymujący w niej sporo lukratywnych usług opartych na rozwiązaniach biznesowych firmy Oracle.

Chmura Oracle jest niestety pod wieloma względami daleko w tyle za największą trójką - dużą rolę odgrywa w tym większy stopień trudności w uruchamianiu instancji tej chmury, np. ręczna konfiguracja podsieci prywatnych dla serwerów i innych usług.

Z drugiej strony, Oracle Cloud się dość dynamicznie rozwija. Gdy autor tego artykułu zaczynał w 2016 swoją przygodę z Oracle Cloud, chmura ta miała 4 regiony. Dzisiaj (wrzesień 2020) ma już 19 regionów publicznych i 8 rządowych. Rozwiązane też zostały różnorakie problemy wieku dziecięcego.

Sposoby dostępu

W Oracle Cloud są 3 główne sposoby dostępu do usług:

  • przez konsolę webową - przy czym adres konsoli jest zależny od regionu skonfigurowanego jako podstawowy dla całego konta (domyślnie jest to Ashburn)
  • przez API Oracle Cloud - w przeciwieństwie do Azure czy Google Cloud, klient OCI wymaga manualnej konfiguracji połączenia:
    • konfiguracja Pythona
    • pobranie "tenancy" (zwanego też w niektórych miejscach "compartment ID" lub "Tenancy’s OCID") z konfiguracji konta i manualnego wstawienia do pliku konfiguracyjnego (opisanego niżej)
    • wygenerowanie pary kluczy RSA i sprawdzenie odcisku palca klucza prywatnego
    • wgranie klucza publicznego w panelu konfiguracyjnym w konsoli
  • dedykowany dostęp do wybranych usług w specjalny sposób, np. logowanie ssh do instancji linuxowych dzięki klucza ssh (w przeciwieństwie do AWS, tworzonego wyłącznie lokalnie - treść klucza publicznego przekazywana jest każdorazowo przy tworzeniu instancji)

Sposoby zapisu kluczy i innych danych dostępowych do API

Komplet danych dostępowych, z wyjątkiem jedynie samych kluczy, zapisany jest w pliku ~/.oci/config - przykładowy plik wygląda następująco:

[DEFAULT] user=ocid1.user.oc1..aaaaaaaazjhoahty3bexgxx4jksxsitmtcwh4jqv7oraeayw1ibehkj3dlca fingerprint=e0:81:36:78:c5:0e:23:21:b5:aa:79:7f:dc:5b:70:07 key_file=/root/.oci/oci_api_key.pem tenancy=ocid1.tenancy.oc1..aaaaaaaa4eqb5fek3hz1lyntkzsx6rdjsz5rdvtrtsimxuxfeetqlgegw4iq region=us-phoenix-1

Klucz prywatny (określany też mianem "signing key") jest zapisany w pliku wskazywanym przez zmienną key_file, czyli w tym przypadku /root/.oci/oci_api_key.pem.

Idź do oryginalnego materiału