Az API Management-szolgáltatáskonfiguráció mentése és konfigurálása a Git használatával
A KÖVETKEZŐKRE VONATKOZIK: Fejlesztő | Alapszintű | Standard | Prémium
Minden API Management-szolgáltatáspéldány fenntart egy konfigurációs adatbázist, amely információkat tartalmaz a szolgáltatáspéldány konfigurációjáról és metaadatairól. A szolgáltatáspéldányt egy beállítás módosításával módosíthatja. A módosítás végrehajthatja az Azure Portalon, vagy olyan Azure-eszközökkel, mint az Azure PowerShell vagy az Azure CLI, illetve REST API-hívással. E módszereken kívül a szolgáltatáspéldány konfigurációját a Git használatával is kezelheti, ami az alábbi forgatókönyveket teszi lehetővé:
- Konfiguráció verziószámozása – A szolgáltatáskonfiguráció különböző verzióinak letöltése és tárolása
- Tömeges konfigurációmódosítások – Módosítsa a szolgáltatáskonfiguráció több részét a helyi adattárban, és integrálja a módosításokat a kiszolgálóra egyetlen művelettel
- Ismerős Git-eszközlánc és munkafolyamat – A Már ismert Git-eszközök és munkafolyamatok használata
Az alábbi ábra az API Management szolgáltatáspéldány konfigurálásának különböző módjait mutatja be.
Amikor az Azure Portal, az Azure-eszközök, például az Azure PowerShell vagy az Azure CLI vagy a REST API használatával módosítja a szolgáltatást, a végpont használatával kezeli a https://{name}.management.azure-api.net
szolgáltatáskonfigurációs adatbázist, ahogyan az a diagram jobb oldalán látható. A diagram bal oldala bemutatja, hogyan kezelheti a szolgáltatáskonfigurációt a Git és a Git adattár használatával a következő helyen https://{name}.scm.azure-api.net
található szolgáltatáshoz: .
Az alábbi lépések áttekintést nyújtanak az API Management szolgáltatáspéldány Git használatával történő kezeléséről.
- Git-konfiguráció elérése a szolgáltatásban
- A szolgáltatáskonfigurációs adatbázis mentése a Git-adattárba
- A Git-adattár klónozása a helyi gépre
- Húzza le a legújabb adattárat a helyi gépre, és véglegesítse és küldje vissza a módosításokat az adattárba
- A módosítások üzembe helyezése az adattárból a szolgáltatáskonfigurációs adatbázisba
Ez a cikk bemutatja, hogyan engedélyezheti és használhatja a Gitet a szolgáltatáskonfiguráció kezeléséhez, és referenciát nyújt a Git-adattár fájljaihoz és mappáihoz.
Fontos
Ezt a funkciót úgy tervezték, hogy kis és közepes API-kezelési szolgáltatás-konfigurációkkal működjön, például olyanokkal, amelyek exportált mérete 10 MB-nál kisebb, vagy amelyek kevesebb mint 10 000 entitást tartalmaznak. A nagy számú entitást (termékeket, API-kat, műveleteket, sémákat stb.) tartalmazó szolgáltatások váratlan hibákat tapasztalhatnak a Git-parancsok feldolgozásakor. Ha ilyen hibákba ütközik, csökkentse a szolgáltatáskonfiguráció méretét, és próbálkozzon újra. Ha segítségre van szüksége, forduljon az Azure ügyfélszolgálatához.
Git-konfiguráció elérése a szolgáltatásban
Lépjen az API Management-példányra az Azure Portalon.
A bal oldali menü Üzembe helyezés és infrastruktúra területén válassza az Adattár lehetőséget.
A szolgáltatáskonfiguráció mentése a Git-adattárba
Figyelemfelhívás
Az elnevezett értékekként nem definiált titkos kulcsok az adattárban lesznek tárolva, és az előzményekben maradnak. Az elnevezett értékek biztonságos helyet biztosítanak az állandó sztringértékek, köztük a titkos kódok kezeléséhez minden API-konfigurációban és szabályzatban, így nem kell közvetlenül a szabályzatutasításokban tárolnia őket. További információ: Névvel ellátott értékek használata az Azure API Management-szabályzatokban.
Az adattár klónozása előtt mentse a szolgáltatáskonfiguráció aktuális állapotát az adattárba.
Az Adattár lapon válassza a Mentés az adattárba lehetőséget.
Végezze el a kívánt módosításokat a megerősítést kérő képernyőn, például a konfiguráció mentéséhez használt ág nevét, és válassza a Mentés lehetőséget.
Néhány pillanat múlva a rendszer menti a konfigurációt, és megjelenik az adattár konfigurációs állapota, beleértve az utolsó konfigurációmódosítás dátumát és időpontját, valamint a szolgáltatáskonfiguráció és az adattár közötti utolsó szinkronizálást.
Miután mentette a konfigurációt az adattárba, klónozható.
A szolgáltatáskonfiguráció REST API-val történő mentéséről további információt a Bérlő konfigurációja – Mentés című témakörben talál.
Hozzáférési hitelesítő adatok lekérése
Az adattár klónozásához az adattár URL-címe mellett felhasználónévre és jelszóra is szükség van.
Az Adattár lapon válassza az Access hitelesítő adatait a lap tetején.
Jegyezze fel az Access hitelesítő adatai lapon megadott felhasználónevet .
Jelszó létrehozásához először győződjön meg arról, hogy a lejárat a kívánt lejárati dátumra és időpontra van állítva, majd válassza a Létrehozás lehetőséget.
Fontos
Jegyezze fel ezt a jelszót. A lap elhagyása után a jelszó nem jelenik meg újra.
A tárház klónozása a helyi számítógépen
Az alábbi példák a Windows Git Git Bash eszközét használják, de bármilyen, ön által ismert Git-eszközt használhat.
Nyissa meg a Git-eszközt a kívánt mappában, és futtassa a következő parancsot a Git-adattár helyi gépre való klónozásához az alábbi paranccsal:
git clone https://{name}.scm.azure-api.net/
Adja meg a felhasználónevet és a jelszót, amikor a rendszer kéri.
Ha hibaüzenetet kap, módosítsa a git clone
parancsot úgy, hogy tartalmazza a felhasználónevet és a jelszót, ahogyan az az alábbi példában látható.
git clone https://username:password@{name}.scm.azure-api.net/
Ha ez hibát jelez, próbálkozzon a parancs jelszórészének URL-kódolásával. Ennek egyik gyors módja, ha megnyitja a Visual Studiót, és kiadja a következő parancsot az Azonnali ablakban. Az Azonnali ablak megnyitásához nyisson meg egy megoldást vagy projektet a Visual Studióban (vagy hozzon létre egy új üres konzolalkalmazást), és válassza a Windows, Azonnali lehetőséget a Hibakeresés menüből.
?System.Net.WebUtility.UrlEncode("password from the Azure portal")
A git parancs létrehozásához használja a kódolt jelszót a felhasználónévvel és az adattár helyével együtt.
git clone https://username:url encoded password@{name}.scm.azure-api.net/
A klónozás befejezése után módosítsa a könyvtárat az adattárra az alábbihoz hasonló parancs futtatásával.
cd {name}.scm.azure-api.net/
Ha a konfigurációt az alapértelmezett ágtól (master
) eltérő ágba mentette, tekintse meg az ágat:
git checkout <branch_name>
Az adattár klónozása után megtekintheti és használhatja a helyi fájlrendszerben. További információ: A helyi Git-adattár fájl- és mappaszerkezeti hivatkozása.
A helyi adattár frissítése a legújabb szolgáltatáspéldány-konfigurációval
Ha módosítja az API Management szolgáltatáspéldányt az Azure Portalon vagy más Azure-eszközökkel, ezeket a módosításokat mentenie kell az adattárba, mielőtt frissítené a helyi adattárat a legújabb módosításokkal.
Ha az Azure Portalon szeretné menteni a módosításokat, válassza a Mentés az adattárba lehetőséget az API Management-példány Adattár lapján.
Ezután frissítse a helyi adattárat:
Győződjön meg arról, hogy a helyi adattár mappájában van. Ha most fejezte be a
git clone
parancsot, a könyvtárat az adattárra kell módosítania az alábbihoz hasonló parancs futtatásával.cd {name}.scm.azure-api.net/
A helyi adattár mappájában adja ki a következő parancsot.
git pull
Módosítások leküldése a helyi adattárból a kiszolgálói adattárba
Ha le szeretné küldeni a módosításokat a helyi adattárból a kiszolgálói adattárba, véglegesítenie kell a módosításokat, majd le kell küldenie őket a kiszolgálói adattárba. A módosítások véglegesítéséhez nyissa meg a Git-parancseszközt, váltson a helyi adattár könyvtárára, és adja ki a következő parancsokat.
git add --all
git commit -m "Description of your changes"
Az összes véglegesítés kiszolgálóra való leküldéséhez futtassa a következő parancsot.
git push
Szolgáltatáskonfiguráció-módosítások üzembe helyezése az API Management szolgáltatáspéldányon
Miután véglegesítette és leküldte a helyi módosításokat a kiszolgálói adattárba, üzembe helyezheti őket az API Management szolgáltatáspéldányban.
Lépjen az API Management-példányra az Azure Portalon.
A bal oldali menü Üzembe helyezés és infrastruktúra területén válassza az >Adattár üzembe helyezése az API Managementben lehetőséget.
Az Adattár üzembe helyezése konfigurációs lapon adja meg a kívánt konfigurációmódosításokat tartalmazó ág nevét, és opcionálisan válassza a Törölt termékek előfizetéseinek eltávolítása lehetőséget. Válassza a Mentés lehetőséget.
A művelet REST API-val történő végrehajtásával kapcsolatos információkért lásd : Bérlőkonfiguráció – Üzembe helyezés.
A helyi Git-adattár fájl- és mappastruktúra-hivatkozása
A helyi Git-adattár fájljai és mappái tartalmazzák a szolgáltatáspéldány konfigurációs adatait.
Elem | Leírás |
---|---|
gyökér api-felügyeleti mappa | A szolgáltatáspéldány legfelső szintű konfigurációját tartalmazza |
apiReleases mappa | A szolgáltatáspéldány API-kiadásainak konfigurációját tartalmazza |
apis mappa | A szolgáltatáspéldány API-k konfigurációját tartalmazza |
apiVersionSets mappa | A szolgáltatáspéldány API-verziókészleteinek konfigurációját tartalmazza |
háttérmappák | A szolgáltatáspéldány háttérerőforrásainak konfigurációját tartalmazza |
csoportok mappa | A szolgáltatáspéldányban lévő csoportok konfigurációját tartalmazza |
szabályzatok mappa | A szolgáltatáspéldány házirendjei |
portalStyles mappa | A szolgáltatáspéldány fejlesztői portáljának testreszabásához szükséges konfigurációt tartalmazza |
portalTemplates mappa | A szolgáltatáspéldány fejlesztői portálsablonjainak konfigurációját tartalmazza |
termékek mappa | A szolgáltatáspéldányban lévő termékek konfigurációját tartalmazza |
templates folder | A szolgáltatáspéldány e-mail-sablonjainak konfigurációját tartalmazza |
Minden mappa tartalmazhat egy vagy több fájlt, és bizonyos esetekben egy vagy több mappát, például egy mappát az egyes API-khoz, termékekhez vagy csoportokhoz. Az egyes mappákban lévő fájlok a mappanév által leírt entitástípusra vonatkoznak.
Fájltípus | Cél |
---|---|
json | Konfigurációs információk a megfelelő entitásról |
html | Az entitás leírásai, amelyek gyakran megjelennek a fejlesztői portálon |
xml | Házirend-utasítások |
Css | Stíluslapok a fejlesztői portál testreszabásához |
Ezek a fájlok létrehozhatók, törölhetők, szerkeszthetők és kezelhetők a helyi fájlrendszerben, valamint az API Management szolgáltatáspéldányra telepített módosítások.
Feljegyzés
Az alábbi entitások nem találhatók a Git-adattárban, és nem konfigurálhatók a Git használatával.
- Felhasználók
- Előfizetések
- Névvel ellátott értékek
- A fejlesztői portál entitásai a stílusok és sablonok kivételével
- Szabályzattöredékek
Gyökér api-felügyeleti mappa
A gyökérmappa api-management
egy configuration.json
olyan fájlt tartalmaz, amely a szolgáltatáspéldányra vonatkozó legfelső szintű információkat tartalmazza az alábbi formátumban.
{
"settings": {
"RegistrationEnabled": "True",
"UserRegistrationTerms": null,
"UserRegistrationTermsEnabled": "False",
"UserRegistrationTermsConsentRequired": "False",
"DelegationEnabled": "False",
"DelegationUrl": "",
"DelegatedSubscriptionEnabled": "False",
"DelegationValidationKey": "",
"RequireUserSigninEnabled": "false"
},
"$ref-policy": "api-management/policies/global.xml"
}
Az első négy beállítás (RegistrationEnabled
, és UserRegistrationTermsEnabled
UserRegistrationTerms
UserRegistrationTermsConsentRequired
) az alábbi beállításokra van megfeleltetve a Fejlesztői portál szakasz Identitások lapján.
Identitásbeállítás | Térképek |
---|---|
RegistrationEnabled | Felhasználónév- és jelszó-identitásszolgáltató jelenléte |
UserRegistrationTerms | Használati feltételek a felhasználói regisztrációs szövegmezőben |
UserRegistrationTermsEnabled | Használati feltételek megjelenítése a regisztrációs oldalon jelölőnégyzet |
UserRegistrationTermsConsentRequired | Jóváhagyás megkövetelése jelölőnégyzet |
RequireUserSigninEnabled | Névtelen felhasználók átirányítása bejelentkezési lapra jelölőnégyzet |
A következő négy beállítás (DelegationEnabled
, és DelegatedSubscriptionEnabled
DelegationUrl
DelegationValidationKey
) a Következő beállításokra lesz megfeleltetve a Fejlesztői portál szakasz Delegálás lapján.
Delegálási beállítás | Térképek |
---|---|
DelegationEnabled | Bejelentkezés delegálása > jelölőnégyzet |
Delegálásurl | Delegálási végpont URL-címe szövegmezője |
DelegatedSubscriptionEnabled | Termék-előfizetés delegálása jelölőnégyzet |
DelegationValidationKey | Delegált érvényesítési kulcs szövegmezője |
A végső beállítás $ref-policy
a szolgáltatáspéldány globális szabályzatutasítási fájljához lesz leképezve.
apiReleases mappa
A apiReleases
mappa egy mappát tartalmaz az éles API-hoz üzembe helyezett egyes API-kiadásokhoz, és az alábbi elemeket tartalmazza.
apiReleases\<api release Id>\configuration.json
- A kiadás konfigurációja, amely a kiadási dátumokkal kapcsolatos információkat tartalmazza. Ugyanezek az információk lesznek visszaadva, ha egy adott kiadási műveletet hívna meg.
apis mappa
A apis
mappa a szolgáltatáspéldány minden API-ja számára tartalmaz egy mappát, amely a következő elemeket tartalmazza.
apis\<api name>\configuration.json
- Az API konfigurációja, amely a háttérszolgáltatás URL-címével és a műveletekkel kapcsolatos információkat tartalmazza. Ugyanezek az információk lesznek visszaadva, ha egy adott API-műveletet hívna meg.apis\<api name>\api.description.html
- Az API leírása, amely adescription
REST API-ban található API-entitás tulajdonságának felel meg.apis\<api name>\operations\
- Olyan fájlokat tartalmazó<operation name>.description.html
mappa, amely megfelel az API műveleteinek. Minden fájl egyetlen művelet leírását tartalmazza az API-ban, amely leképezi adescription
REST API műveleti entitásának tulajdonságát.
apiVersionSets mappa
A apiVersionSets
mappa tartalmaz egy mappát az API-hoz létrehozott minden API-verziókészlethez, és az alábbi elemeket tartalmazza.
apiVersionSets\<api version set Id>\configuration.json
- A verziókészlet konfigurációja. Ugyanezek az információk lesznek visszaadva, ha egy adott verziókészlet lekérése műveletet hívna meg .
csoportok mappa
A groups
mappa tartalmaz egy mappát a szolgáltatáspéldányban definiált összes csoporthoz.
groups\<group name>\configuration.json
- A csoport konfigurációja. Ugyanezek az információk lesznek visszaadva, ha egy adott csoport lekérése műveletet hívna meg.groups\<group name>\description.html
- A csoport leírása, amely adescription
csoport entitás tulajdonságának felel meg.
szabályzatok mappa
A policies
mappa tartalmazza a szolgáltatáspéldányra vonatkozó házirend-utasításokat.
policies\global.xml
– A szolgáltatáspéldány globális hatókörében definiált szabályzatok.policies\apis\<api name>\
- Ha az API-hatókörben definiált szabályzatok vannak meghatározva, azokat ebben a mappában találja.policies\apis\<api name>\<operation name>\
mappa – Ha a művelet hatókörében vannak definiálva szabályzatok, azokat ebben a mappában<operation name>.xml
az egyes műveletek házirend-utasításainak megfeleltető fájlok tartalmazzák.policies\products\
– Ha a szabályzatok a termék hatókörében vannak definiálva, azokat ebben a mappában találja, amely az egyes termékek házirend-utasításainak megfeleltethető fájlokat tartalmazza<product name>.xml
.
portalStyles mappa
A portalStyles
mappa konfigurációs és stíluslapokat tartalmaz a szolgáltatáspéldány elavult fejlesztői portáljának testreszabásához.
portalStyles\configuration.json
– A fejlesztői portál által használt stíluslapok nevét tartalmazzaportalStyles\<style name>.css
- Minden<style name>.css
fájl stílusokat tartalmaz a fejlesztői portálhoz (Preview.css
ésProduction.css
alapértelmezés szerint).
portalTemplates mappa
A portalTemplates
mappa sablonokat tartalmaz a szolgáltatáspéldány elavult fejlesztői portáljának testreszabásához.
portalTemplates\<template name>\configuration.json
- A sablon konfigurálása.portalTemplates\<template name>\<page name>.html
- A sablon eredeti és módosított HTML-oldalai.
termékek mappa
A products
mappa egy mappát tartalmaz a szolgáltatáspéldányban definiált összes termékhez.
products\<product name>\configuration.json
- A termék konfigurációja. Ugyanezek az információk lesznek visszaadva, ha egy adott termék lekérése műveletet hívna meg.products\<product name>\product.description.html
- A termék leírása, amely adescription
REST API-ban található termékentitás tulajdonságának felel meg.
templates
A templates
mappa a szolgáltatáspéldány e-mail-sablonjainak konfigurációját tartalmazza.
<template name>\configuration.json
– Az e-mail-sablon konfigurálása.<template name>\body.html
- Az e-mail-sablon törzse.
Következő lépések
További információ a szolgáltatáspéldány kezelésének egyéb módjairól: