Edge for Private Cloud 4.19.01 sürümü
Edge API ile SAML kullanırken OAuth2 erişimi edinmek ve OAuth2 erişimini edinmek ve SAML onayındaki yenileme jetonlarına şifre kodu akışı adı verilir. Şifre kodu akışında OAuth2 jetonları almak için kullanacağınız tek seferlik bir şifre kodu almak için tarayıcı kullanın.
Ancak, geliştirme ortamınız yaygın geliştirme görevleri için otomasyonu destekleyebilir, Örneğin test otomasyonu veya Sürekli Entegrasyon/Sürekli Dağıtım (CI/CD) gibi. Otomatikleştirmek için SAML etkinleştirildiğinde OAuth2 jetonlarını edinmenin ve yenilemenin bir yolunu bulmanız gerekir. veya tarayıcıdan şifre kodu kopyalayıp yapıştırmanız gerekmiyor.
Edge, SAML'de makine kullanıcıları aracılığıyla otomatik jeton oluşturmayı destekler kuruluşlar. Makine kullanıcısı OAuth2 jetonlarını almak için bir şifre kodu belirtmeniz gerekmez. Bu sayede kendinizi tamamen otomatik hale Edge management API'yi kullanarak OAuth2 jetonları alma ve yenileme işlemidir.
SAML kuruluşu için makine kullanıcısı oluşturmanın iki yolu vardır:
Bu yöntemlerin her biri sonraki bölümlerde açıklanmıştır.
SAML olmayan bir kuruluş için makine kullanıcısı oluşturamazsınız.
apigee-ssoadminapi.sh
ile makine kullanıcısı oluşturun
apigee-ssoadminapi.sh
kullanın
yardımcı program. Bkz.
Apigee-ssoadminapi.sh kodunu inceleyebilirsiniz. Tüm kullanıcılar tarafından kullanılan tek bir makine kullanıcısı
kuruluşlarınızı kullanabilir veya her kuruluş için ayrı makine kullanıcıları oluşturabilirsiniz.
Makine kullanıcısı SAML kimliğinizde değil, Edge veri deposunda oluşturulur ve depolanır sağlar. Bu nedenle, Edge'i kullanarak makine kullanıcılarının bakımını yapmaktan sorumlu Kullanıcı arayüzü ve Edge management API'si.
Makine kullanıcısını oluşturduğunuzda bir e-posta adresi ve şifre belirtmeniz gerekir. Şu tarihten sonra: makine kullanıcısını oluşturduktan sonra bir veya daha fazla kuruluşa atarsınız.
apigee-ssoadminapi.sh
ile makine kullanıcısı oluşturmak için:
- Makine kullanıcısını oluşturmak için aşağıdaki
apigee-ssoadminapi.sh
komutunu kullanın:apigee-ssoadminapi.sh saml machineuser add --admin SSO_ADMIN_NAME \ --secret SSO_ADMIN_SECRET --host Edge_SSO_IP_or_DNS \ -u machine_user_email -p machine_user_password
Burada:
- SSO_ADMIN_NAME,
Şu konumda
SSO_ADMIN_NAME
mülk: Edge TOA modülünü yapılandırmak için kullanılan yapılandırma dosyası. Varsayılan değerssoadmin
- SSO_ADMIN_SECRET,
SSO_ADMIN_SECRET
özelliği ekleyin.
Bu örnekte,
--port
veapigee-sso
modülü varsayılan değeri kullandığı için--ssl
--port
için 9099 ve--ssl
için http değerlerine karşılık gelir. Eğer yüklemede bu varsayılan ayarlar kullanılmıyorsa uygun şekilde belirtin. - SSO_ADMIN_NAME,
Şu konumda
- Edge kullanıcı arayüzüne giriş yapın, makine kullanıcısının e-postasını kuruluşunuza ekleyin ve gereken role atanabilir. Aşağıdakiler için Genel kullanıcı ekleme başlıklı makaleye bakın: daha fazla.
Edge ile makine kullanıcısı oluşturma management API'si
Ayrıca,
apigee-ssoadminapi.sh
yardımcı programı.
Management API ile makine kullanıcısı oluşturmak için:
ssoadmin
kullanıcısı için jeton almak üzere aşağıdakicurl
komutunu kullanın:apigee-sso
için yönetici hesabının kullanıcı adı:curl "http://Edge_SSO_IP_DNS:9099/oauth/token" -i -X POST \ -H 'Accept: application/json' / -H 'Content-Type: application/x-www-form-urlencoded' \ -d "response_type=token" -d "grant_type=client_credentials" \ --data-urlencode "client_secret=SSO_ADMIN_SECRET" \ --data-urlencode "client_id=ssoadmin"
SSO_ADMIN_SECRET nerede, yüklerken ayarladığınız yönetici şifresidir?
SSO_ADMIN_SECRET
özelliği tarafından belirtildiği şekliyleapigee-sso
yapılandırma dosyası.Bu komut, bir sonraki çağrıyı yapmanız için gereken jetonu gösterir.
- Girdiğiniz jetonu ileterek makine kullanıcısını oluşturmak için aşağıdaki
curl
komutunu kullanın son adımda:curl "http://edge_sso_IP_DNS:9099/Users" -i -X POST \ -H "Accept: application/json" -H "Content-Type: application/json" \ -d '{"userName" : "machine_user_email", "name" : {"formatted":"DevOps", "familyName" : "last_name", "givenName" : "first_name"}, "emails" : [ {"value" : "machine_user_email", "primary" : true } ], "active" : true, "verified" : true, "password" : "machine_user_password" }' \ -H "Authorization: Bearer token"
Sonraki adımlarda makine kullanıcısı şifresine ihtiyacınız olacaktır.
- Edge kullanıcı arayüzüne giriş yapın.
- Makine kullanıcısının e-postasını kuruluşunuza ekleyin ve makine kullanıcısını çok önemlidir. Bkz. Ekleme global kullanıcıları arayın.
Makine kullanıcı jetonları alın ve yenileyin
Makine kullanıcısının kimlik bilgileri girmeniz gerekir.
Makine kullanıcısı için OAuth2 jetonları almak üzere:
- İlk erişim ve yenileme jetonlarını oluşturmak için aşağıdaki API çağrısını kullanın:
curl -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \ -H "accept: application/json;charset=utf-8" \ -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \ http://Edge_SSO_IP_DNS:9099/oauth/token -s \ -d 'grant_type=password&username=m_user_email&password=m_user_password'
Jetonları daha sonra kullanmak üzere kaydedin.
- Erişim jetonunu, Taşıyıcı başlığı olarak bir Edge management API çağrısına iletin:
curl -H "Authorization: Bearer access_token" \ http://MS_IP_DNS:8080/v1/organizations/org_name
Burada org_name, makine kullanıcısını içeren kuruluşun adıdır.
- Erişim jetonunu daha sonra yenilemek için yenilemeyi içeren aşağıdaki çağrıyı kullanın
jeton:
curl -H "Content-Type:application/x-www-form-urlencoded;charset=utf-8" \ -H "Accept: application/json;charset=utf-8" \ -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \ http://edge_sso_IP_DNS:9099/oauth/token \ -d 'grant_type=refresh_token&refresh_token=refreshToken'
.