Megosztás a következőn keresztül:


Hitelesítés az Azure Repos használatával

Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019

A megfelelő hitelesítési módszer kiválasztása kulcsfontosságú az Azure-adattárakhoz és az Azure DevOps Server Git-adattárakhoz való biztonságos hozzáféréshez. Akár parancssorból dolgozik, akár EGY HTTPS-t vagy SSH-t támogató Git-ügyfelet használ, fontos olyan hitelesítő adatokat választania, amelyek nem csak a szükséges hozzáférést biztosítják, hanem a hatókört is a feladatokhoz szükségesre korlátozzák.

Mindig vonja vissza a hitelesítő adatokat, ha már nincs rájuk szükség az adattárak biztonságának fenntartásához. Ez a megközelítés biztosítja, hogy rugalmasan dolgozhassa a kódját biztonságosan és hatékonyan, ugyanakkor védve legyen a jogosulatlan hozzáféréssel szemben.

Hitelesítési mechanizmusok

Microsoft Entra OAuth-jogkivonatok

A Microsoft Entra használatával hozzon létre tokeneket a REST API-keléréséhez. A Microsoft Entra-jogkivonatok bárhol használhatók, ahol személyes hozzáférési jogkivonatokat használnak. Az alábbiakban egy hasznos tippet talál arról, hogyan kérhet le egy egyszeri hozzáférési jogkivonatot az Azure CLI-ből a Git-lekérés meghívásához:

$accessToken = az account get-access-token --resource 499b84ac-1321-427f-aa17-267ca6975798 --query "accessToken" --output tsv
git -c http.extraheader="AUTHORIZATION: bearer $accessToken" clone https://dev.azure.com/{yourOrgName}/{yourProjectName}/_git/{yourRepoName}

Borravaló

Inkább a Git Credential Manager (GCM), hogy ne kelljen minden alkalommal megadnia a hitelesítő adatait. A Microsoft Entra-jogkivonatok létrehozásához használja a GCM alapértelmezett hitelesítő adattípusát Oauth.

Személyes hozzáférési jogkivonatok

személyes hozzáférési jogkivonatok (PAT-k) hozzáférést biztosítanak az Azure DevOpshoz anélkül, hogy közvetlenül használná a felhasználónevet és a jelszót. Ezek a jogkivonatok lejárnak, és lehetővé teszik az általuk elérhető adatok hatókörének korlátozását.

Ha nem állította be az SSH-kulcsokat a rendszeren, vagy korlátoznia kell a hitelesítő adatok által megadott engedélyeket, használjon PAT-okat a hitelesítéshez.

A Git-interakciókhoz felhasználónév szükséges, amely egy üres sztring kivételével bármi lehet. Ha a PAT-t alapszintű HTTP-hitelesítéssel szeretné használni, Base64-encode a $MyPat az alábbi kódblokkban látható módon.

A PowerShellben adja meg a következő kódot.

$MyPat = 'yourPat'
$headerValue = "Authorization: Basic " + [Convert]::ToBase64String([System.Text.Encoding]::UTF8.GetBytes(":" + $MyPat))
$env:GIT_AUTH_HEADER = $headerValue

git --config-env=http.extraheader=GIT_AUTH_HEADER clone https://dev.azure.com/yourOrgName/yourProjectName/_git/yourRepoName

Borravaló

Ha rendszeresen használ személyi hozzáférési tokeneket, fontolja meg a Git Credential Manager (GCM) használatát, hogy elkerülje a hitelesítő adatok minden alkalommal történő megadását. Még jobb, ha a GCM-et alapértelmezett hitelesítő adattípusként Oauth-ként használja Microsoft Entra tokenek létrehozásához, ahol csak lehetséges, a PA-k helyett.

SSH-kulcsok

Az SSH-val történő kulcshitelesítés a számítógépen létrehozott nyilvános és titkos kulcspáron keresztül működik. A nyilvános kulcsot az internetről származó felhasználónévvel társítja. Az Azure DevOps ezzel a kulccsal titkosítja az Önnek küldött adatokat, amikor a Gittel dolgozik. A számítógépen lévő adatokat visszafejtheti a titkos kulccsal, amely soha nem lesz megosztva vagy továbbítva a hálózaton keresztül.

SSH nyilvános kulcs Azure DevOpshoz való hozzáadását bemutató animált GIF

Az SSH nagyszerű lehetőség, ha már beállította a rendszerében – csak adjon hozzá egy nyilvános kulcsot az Azure DevOpshoz, és klónozza az adattárakat az SSH használatával. Az SSH-t előnyben részesíthetik azok számára, akik Linuxot, macOS-t vagy Windowst használnak, amin a Git for Windows fut, és akik nem használhatják a Git hitelesítőadat-kezelőket (Git credential managers) vagy a személyes hozzáférési jogkivonatokat (personal access tokens) HTTPS-hitelesítéshez.

További információ: SSH beállítása az Azure DevOpsszal.

Jogkivonatok létrehozása a Git Credential Manager használatával

A Git Credential Manager (GCM) használatával kerülheti el, hogy minden alkalommal meg kelljen adnia a hitelesítő adatait, és ezáltal biztonságosabbá teheti a tokenjét az Azure-adattárak elérésekor. Jelentkezzen be a webportálra, hozzon létre egy jogkivonatot, majd használja a jogkivonatot jelszóként az Azure-adattárakhoz való csatlakozáskor. A Microsoft Entra-jogkivonatok vagy PAT-k igény szerint jönnek létre, ha a hitelesítőadat-kezelő telepítve van, és helyileg van mentve a Git parancssorban vagy más ügyfélprogramban való használatra.

Meglévő adattárak

  • Meglévő forrás eltávolítása: Ha korábban felhasználónévvel adta hozzá a forrást, távolítsa el a következő parancs futtatásával:

    git remote remove origin

  • Hitelesítés PAT használatával: Ha a standard hitelesítéssel kapcsolatos problémákat tapasztal, futtassa a következő parancsot a parancssoron keresztüli hitelesítéshez:

    git remote add origin https://dev.azure.com/<PAT>@<company_machineName>:/<project-name>/_git/<repo_name>

    git push -u origin --all

    A path to git repo = /_git/do az Azure DevOps for Git-adattárakban használt URL-elérésiút-struktúrára hivatkozik. A /_git/ szegmens azt jelzi, hogy egy Git-adattárhoz fér hozzá, és a do a tárház tényleges nevére kell cserélnie. Ha például az adattár neve my-repo, az elérési út a "/_git/my-repo" lesz.

  • Klónozási adattár: Ha Gitet használ, és hitelesítésre van szüksége, futtassa a következő parancsot:

    git clone https://{organization}@dev.azure.com/{organization}/_git/{repository}

    Cserélje le {organization} az Azure DevOps-szervezet nevére, és {repository} az adattár nevére.