Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A KÖVETKEZŐKRE VONATKOZIK: Fejlesztő | Alapcsomag | Alapcsomag v2 | Standard | Standard v2 | Prémium | Prémium v2
Ez az oktatóanyag az API Management fejlesztői portáljának önkiszolgáló üzemeltetését ismerteti. Az önkiszolgáló üzemeltetés a fejlesztői portál funkcióinak bővítésére vonatkozó számos lehetőség egyike. Az API Management-példányhoz például több portált is üzemeltethet, különböző funkciókkal. Amikor önkiszolgáló portált üzemeltet, ön lesz a fenntartója, és ön felel a frissítéséért. A fejlesztői portálhoz az API Management REST API szükséges a tartalom kezeléséhez.
Fontos
Fontolja meg a fejlesztői portál önkiszolgáló üzemeltetését, ha módosítania kell a fejlesztői portál kódbázisának magját. Ez a beállítás speciális konfigurációt igényel, beleértve a következőket:
- Üzembe helyezés egy üzemeltetési platformon, opcionálisan a nagyobb rendelkezésre állás és teljesítmény érdekében egy megoldás, például egy CDN (tartalomkézbesítési hálózat) alkalmazásával.
- Az üzemeltetési infrastruktúra karbantartása és kezelése.
- Manuális frissítések, beleértve a biztonsági javításokat is, amelyekhez szükség lehet a kódütközések feloldására a kódbázis frissítésekor.
Megjegyzés:
A saját üzemeltetésű portál nem támogatja a felügyelt fejlesztői portálon elérhető láthatósági és hozzáférési vezérlőket.
Ha már feltöltött vagy módosított médiafájlokat a felügyelt portálon, olvassa el a cikk későbbi, felügyeltről saját üzemeltetésűre történő áthelyezését ismertető cikket.
Előfeltételek
Helyi fejlesztési környezet beállításához a következőkre van szükség:
Egy API Management szolgáltatás példánya. Ha nincs ilyenje, olvassa el az Azure API Management-példány létrehozása című rövid útmutatót.
Ha a példányt egy v2-es szolgáltatási szinten hozta létre, először engedélyezze a fejlesztői portált.
- Az oldalsáv menüjében, a Fejlesztői portál területen válassza a Portál beállításai lehetőséget.
- A Portál beállításai ablakban válassza az Engedélyezve lehetőséget. Válassza az Mentésgombot. A fejlesztői portál engedélyezése eltarthat néhány percig.
Egy Azure Blob Storage-fiók, amellyel engedélyezheti a statikus webhelyek funkcióját. Lásd: Tárfiók létrehozása.
Git a gépen. Telepítse ezt a Git-oktatóanyagot követve.
Node.js (Long Term Support (LTS) verzió,
v10.15.0vagy újabb verzió) és npm a számítógépen. Lásd : Node.js és npm letöltése és telepítése.Azure parancssori felület (CLI). Kövesse az Azure CLI telepítési lépéseit.
Microsoft Entra-alkalmazásregisztráció létrehozásához szükséges engedélyek.
1. lépés: Helyi környezet beállítása
A helyi környezet beállításához klónozza az adattárat, váltson a fejlesztői portál legújabb kiadására, és telepítse az npm-csomagokat.
Klónozza az api-management-developer-portal adattárat a GitHubról:
git clone https://github.com/Azure/api-management-developer-portal.gitNyissa meg az adattár helyi példányát:
cd api-management-developer-portalTekintse meg a portál legújabb kiadását.
A következő kód futtatása előtt ellenőrizze az adattár Kiadások szakaszában található aktuális kiadási címkét, és cserélje le
<current-release-tag>az értéket a legújabb kiadási címkére.git checkout <current-release-tag>Telepítse az elérhető npm-csomagokat:
npm install
Jótanács
Mindig a legújabb portálkiadást használja, és tartsa az elágazott portált up-tonaprakészen. Az API Management fejlesztői csapata napi fejlesztési célokra használja az master adattár ágát. A szoftver instabil verzióival rendelkezik.
2. lépés: JSON-fájlok, statikus webhely és CORS-beállítások konfigurálása
config.design.json fájl
Nyissa meg a src mappát, és nyissa meg a config.design.json fájlt.
{
"environment": "development",
"subscriptionId": "< subscription ID >",
"resourceGroupName": "< resource group name >",
"serviceName": "< API Management service name >"
}
A subscriptionId, resourceGroupName és serviceName mezőkbe írja be az API Management-példány előfizetésének, erőforráscsoportjának és szolgáltatásnevének értékeit. I
Választható beállítások a config.design.json
Igény szerint konfigurálja a következő beállításokat a config.design.json fájlban:
Ha engedélyezni szeretné a CAPTCHA-t a fejlesztői portálon, állítsa be a következőt
"useHipCaptcha": true: Konfigurálja a CORS-beállításokat a fejlesztői portál háttérrendszeréhez.{ ... "useHipCaptcha": true ... }Az
integrationmenü alattgoogleFontsa Google API-kulcsot opcionálisan állítsa beapiKey, amely lehetővé teszi a Webes betűtípusok fejlesztői API-hoz való hozzáférést. Ez a kulcs csak akkor szükséges, ha Google-betűtípusokat szeretne hozzáadni a fejlesztői portál szerkesztőjének Stílusok szakaszához.{ ... "integration": { "googleFonts": { "apiKey": "< your Google API key >" } } ... }Ha még nem rendelkezik kulccsal, konfigurálhat egyet a Google Cloud-konzollal. Kövesse az alábbi lépéseket:
- Nyissa meg a Google Cloud-konzolt.
- Ellenőrizze, hogy engedélyezve van-e a Webes betűtípusok fejlesztői API . Ha az nincs engedélyezve, engedélyezze.
- Válassza a Hitelesítő adatok> létrehozásaAPI-kulcs lehetőséget.
- A megnyitott párbeszédpanelen másolja ki a létrehozott kulcsot, és illessze be a
apiKeyfájlban aconfig.design.jsonértékeként. - Válassza az API-kulcs szerkesztése lehetőséget a kulcsszerkesztő megnyitásához.
- A szerkesztőBEN az API-korlátozások alatt válassza a Kulcs korlátozása lehetőséget. A legördülő menüben válassza a Webes betűtípusok fejlesztői API-t.
- Válassza az Mentésgombot.
config.publish.json fájl
Nyissa meg a src mappát, és nyissa meg a config.publish.json fájlt.
{
"environment": "publishing",
"subscriptionId":"<service subscription>",
"resourceGroupName":"<service resource group>",
"serviceName":"<service name>"
}
Másolja és illessze be az subscriptionIdelőző konfigurációs fájlból származó , resourceGroupNameés serviceName értékeket.
config.runtime.json fájl
Nyissa meg a src mappát, és nyissa meg a config.runtime.json fájlt.
{
"environment": "runtime",
"backendUrl": "https://< service name >.developer.azure-api.net"
}
Cserélje ki a < service name >-t az előző konfigurációs fájlokban használt API Management példány nevére.
A statikus webhely konfigurálása
Konfigurálja a statikus webhely funkciót a tárfiókban az indexhez és a hibalapokhoz vezető útvonalak megadásával:
Az Azure Portalon nyissa meg a tárfiókját.
Az oldalsáv menüjében válassza az Adatkezelési>statikus webhely lehetőséget.
A Statikus webhely lapon válassza az Engedélyezve lehetőséget.
Az Index dokumentumnév mezőjébe írja be a index.html.
A Hiba dokumentum elérési útja mezőben adja meg a 404/index.htmlértéket.
Válassza az Mentésgombot.
Jegyezze fel az elsődleges végpont URL-címét. Később konfigurálja a saját üzemeltetésű portál eléréséhez.
A TÁRfiók CORS-beállításainak konfigurálása
A tárfiók forrásközi erőforrás-megosztási (CORS) beállításainak konfigurálása:
Az Azure Portalon menjen a tárfiókjához.
Az oldalsáv menü Beállítások területén válassza az Erőforrás-megosztás (CORS) lehetőséget.
A Blob szolgáltatás lapján konfigurálja a következő szabályokat:
Szabály Érték Engedélyezett források * Engedélyezett metódusok Jelölje ki az összes HTTP-parancsot. Engedélyezett fejlécek * Közzétett fejlécek * Maximális életkor 0 Válassza az Mentésgombot.
CORS-beállítások konfigurálása a fejlesztői portál háttérrendszeréhez
Konfigurálja a CORS-beállításokat a fejlesztői portál háttérrendszeréhez, hogy engedélyezze a saját üzemeltetésű fejlesztői portálon keresztül érkező kéréseket. A saját üzemeltetésű fejlesztői portál a fejlesztői portál háttérbeli végpontjára támaszkodik (amely a portálfájlban backendUrlconfig.runtime.json van beállítva) számos funkció engedélyezéséhez, például:
- CAPTCHA-ellenőrzés
- OAuth 2.0-engedélyezés a tesztkonzolon
- Felhasználói hitelesítés és termék-előfizetés delegálása
CORS-beállítások hozzáadása:
- Nyissa meg az API Management-példányt az Azure Portalon.
- Az oldalsáv menüjében válassza a Fejlesztői portál>beállításai lehetőséget.
- A saját üzemeltetésű portál konfigurációs lapján adjon hozzá egy vagy több Origin tartományértéket. Például:
- A tartomány, ahol a saját üzemeltetésű portált üzemeltetik, például
https://contoso.developer.azure-api.net -
localhosthelyi fejlesztéshez (ha van), példáulhttp://localhost:8080https://localhost:8080
- A tartomány, ahol a saját üzemeltetésű portált üzemeltetik, például
- Válassza az Mentésgombot.
3. lépés: A portál futtatása
Most már létrehozhat és futtathat egy helyi portálpéldányt fejlesztési módban. Fejlesztési módban az összes optimalizálás ki van kapcsolva, és a forrástérképek be vannak kapcsolva.
Futtassa a következő parancsot:
npm run startA rendszer a böngészőn keresztüli hitelesítést kéri. A folytatáshoz válassza ki a Microsoft hitelesítő adatait.
Egy idő után az alapértelmezett böngésző automatikusan megnyílik a helyi fejlesztői portál példányával. Az alapértelmezett cím,
http://localhost:8080de a port változhat, ha8080már foglalt. Amikor módosítja a projekt kódbázisát, az újraépítést indít el, és frissíti a böngészőablakot.
4. lépés: Szerkesztés a vizualizációszerkesztőn keresztül
A vizualizációszerkesztő használatával hajtsa végre a következő feladatokat:
- A portál testreszabása
- Szerzői tartalom
- A webhely struktúrájának rendszerezése
- Megjelenésének stilizálása
Lásd : Oktatóanyag: A fejlesztői portál elérése és testreszabása. Ismerteti a felügyeleti felhasználói felület alapjait, és felsorolja az alapértelmezett tartalom javasolt módosításait. Mentse az összes módosítást a helyi környezetben, és zárja be a Ctrl+C billentyűkombinációt .
5. lépés: A portál helyi közzététele
Futtassa a
npm run publishprogramot. A rendszer a böngészőn keresztüli hitelesítést kéri. A folytatáshoz válassza ki a Microsoft hitelesítő adatait.Egy idő után a tartalom közzé lesz téve a
dist/websitemappában.
6. lépés: Statikus fájlok feltöltése blobba
Az Azure CLI használatával töltse fel a helyileg létrehozott statikus fájlokat egy blobba, és győződjön meg arról, hogy a látogatók hozzáférhetnek hozzájuk:
Nyissa meg a Windows parancssorát, a PowerShellt vagy más parancshéjat.
Futtassa a következő
az storage blog upload-batchparancsot. Cserélje le<connection-string>a tárfiók kapcsolati sztringjével. A tárfiók Biztonsági és hálózati>hozzáférési kulcsok szakaszából szerezheti be.az storage blob upload-batch --source dist/website \ --account-name <your-storage-account-name> \ --destination '$web' \ --connection-string "<connection-string>"
7. lépés: Ugrás a webhelyre
A webhelye mostantól elérhető az Azure Storage tulajdonságaiban megadott gazdagépnév alatt. Az oldalsáv menüjében lépjen az Adatkezelési>statikus webhelyre. A hosztnév az elsődleges végpont értéke.
A webhelyszerkesztő üzemeltetése
A webhelykód módosításakor előfordulhat, hogy frissítenie kell a webhelyszerkesztő kódját, és megfelelően támogatnia kell a módosított widgetek szerkesztését. Ebben az esetben a portál üzemeltetése mellett a szerkesztőalkalmazást is érdemes üzemeltetni. Ehhez el kell készítenie és konfigurálnia kell, hogy hozzáférhessen az API Management szolgáltatáshoz.
Ehhez szüksége lesz egy Microsoft Entra-azonosító alkalmazásra a bérlőben:
- Regisztráljon egy alkalmazást a Microsoft Entra ID-bérlőben. Jegyezze fel az alkalmazás (ügyfél) azonosítóját és a címtár (bérlő) azonosítóját. Ezeket egy későbbi lépésben konfigurálhatja.
- Konfiguráljon egy webes átirányítási URI-t (válasz URL-címet) az alkalmazásban, hogy a tervezőt futtató webalkalmazás végpontjára mutasson. Ez általában a blobtároló-alapú webhely helye. Példa:
https://<your-storage-account-name>z13.web.core.windows.net/. - Ha a portált folyamatokban (GitHub Actions) szeretné közzétenni, hozzon létre egy ügyfélkulcsot is ehhez az alkalmazáshoz. Jegyezze fel a létrehozott titkos kulcsot, és tárolja biztonságos helyen.
Ezután kövesse az alábbi lépéseket a webhelyszerkesztő üzemeltetéséhez:
Adja hozzá a
clientIdéstenantIdmezőket aconfig.design.jsonfájlhoz.{ ... "clientId": "< Entra ID app ID >", "tenantId": "< Entra ID tenant ID >" ... }Futtassa a
npm run build-designerparancsot a tervező megépítéséhez.Nyissa meg a létrehozott
/dist/designermappát, amely a következő tartalommal rendelkező fájltconfig.jsontartalmazza:{ "subscriptionId": "< subscription ID >", "resourceGroupName": "< resource group name >", "serviceName": "< API Management service name >", "clientId": "< Entra ID client ID >", "tenantId": "< Entra ID tenant ID >" }Erősítse meg az Azure Resource Manager API-k használatával az API Management szolgáltatásához való csatlakozáshoz szükséges
subscriptionId,resourceGroupNameésserviceNamekonfigurációkat.
Portál közzététele csővezetékekben (GitHub Actions)
A saját üzemeltetésű portált közzéteheti egy folyamatban, például a GitHub Actionsben.
A csővezetékek használatával végzett közzététel végrehajtásához a folyamatnak Entra ID alkalmazás hitelesítő adataira is szüksége van. Használhatja ugyanazt az Entra-azonosító alkalmazást, amelyet az előző lépésekben leírt. A tenantId, clientIdés különösen clientSecret a megfelelő kulcstárolóban kell tartani. További részletekért lásd: Titkos kódok használata a GitHub Actionsben .
Példa a GitHub Actions-folyamat YAML-jára:
name: Portal-Publishing-Pipeline
on:
pull_request:
branches:
- master
jobs:
publish:
runs-on: ubuntu-latest
env:
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
steps:
- name: Checkout code
uses: actions/checkout@v5
- name: Set up Node.js
uses: actions/setup-node@v5
with:
node-version: '20.x'
- name: Install dependencies
run: npm install
- name: Run publish command
run: npm run publish
AZ API Management értesítési sablonjainak módosítása
Cserélje le a fejlesztői portál URL-címét az API Management értesítési sablonjaiban, hogy az a saját üzemeltetésű portálra mutatjon. Lásd : Értesítések és e-mail-sablonok konfigurálása az Azure API Managementben.
Végezze el különösen az alábbi módosításokat az alapértelmezett sablonokon:
Megjegyzés:
A következő frissített szakaszok értékei feltételezik, hogy a portált a következő helyen üzemelteti https://portal.contoso.com/: .
E-mail-módosítás megerősítése
Frissítse a fejlesztői portál URL-címét az e-mail-módosítást megerősítő értesítési sablonban:
Eredeti tartalom
<a id="confirmUrl" href="$ConfirmUrl" style="text-decoration:none">
<strong>$ConfirmUrl</strong></a>
frissített
<a id="confirmUrl" href="https://portal.contoso.com/signup?$ConfirmQuery" style="text-decoration:none">
<strong>https://portal.contoso.com/signup?$ConfirmQuery</strong></a>
Új fejlesztői fiók megerősítése
Frissítse a fejlesztői portál URL-címét az Új fejlesztői fiók megerősítő értesítési sablonjában:
Eredeti tartalom
<a id="confirmUrl" href="$ConfirmUrl" style="text-decoration:none">
<strong>$ConfirmUrl</strong></a>
frissített
<a id="confirmUrl" href="https://portal.contoso.com/signup?$ConfirmQuery" style="text-decoration:none">
<strong>https://portal.contoso.com/signup?$ConfirmQuery</strong></a>
Felhasználó meghívása
Frissítse a fejlesztői portál URL-címét a Felhasználói értesítés meghívása sablonban:
Eredeti tartalom
<a href="$ConfirmUrl">$ConfirmUrl</a>
frissített
<a href="https://portal.contoso.com/confirm-v2/identities/basic/invite?$ConfirmQuery">https://portal.contoso.com/confirm-v2/identities/basic/invite?$ConfirmQuery</a>
Új előfizetés aktiválva
Frissítse a fejlesztői portál URL-címét az Új előfizetés által aktivált értesítési sablonban:
Eredeti tartalom
Thank you for subscribing to the <a href="http://$DevPortalUrl/products/$ProdId"><strong>$ProdName</strong></a> and welcome to the $OrganizationName developer community. We are delighted to have you as part of the team and are looking forward to the amazing applications you will build using our API!
frissített
Thank you for subscribing to the <a href="https://portal.contoso.com/product#product=$ProdId"><strong>$ProdName</strong></a> and welcome to the $OrganizationName developer community. We are delighted to have you as part of the team and are looking forward to the amazing applications you will build using our API!
Eredeti tartalom
Visit the developer <a href="http://$DevPortalUrl/developer">profile area</a> to manage your subscription and subscription keys
frissített
Visit the developer <a href="https://portal.contoso.com/profile">profile area</a> to manage your subscription and subscription keys
Eredeti tartalom
<a href="http://$DevPortalUrl/docs/services?product=$ProdId">Learn about the API</a>
frissített
<a href="https://portal.contoso.com/product#product=$ProdId">Learn about the API</a>
Eredeti tartalom
<p style="font-size:12pt;font-family:'Segoe UI'">
<strong>
<a href="http://$DevPortalUrl/applications">Feature your app in the app gallery</a>
</strong>
</p>
<p style="font-size:12pt;font-family:'Segoe UI'">You can publish your application on our gallery for increased visibility to potential new users.</p>
<p style="font-size:12pt;font-family:'Segoe UI'">
<strong>
<a href="http://$DevPortalUrl/issues">Stay in touch</a>
</strong>
</p>
<p style="font-size:12pt;font-family:'Segoe UI'">
If you have an issue, a question, a suggestion, a request, or if you just want to tell us something, go to the <a href="http://$DevPortalUrl/issues">Issues</a> page on the developer portal and create a new topic.
</p>
frissített
<!--Remove the entire block of HTML code above.-->
Jelszómódosítás megerősítése
Frissítse a fejlesztői portál URL-címét a Jelszómódosítás megerősítését megerősítő értesítési sablonban:
Eredeti tartalom
<a href="$DevPortalUrl">$DevPortalUrl</a>
frissített
<a href="https://portal.contoso.com/confirm-password?$ConfirmQuery">https://portal.contoso.com/confirm-password?$ConfirmQuery</a>
Minden sablon
Frissítse a fejlesztői portál URL-címét minden olyan sablonban, amely az élőlábban található hivatkozással rendelkezik:
Eredeti tartalom
<a href="$DevPortalUrl">$DevPortalUrl</a>
frissített
<a href="https://portal.contoso.com/">https://portal.contoso.com/</a>
Váltás felügyeltről saját üzemeltetésű fejlesztői portálra
Idővel előfordulhat, hogy az üzleti követelmények megváltoznak. Előfordulhat, hogy az API Management fejlesztői portál felügyelt verziója már nem felel meg az igényeinek. Egy új követelmény például arra kényszerítheti, hogy egy külső adatszolgáltatóval integrálható egyéni widgetet hozzon létre. A felügyelt verziótól eltérően a portál saját üzemeltetésű verziója teljes rugalmasságot és bővíthetőséget biztosít.
Áttűnési folyamat
A felügyelt verzióról áttérhet egy saját üzemeltetésű verzióra ugyanazon AZ API Management szolgáltatáspéldányon belül. A folyamat megőrzi a portál felügyelt verziójában végrehajtott módosításokat. Győződjön meg arról, hogy előzetesen biztonsági másolatot készít a portál tartalmáról. A biztonsági mentési szkriptet az scripts.v3 API Management fejlesztői portál GitHub-adattár mappájában találja.
A konvertálási folyamat szinte teljesen megegyezik egy általános, saját üzemeltetésű portál beállításával, ahogyan az ebben a cikkben ismertetett korábbi lépésekben is látható. A konfigurációs lépésben egyetlen kivétel van. A fájlban lévő config.design.json tárfióknak meg kell egyeznie a portál felügyelt verziójának tárfiókával. Kérjük, tekintse meg a Linux VM rendszer által hozzárendelt identitás használata az Azure Storage SAS-hitelesítő adatokon keresztüli eléréshez oktatóanyagot, hogy megtudja, hogyan kérheti le a SAS URL-címet.
Jótanács
Javasoljuk, hogy használjon külön tárfiókot a config.publish.json fájlban. Ez a megközelítés nagyobb ellenőrzést biztosít, és leegyszerűsíti a portál üzemeltetési szolgáltatásának kezelését.
Kapcsolódó tartalom
- További információ az önkiszolgáló üzemeltetés alternatív megközelítéseiről