.NET-alkalmazások hitelesítése Azure-szolgáltatásokba a helyi fejlesztés során fejlesztői fiókok használatával
Felhőalkalmazások létrehozásakor a fejlesztőknek hibakeresést és tesztelést kell végezniük az alkalmazások helyi munkaállomásán. Ha egy alkalmazás egy fejlesztői munkaállomáson fut a helyi fejlesztés során, akkor is hitelesítenie kell az alkalmazás által használt Azure-szolgáltatásokban. Ez a cikk bemutatja, hogyan használhatja egy fejlesztő Azure-beli hitelesítő adatait az alkalmazás azure-beli hitelesítésére a helyi fejlesztés során.
Ahhoz, hogy egy alkalmazás helyi fejlesztés során hitelesítse magát az Azure-ban a fejlesztő Azure-beli hitelesítő adataival, a fejlesztőnek be kell jelentkeznie az Azure-ba a VS Code Azure Tools bővítményből, az Azure CLI-ből vagy az Azure PowerShellből. A .NET-hez készült Azure SDK képes észlelni, hogy a fejlesztő bejelentkezett az egyik ilyen eszközről, majd lekérte a szükséges hitelesítő adatokat a hitelesítő adatok gyorsítótárából, hogy bejelentkezett felhasználóként hitelesítse az alkalmazást az Azure-ban.
Ez a módszer a legegyszerűbben beállítható egy fejlesztői csapat számára, mivel kihasználja a fejlesztők meglévő Azure-fiókjait. A fejlesztői fiók azonban valószínűleg több engedéllyel rendelkezik, mint amennyit az alkalmazás igényel, ezért túllépi azokat az engedélyeket, amelyeket az alkalmazás éles környezetben fog futtatni. Alternatív megoldásként létrehozhat olyan alkalmazásszolgáltatás-tagokat, amelyeket a helyi fejlesztés során használhat, amelyek hatóköre csak az alkalmazás által igényelt hozzáférésre terjedhet ki.
1 – Azure AD-csoport létrehozása helyi fejlesztéshez
Mivel szinte mindig több fejlesztő dolgozik egy alkalmazáson, javasoljuk, hogy először hozzon létre egy Azure AD-csoportot az alkalmazáshoz szükséges szerepkörök (engedélyek) beágyazásához a helyi fejlesztés során. Ez a következő előnyöket nyújtja.
- Minden fejlesztőnek ugyanazok a szerepkörök lesznek hozzárendelve, mivel a szerepkörök csoportszinten vannak hozzárendelve.
- Ha új szerepkörre van szükség az alkalmazáshoz, azt csak az alkalmazás Azure AD-csoportjához kell hozzáadni.
- Ha egy új fejlesztő csatlakozik a csapathoz, egyszerűen hozzá kell adni őket a megfelelő Azure AD-csoporthoz, hogy megkapják a megfelelő engedélyeket az alkalmazás használatához.
Ha már rendelkezik Azure AD-csoporttal a fejlesztői csapathoz, használhatja ezt a csoportot. Ellenkező esetben hajtsa végre az alábbi lépéseket egy Azure AD-csoport létrehozásához.
2 – Szerepkörök hozzárendelése az Azure AD-csoporthoz
Ezután meg kell határoznia, hogy az alkalmazásnak milyen szerepkörökre (engedélyekre) van szüksége az adott erőforrásokhoz, és ki kell osztania ezeket a szerepköröket az alkalmazáshoz. Ebben a példában a szerepkörök az 1. lépésben létrehozott Azure Active Directory-csoporthoz lesznek hozzárendelve. A szerepkörök hozzárendelhetők szerepkörökhöz egy erőforrás, erőforráscsoport vagy előfizetés hatókörében. Ez a példa bemutatja, hogyan rendelhet hozzá szerepköröket az erőforráscsoport hatóköréhez, mivel a legtöbb alkalmazás egyetlen erőforráscsoportba csoportosítja az összes Azure-erőforrást.
3 – Bejelentkezés az Azure-ba a .NET-eszközök használatával
Ezután több .NET-eszközbeállítás egyikével kell bejelentkeznie az Azure-ba. A bejelentkezett fióknak a korábban létrehozott és konfigurált Azure Active Directory-csoportban is léteznie kell.
A Visual Studio felső menüjében lépjen az Eszközök>beállításai elemre a beállítások párbeszédpanel megnyitásához. A beállítások szűréséhez írja be az Azure-t a bal felső keresősávba. Az Azure Service Authentication alatt válassza a Fiókválasztás lehetőséget.
Válassza a Fiók kiválasztása menü legördülő menüjét, és válassza a Microsoft-fiók hozzáadását. Ekkor megnyílik egy ablak, amely arra kéri, hogy válasszon egy fiókot. Adja meg a kívánt Azure-fiók hitelesítő adatait, majd válassza ki a megerősítést.
4 – DefaultAzureCredential implementálása az alkalmazásban
DefaultAzureCredential
több hitelesítési módszert támogat, és meghatározza a futtatókörnyezetben használt hitelesítési módszert. Ily módon az alkalmazás különböző hitelesítési módszereket használhat különböző környezetekben, környezetspecifikus kód implementálása nélkül.
A hitelesítő adatokat kereső sorrend és helyek DefaultAzureCredential
a DefaultAzureCredential helyen találhatók.
A megvalósításhoz DefaultAzureCredential
először adja hozzá a Azure.Identity
csomagokat, és igény szerint adja hozzá az Microsoft.Extensions.Azure
alkalmazáshoz. Ezt a parancssor vagy a NuGet Csomagkezelő használatával teheti meg.
Nyisson meg egy tetszőleges terminálkörnyezetet az alkalmazásprojekt könyvtárában, és írja be az alábbi parancsot.
dotnet add package Azure.Identity
dotnet add package Microsoft.Extensions.Azure
Az Azure-szolgáltatásokat általában az SDK megfelelő ügyfélosztályai használják. Ezeket az osztályokat és a saját egyéni szolgáltatásokat regisztrálni kell a Program.cs
fájlban, hogy az alkalmazás függőséginjektálásával elérhetőek legyenek. Program.cs
Belül kövesse az alábbi lépéseket a szolgáltatás és a .DefaultAzureCredential
- A névterek és
Microsoft.Extensions.Azure
aAzure.Identity
névterek belefoglalása egyusing
irányelvbe. - Regisztrálja az Azure-szolgáltatást a megfelelő segítő módszerek használatával.
- Adja át az objektum egy példányát
DefaultAzureCredential
aUseCredential
metódusnak.
Erre példa a következő kódszakaszban látható.
using Microsoft.Extensions.Azure;
using Azure.Identity;
// Inside of Program.cs
builder.Services.AddAzureClients(x =>
{
x.AddBlobServiceClient(new Uri("https://<account-name>.blob.core.windows.net"));
x.UseCredential(new DefaultAzureCredential());
});
Azt is megteheti, hogy a szolgáltatásokban közvetlenül, további Azure-regisztrációs módszerek nélkül is használhatja DefaultAzureCredential
az alábbiakban látható módon.
using Azure.Identity;
// Inside of Program.cs
builder.Services.AddSingleton<BlobServiceClient>(x =>
new BlobServiceClient(
new Uri("https://<account-name>.blob.core.windows.net"),
new DefaultAzureCredential()));
Ha a fenti kód a helyi fejlesztés során fut a helyi munkaállomáson, az alkalmazás-szolgáltatásnév környezeti változóiban, illetve a Visual Studióban, a VS Code-ban, az Azure CLI-ben vagy az Azure PowerShellben fog keresni a fejlesztői hitelesítő adatok készletében, amelyek bármelyikével hitelesítheti az alkalmazást az Azure-erőforrásokban a helyi fejlesztés során.
Az Azure-ban való üzembe helyezéskor ugyanez a kód más Azure-erőforrásokon is hitelesítheti az alkalmazást. DefaultAzureCredential
lekérheti a környezeti beállításokat és a felügyelt identitáskonfigurációkat a többi szolgáltatás automatikus hitelesítéséhez.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: