Dostęp do Bob on-premises

Połącz bob-ide lub bob-shell z wdrożeniem IBM Bob on-premises, konfigurując zaufanie certyfikatu, punkt końcowy klienta i uwierzytelnianie użytkownika.

Bob on-premises umożliwia korzystanie z możliwości Bob we własnej infrastrukturze przy zachowaniu kontroli nad bezpieczeństwem, zarządzaniem tożsamością i dostępem sieciowym. Zanim będzie można korzystać z bob-ide lub bob-shell, należy skonfigurować zaufanie dla certyfikatu wdrożenia, połączyć się z odpowiednim punktem końcowym usługi i uwierzytelnić się za pomocą poświadczeń organizacji.

Przed rozpoczęciem

Przed kontynuowaniem potwierdź z administratorem klastra następujące kwestie:

  • Wdrożenie Bob on-premises jest zainstalowane i działa. Zasób niestandardowy (CR) Bob musi raportować status Ready.
  • Masz adres URL punktu końcowego API Bob w formacie https://api.<cluster-domain>. Administrator może go pobrać, uruchamiając polecenie oc get route po instalacji.
  • Jeśli wdrożenie używa urzędu certyfikacji (CA) z podpisem własnym lub wewnętrznego, masz plik certyfikatu CA (na przykład bob-ca.crt lub bob-ca.pem).
  • Dostępne jest konto użytkownika. Administrator skonfigurował federację LDAP lub Active Directory albo utworzył bezpośrednie konto użytkownika w Keycloak. Zobacz Zarządzanie użytkownikami.
Uwaga:

Jeśli brakuje któregokolwiek z wymagań wstępnych, skontaktuj się z administratorem klastra przed kontynuowaniem.

Zaufaj certyfikatowi CA

Jeśli wdrożenie Bob korzysta z urzędu certyfikacji z podpisem własnym lub zarządzanego wewnętrznie, stacja robocza musi ufać certyfikatowi CA, zanim będzie mogła nawiązywać bezpieczne połączenia HTTPS z usługami Bob.

Uwaga:

Pomiń tę sekcję, jeśli wdrożenie używa publicznie zaufanego lub korporacyjnego urzędu certyfikacji (CA), który jest już zaufany przez Twoją stację roboczą.

Zweryfikuj certyfikat:

openssl x509 -in bob-ca.crt -noout -subject -issuer -dates

Dane wyjściowe pokazują pola subject i issuer. W przypadku certyfikatu CA z podpisem własnym wartości te są równe. Upewnij się, że data notAfter przypada w przyszłości.

Zaimportuj certyfikat, korzystając z jednej z następujących opcji:

Opcja 1: Dostęp do pęku kluczy (Keychain Access)

  1. Zlokalizuj plik bob-ca.crt w Finderze.
  2. Kliknij dwukrotnie plik. System macOS otworzy arkusz Dodaj certyfikaty (Add Certificates).
  3. W menu rozwijanym pęku kluczy wybierz System i kliknij Dodaj. Wprowadź hasło po wyświetleniu monitu.
  4. Otwórz Dostęp do pęku kluczy (Keychain Access), wybierz System na pasku bocznym i kliknij Certyfikaty.
  5. Zlokalizuj zaimportowany certyfikat i otwórz jego właściwości.
  6. Rozwiń Ufaj (Trust) i ustaw Podczas używania tego certyfikatu na Zawsze ufaj (Always Trust).
  7. Zapisz zmiany.

Po zaimportowaniu zamknij i ponownie uruchom bob-ide.

Uwaga:

Na macOS Sequoia, jeśli dwukrotne kliknięcie pliku certyfikatu nie przynosi efektu, zmień nazwę pliku, upewniając się, że ma rozszerzenie .crt, i spróbuj ponownie.

Opcja 2: Wiersz poleceń

sudo security add-trusted-cert \
  -d \
  -r trustRoot \
  -k /Library/Keychains/System.keychain \
  bob-ca.crt

Zweryfikuj import certyfikatu:

security find-certificate -c "Bob Internal CA" \
  /Library/Keychains/System.keychain

Po zaimportowaniu certyfikatu zamknij i ponownie uruchom bob-ide.

Uwaga:

Jeśli bob-ide nadal wyświetla błąd UNABLE_TO_VERIFY_LEAF_SIGNATURE po ponownym uruchomieniu, włącz eksperymentalne ustawienie certyfikatów systemowych w pliku ustawień bob-ide:

{
  "http.experimental.systemCertificatesV2": true
}

Jeśli bob-shell nadal nie ufa certyfikatowi, skonfiguruj Node.js do używania certyfikatu CA:

export NODE_EXTRA_CA_CERTS="/path/to/bob-ca.crt"

Dodaj tę zmienną do swojego profilu powłoki, aby zachować ustawienie na stałe.

Zaimportuj certyfikat CA do systemowego magazynu zaufania:

sudo cp bob-ca.crt /usr/local/share/ca-certificates/bob-ca.crt
sudo update-ca-certificates

Zaimportuj certyfikat do magazynu Zaufane główne urzędy certyfikacji (Trusted Root Certification Authorities) za pomocą certmgr.msc lub uruchom:

certutil -addstore "Root" bob-ca.crt

Skonfiguruj punkt końcowy klienta

Gdy stacja robocza ufa już certyfikatowi wdrożenia, skonfiguruj klienta do komunikacji z punktem końcowym API Bob podanym przez administratora klastra.

bob-ide

Skonfiguruj punkt końcowy bramy API w pliku ustawień:

  1. Otwórz Ustawienia (Settings).
  2. Kliknij Otwórz plik ustawień (Open settings file).
  3. Określ adres URL bramy:
{
  "gatewayUrl": "https://api.<cluster-domain>"
}
  1. Zapisz plik.

bob-shell

Skonfiguruj punkt końcowy, którego bob-shell używa do łączenia się z wdrożeniem Bob.

Zmienne środowiskowe (zalecane)

Dodaj poniższe zmienne do profilu powłoki (na przykład ~/.bashrc lub ~/.zshrc), aby zachować je między sesjami:

export BOB_GATEWAY_URL=https://api.<cluster-domain>
export BOB_WEB_LOGIN_URL=https://<login-domain>

Opcje wiersza poleceń

bob \
  --gateway-url https://api.<cluster-domain> \
  --web-login-url https://<login-domain>
Uwaga:
  • BOB_WEB_LOGIN_URL i --web-login-url są wymagane tylko w przypadku uwierzytelniania SSO, gdy adres URL logowania nie może zostać automatycznie wyprowadzony z adresu URL bramy.
  • W przypadku uwierzytelniania za pomocą klucza API wymagany jest tylko BOB_GATEWAY_URL.
  • Jeśli gatewayUrl jest skonfigurowany w settings.json, zarówno bob-ide, jak i bob-shell używają tej wartości.

Zaloguj się

Po skonfigurowaniu punktu końcowego uwierzytelnij się we wdrożeniu Bob przy użyciu przypisanych poświadczeń.

  • W przypadku bob-ide kliknij Zaloguj się (Sign In).
  • W przypadku bob-shell uruchom polecenie bob.

Nastąpi przekierowanie do dostawcy uwierzytelniania organizacji (na przykład Keycloak), gdzie logujesz się przy użyciu poświadczeń organizacji.

Po pomyślnym uwierzytelnieniu możesz używać bob-ide lub bob-shell do uzyskiwania dostępu do wdrożenia IBM Bob on-premises w celu generowania kodu, analizy, refaktoryzacji i innych obsługiwanych procesów programistycznych.

Jak oceniasz ten temat?