Onaylı bir sistem herkese açık API üzerinden VaultPilot verisini yalnızca okuyacaksa bir entegrasyon API istemcisi oluşturun. İstemciyi dar tutun: yalnızca sistemin ihtiyaç duyduğu kapsamları ve kasaları verin, sorumlusunu kaydedin, entegrasyon kullanımdan kalkınca istemciyi iptal edin.
API uç noktaları
Uç noktaların, kimlik bilgisi biçiminin, önbelleğin ve durum kodlarının ayrıntıları Herkese açık API başvurusu sayfasındadır.
GET /api/public/v1/secrets, API istemcisine atanmış kasaların şifreli anlık görüntüsünü döndürür. Yanıtta kasa meta verisi, şifreli kasa adları, sır kimlikleri, sır türleri, şifreli içerikler, zaman damgaları ve ENCRYPTED_SNAPSHOT kipi bulunur. Düz metin parola ya da şifresi çözülmüş kasa verisi döndürülmez.
GET /api/public/v1/secrets/{secretId}, aynı izinli anlık görüntüden tek bir şifreli sır döndürür. Kimliğin biçimi hatalıysa, kayıt yoksa ya da silinmişse VaultPilot bilerek 403 Integration authorization failed. döndürür; kayıt istemcinin izinli kasalarının dışındaysa da yanıt aynıdır. Böylece yetkisiz bir istemci gizli bir kaydı hatalı bir kimlikten ayırt edemez.
Aynı istemci türü, işletim durumunu yalnızca okuyan uç noktaları da kullanabilir. Bu uç noktalar kasa verisinin şifresini çözmez. İstemcide SECRETS_READ yoksa kasa ataması da gerekmez.
| Kapsam | Uç nokta | Dönen bilgi |
|---|---|---|
SECRETS_READ | GET /api/public/v1/secrets ve GET /api/public/v1/secrets/{secretId} | Atanmış kasaların şifreli kasa ve sır anlık görüntüleri. |
SERVER_STATUS_READ | GET /api/public/v1/server/status | Uygulama sürümü, çalışma süresi, kasa sayısı, etkin API istemcisi sayısı ve dizin sağlayıcı sayısı. |
DIRECTORY_STATUS_READ | GET /api/public/v1/directory/status | Dizin sağlayıcılarının sağlığı, nesne sayıları, seçili giriş ve kimlik bilgisi sayıları, son görülme ve eşitleme zamanları. |
UPDATE_STATUS_READ | GET /api/public/v1/updates/status | Konsolda gösterilen biçimde Güncelleme Merkezi durumu; yalnızca izleme için okunur. |
İstemci oluşturma
- Sahip (Owner) olarak giriş yapın.
- Entegrasyonlar ekranını ya da API istemcisi bölümünü açın.
- Yalnızca kullanacak sistemin ihtiyaç duyduğu uç nokta kapsamlarını seçin.
SECRETS_READseçtiyseniz olabildiğince az kasa atayın. Yalnızca durum izleyen istemcilere kasa atamanız gerekmez.- İstemciyi anlaşılır bir adla oluşturun.
- İstemci sırrını bir kez kopyalayın ve kullanacak sistemin onaylı sır deposuna koyun.
- Sorumluyu, amacı, izinli kasaları, kapsamları ve inceleme tarihini kaydedin.
Sunucu, istemci sırrının yalnızca özetini saklar. Sırrı kaybederseniz yeni bir istemci oluşturun ve eskisini iptal edin.
Kimlik doğrulama
VaultPilot HTTP Basic kimlik doğrulamasını ve eski uyumluluk üst bilgilerini kabul eder. Yeni entegrasyonlarda Basic kullanın.
Authorization: Basic ${BASE64_CLIENT_CREDENTIALS}
Eski istemciler için uyumluluk üst bilgileri hâlâ çalışır:
x-passman-client-id: <CLIENT_ID>
x-passman-client-secret: <CLIENT_SECRET>
Bu üst bilgilerin hiçbirini günlüğe yazmayın. Gerçek istemci kimliklerini ya da sırlarını ekran görüntülerine, dokümanlara veya destek yazışmalarına yapıştırmayın.
Örnek istek
$pair = "<CLIENT_ID>:<CLIENT_SECRET>"
$basic = [Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes($pair))
Invoke-RestMethod -Headers @{ Authorization = "Basic $basic" } -Uri "https://<SERVER_HOST>:1734/api/public/v1/secrets"
Yalnızca durum okuyan örnek:
$pair = "<CLIENT_ID>:<CLIENT_SECRET>"
$basic = [Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes($pair))
Invoke-RestMethod -Headers @{ Authorization = "Basic $basic" } -Uri "https://<SERVER_HOST>:1734/api/public/v1/server/status"
Paylaşılan örneklerde yer tutucu kullanın; gerçek değerler yalnızca istemciyi kullanan sistemin onaylı sır deposunda durur. Gerçek $pair ya da $basic değeri içeren komutları yalnızca özel bir yönetici kabuğunda çalıştırın.
Beklenen hatalar
| Belirti | Anlamı | Yapılacak iş |
|---|---|---|
| 401 ya da kimlik doğrulama hatası | İstemci kimliği ya da sırrı eksik, biçimi hatalı, yanlış ya da iptal edilmiş. | Yeni bir istemci oluşturarak sırrı yenileyin, kullanan sistemi güncelleyin, sonra eski istemciyi iptal edin. |
| Kapsam reddedildi | İstemcide uç noktanın istediği kapsam yok. | Gereken kapsamı ekleyin ya da en az yetkiyle yeni bir istemci oluşturun. |
| Kasa listesi boş | İstemciye sır anlık görüntüsü için kasa atanmamış. Bu yalnızca SECRETS_READ için önemlidir. | Yalnızca entegrasyonun ihtiyaç duyduğu kasaları atayın. Yalnızca durum izleyen istemcilerde SECRETS_READ kapsamını kaldırın. |
| Gizli ya da geçersiz sır kimliği | Sır kimliğinin biçimi hatalı, kayıt silinmiş ya da istemcinin izinli kasalarının dışında. VaultPilot 403 Integration authorization failed. döndürür. | Sır kimliğini izinli bir şifreli anlık görüntüden alın. Ardından istemcide SECRETS_READ kapsamının ve ilgili kasa atamasının olduğunu denetleyin. |