Bob on-premises'e erişme

Sertifika güvenini, istemci endpoint'ini ve kullanıcı kimlik doğrulamasını yapılandırarak bob-ide veya bob-shell'i IBM Bob on-premises dağıtımına bağlayın.

Bob on-premises, güvenlik, kimlik yönetimi ve ağ erişimi üzerinde kontrolü korurken kendi altyapınızda Bob yeteneklerini kullanmanızı sağlar. bob-ide veya bob-shell kullanabilmek için dağıtım sertifikasına güveni yapılandırmanız, uygun hizmet endpoint'ine bağlanmanız ve kuruluş kimlik bilgilerinizle kimlik doğrulaması yapmanız gerekir.

Başlamadan önce

Devam etmeden önce küme yöneticinizle aşağıdakileri doğrulayın:

  • Bir Bob on-premises dağıtımı kurulmuş ve çalışıyor olmalıdır. Bob custom resource'unun (CR) Ready durumunu bildirmesi gerekir.
  • Bob API endpoint URL'sine https://api.<cluster-domain> biçiminde sahip olmanız gerekir. Yöneticiniz bu bilgiyi kurulumdan sonra oc get route komutunu çalıştırarak alabilir.
  • Dağıtım kendinden imzalı (self-signed) veya dahili bir sertifika yetkilisi (CA) kullanıyorsa, CA sertifika dosyasını almış olmanız gerekir (örneğin bob-ca.crt veya bob-ca.pem).
  • Sizin için bir kullanıcı hesabı mevcut olmalıdır. Yöneticiniz LDAP veya Active Directory federasyonunu yapılandırmış ya da doğrudan bir Keycloak kullanıcı hesabı oluşturmuş olmalıdır. Bkz. Kullanıcı yönetimi.
Not:

Herhangi bir ön gereksinim eksikse, devam etmeden önce küme yöneticinizle iletişime geçin.

CA sertifikasına güvenme

Bob dağıtımı kendinden imzalı veya dahili olarak yönetilen bir sertifika yetkilisi kullanıyorsa, iş istasyonunuzun Bob hizmetlerine güvenli HTTPS bağlantıları kurabilmesi için CA sertifikasına güvenmesi gerekir.

Not:

Dağıtım, iş istasyonunuz tarafından zaten güvenilen herkese açık veya kurumsal bir CA kullanıyorsa bu bölümü atlayın.

Sertifikayı doğrulayın:

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

Çıktı, subject ve issuer alanlarını gösterir. Kendinden imzalı bir CA için bu değerler eşittir. notAfter tarihinin gelecekte olduğunu doğrulayın.

Sertifikayı aşağıdaki seçeneklerden birini kullanarak içe aktarın:

Seçenek 1: Keychain Access

  1. bob-ca.crt dosyasını Finder'da bulun.
  2. Dosyaya çift tıklayın. macOS bir Add Certificates sayfası açar.
  3. Anahtarlık açılır listesinde System seçin ve Add düğmesine tıklayın. İstendiğinde parolanızı girin.
  4. Keychain Access'i açın, kenar çubuğundan System seçin ve Certificates'e tıklayın.
  5. İçe aktarılan sertifikayı bulun ve özelliklerini açın.
  6. Trust bölümünü genişletin ve When using this certificate ayarını Always Trust olarak belirleyin.
  7. Değişiklikleri kaydedin.

İçe aktardıktan sonra bob-ideyi kapatın ve yeniden başlatın.

Not:

macOS Sequoia'da sertifika dosyasına çift tıklamanın hiçbir etkisi olmuyorsa, dosyayı yeniden adlandırarak .crt uzantısına sahip olduğundan emin olun ve tekrar deneyin.

Seçenek 2: Komut satırı

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

Sertifika içe aktarma işlemini doğrulayın:

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

Sertifikayı içe aktardıktan sonra bob-ideyi kapatın ve yeniden başlatın.

Not:

bob-ide yeniden başlatıldıktan sonra hâlâ UNABLE_TO_VERIFY_LEAF_SIGNATURE hatası gösteriyorsa, bob-ide ayarlar dosyanızda deneysel sistem sertifikası ayarını etkinleştirin:

{
  "http.experimental.systemCertificatesV2": true
}

bob-shell hâlâ sertifikaya güvenmiyorsa Node.js'i CA sertifikasını kullanacak şekilde yapılandırın:

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

Ayarın kalıcı olması için değişkeni shell profilinize ekleyin.

CA sertifikasını sistem güven deposuna aktarın:

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

Sertifikayı certmgr.msc kullanarak Güvenilen Kök Sertifika Yetkilileri deposuna aktarın ya da şunu çalıştırın:

certutil -addstore "Root" bob-ca.crt

İstemci endpoint'ini yapılandırma

İş istasyonunuz dağıtım sertifikasına güvendikten sonra istemcinizi, küme yöneticiniz tarafından sağlanan Bob API endpoint'iyle iletişim kuracak şekilde yapılandırın.

bob-ide

API gateway endpoint'ini ayarlar dosyanızda yapılandırın:

  1. Settings'i açın.
  2. Open settings file seçeneğine tıklayın.
  3. Gateway URL'sini belirtin:
{
  "gatewayUrl": "https://api.<cluster-domain>"
}
  1. Dosyayı kaydedin.

bob-shell

bob-shellin Bob dağıtımına bağlanmak için kullandığı endpoint'i yapılandırın.

Ortam değişkenleri (önerilir)

Oturumlar arasında kalıcı olmaları için aşağıdaki değişkenleri shell profilinize ekleyin (örneğin ~/.bashrc veya ~/.zshrc):

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

Komut satırı seçenekleri

bob \
  --gateway-url https://api.<cluster-domain> \
  --web-login-url https://<login-domain>
Not:
  • BOB_WEB_LOGIN_URL ve --web-login-url yalnızca SSO kimlik doğrulaması kullanılırken ve oturum açma URL'si gateway URL'sinden otomatik olarak türetilemedığında gereklidir.
  • API key kimlik doğrulaması için yalnızca BOB_GATEWAY_URL gereklidir.
  • gatewayUrl settings.json dosyasında yapılandırılmışsa hem bob-ide hem de bob-shell bu değeri kullanır.

Oturum açma

Endpoint'i yapılandırdıktan sonra, atanan kimlik bilgilerinizle Bob dağıtımında kimlik doğrulaması yapın.

  • bob-ide için Sign In düğmesine tıklayın.
  • bob-shell için bob komutunu çalıştırın.

Kuruluş kimlik bilgilerinizle oturum açtığınız kuruluşunuzun kimlik doğrulama sağlayıcısına (örneğin Keycloak) yönlendirilirsiniz.

Kimlik doğrulaması başarıyla tamamlandıktan sonra kod oluşturma, analiz, yeniden düzenleme (refactoring) ve desteklenen diğer geliştirme iş akışları için IBM Bob on-premises dağıtımına erişmek üzere bob-ide veya bob-shell kullanabilirsiniz.

Bu konu nasıl?