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


Migrálás fürtkonfigurációk részletes szerepköralapú hozzáféréséhez

Néhány fontos módosítást vezetünk be, amelyek támogatják a részletesebb szerepköralapú hozzáférést a bizalmas információk beszerzéséhez. A módosítások részeként 2019. szeptember 3-ig szükség lehet bizonyos műveletekre, ha az érintett entitások/forgatókönyvek valamelyikét használja.

Mi változik?

Korábban a titkos kulcsokat a HDInsight API-val szerezhették be a tulajdonosi, közreműködői vagy olvasói Azure-szerepkörrel rendelkező fürtfelhasználók, mivel azok bárki számára elérhetők voltak az */read engedélyekkel. A titkos kulcsok olyan értékek, amelyek a felhasználó szerepkörénél magasabb szintű hozzáférés elérésére használhatók. Ilyenek például a fürtátjáró HTTP-hitelesítő adatai, a tárfiókkulcsok és az adatbázis hitelesítő adatai.

2019. szeptember 3-tól a titkos kódok eléréséhez engedély szükséges, a Microsoft.HDInsight/clusters/configurations/action felhasználó nem férhet hozzá az Olvasó szerepkörrel. Az engedély birtokában lévő szerepkörök a Közreműködő, a Tulajdonos és az új HDInsight-fürtoperátori szerepkör.

Bevezetünk egy új HDInsight-fürtkezelői szerepkört is, amely anélkül képes titkos kulcsokat lekérni, hogy a közreműködő vagy a tulajdonos rendszergazdai engedélyét kapnánk. Összegezve:

Role Korábban Tovább
Reader - Olvasási hozzáférés, beleértve a titkos kulcsokat is. - Olvasási hozzáférés, a titkos kódok kivételével
HDInsight-fürt operátora
(Új szerepkör)
N/A – Olvasási/írási hozzáférés, beleértve a titkos kulcsokat is
Contributor – Olvasási/írási hozzáférés, beleértve a titkos kulcsokat is.
– Az Azure-erőforrások összes típusának létrehozása és kezelése.
– Szkriptműveletek végrehajtása.
Nem változott
Owner – Olvasási/írási hozzáférés, beleértve a titkos kulcsokat is.
– Teljes hozzáférés az összes erőforráshoz
- Mások hozzáférésének delegálása.
– Szkriptműveletek végrehajtása.
Nem változott

A HDInsight-fürt operátor szerepkör-hozzárendelésének felhasználóhoz való hozzáadásáról további információt az alábbi, A HDInsight-fürtoperátor szerepkör-hozzárendelés hozzáadása felhasználóhoz című szakaszban talál.

Érintenek ezek a változások?

A következő entitásokra és forgatókönyvekre van hatással:

  • API: A végpontokat vagy /configurations/{configurationName} végpontokat /configurations használó felhasználók.
  • Az Azure HDInsight Tools for Visual Studio Code 1.1.1 vagy korábbi verziói.
  • Az Azure Toolkit for IntelliJ 3.20.0 vagy korábbi verziói.
  • Az Azure Data Lake és a Stream Analytics Tools for Visual Studio 2.3.9000.1-es verziója.
  • Az Azure Toolkit for Eclipse 3.15.0-s vagy újabb verziója.
  • .NET-hez készült SDK
    • 1.x vagy 2.x verzió: A ConfigurationsOperationsExtensions osztályból származó , GetConnectivitySettings, ConfigureHttpSettingsvagy EnableHttpDisableHttp metódusokat használó GetClusterConfigurationsfelhasználók.
    • 3.x és újabb verziók: Az Getosztály , Update, EnableHttpvagy DisableHttp metódusát ConfigurationsOperationsExtensions használó felhasználók.
  • Python SDK: Az osztály vagy update metódusokat getConfigurationsOperations használó felhasználók.
  • Java SDK: Az osztály vagy get metódusokat updateConfigurationsInner használó felhasználók.
  • SDK for Go: A struktúra metódusát Get vagy Update metódusát ConfigurationsClient használó felhasználók.
  • Az.HDInsight PowerShell 2.0.0-s verziója. Az Ön forgatókönyvéhez használandó migrálási lépéseket az alábbi szakaszokban találja (vagy használja a fenti hivatkozásokat).

API

A következő API-k módosulnak vagy elavultak:

  • GET /configurations/{configurationName} (bizalmas adatok el lettek távolítva)
    • Korábban az egyes konfigurációtípusok (beleértve a titkos kulcsokat) beszerzésére használták.
    • 2019. szeptember 3-tól ez az API-hívás mostantól egyedi konfigurációtípusokat ad vissza, amelyekben nem szerepelnek titkos kódok. Az összes konfiguráció, beleértve a titkos kulcsokat is, az új POST /configurations hívással szerezhető be. Az átjáróbeállítások beszerzéséhez használja az új POST /getGateway Gépház hívást.
  • GET /configurations (elavult)
    • Korábban az összes konfiguráció beszerzésére szolgál (beleértve a titkos kulcsokat is)
    • 2019. szeptember 3-tól ez az API-hívás elavulttá válik, és a továbbiakban nem támogatott. Az összes előrehaladt konfiguráció beszerzéséhez használja az új POST /configurations hívást. A kihagyott bizalmas paraméterekkel rendelkező konfigurációk beszerzéséhez használja a GET /configurations/{configurationName} hívást.
  • POST /configurations/{configurationName} (elavult)
    • Korábban az átjáró hitelesítő adatainak frissítésére szolgál.
    • 2019. szeptember 3-tól ez az API-hívás elavulttá válik, és a továbbiakban nem támogatott. Használja helyette az új POST /updateGateway Gépház.

A következő helyettesítő API-k lettek hozzáadva:

Azure HDInsight Tools for Visual Studio Code

Ha az 1.1.1-es vagy újabb verziót használja, frissítsen az Azure HDInsight Tools for Visual Studio Code legújabb verziójára a megszakítások elkerülése érdekében.

Azure Toolkit for IntelliJ

Ha a 3.20.0-s vagy újabb verziót használja, a megszakítások elkerülése érdekében frissítsen az Azure Toolkit for IntelliJ beépülő modul legújabb verziójára.

Azure Data Lake és Stream Analytics Tools for Visual Studio

Frissítsen az Azure Data Lake és a Stream Analytics Tools for Visual Studio 2.3.9000.1-es vagy újabb verziójára a megszakítások elkerülése érdekében. A frissítéssel kapcsolatos segítségért tekintse meg a Data Lake Tools for Visual Studio frissítésével kapcsolatos dokumentációnkat.

Az Azure Toolkit for Eclipse

Ha a 3.15.0-s vagy újabb verziót használja, a megszakítások elkerülése érdekében frissítsen az Azure Toolkit for Eclipse legújabb verziójára.

.NET-hez készült SDK

1.x és 2.x verzió

Frissítsen a .NET-hez készült HDInsight SDK 2.1.0-s verziójára. Minimális kódmódosításra lehet szükség, ha a módosítások által érintett metódust használ:

  • ClusterOperationsExtensions.GetClusterConfigurations a továbbiakban nem ad vissza olyan bizalmas paramétereket, mint például a tárolókulcsok (magwebhely) vagy a HTTP-hitelesítő adatok (átjáró).

    • Az összes konfiguráció lekéréséhez, beleértve a bizalmas paramétereket is, használja ClusterOperationsExtensions.ListConfigurations a Tovább elemet. Az Olvasó szerepkörrel rendelkező felhasználók nem tudják használni ezt a módszert. Lehetővé teszi annak részletes ellenőrzését, hogy mely felhasználók férhetnek hozzá a fürt bizalmas adataihoz.
    • Ha csak a HTTP-átjáró hitelesítő adatait szeretné lekérni, használja ClusterOperationsExtensions.GetGatewaySettingsa .
  • ClusterOperationsExtensions.GetConnectivitySettingsaz elavult, és helyébe a következő lépett: .a0>

  • ClusterOperationsExtensions.ConfigureHttpSettingsaz elavult, és helyébe a következő lépett: .a0>

  • ConfigurationsOperationsExtensions.EnableHttp és DisableHttp most elavultak. A HTTP mostantól mindig engedélyezve van, így ezekre a módszerekre már nincs szükség.

3.x és újabb verziók

Frissítsen a .NET-hez készült HDInsight SDK 5.0.0-s vagy újabb verziójára. Minimális kódmódosításra lehet szükség, ha a módosítások által érintett metódust használ:

Pythonhoz készült SDK

Frissítsen a Pythonhoz készült HDInsight SDK 1.0.0-s vagy újabb verziójára. Minimális kódmódosításra lehet szükség, ha a módosítások által érintett metódust használ:

  • ConfigurationsOperations.get a továbbiakban nem ad vissza olyan bizalmas paramétereket, mint például a tárolókulcsok (magwebhely) vagy a HTTP-hitelesítő adatok (átjáró).
    • Az összes konfiguráció lekéréséhez, beleértve a bizalmas paramétereket is, használja ConfigurationsOperations.list a Tovább elemet.  Az Olvasó szerepkörrel rendelkező felhasználók nem tudják használni ezt a módszert. Lehetővé teszi annak részletes ellenőrzését, hogy mely felhasználók férhetnek hozzá a fürt bizalmas adataihoz.
    • Ha csak a HTTP-átjáró hitelesítő adatait szeretné lekérni, használja ClusterOperations.get_gateway_settingsa .
  • ConfigurationsOperations.updateaz elavult, és helyébe a következő lépett: .a0>

SDK For Java

Frissítsen a Java HDInsight SDK 1.0.0-s vagy újabb verziójára. Minimális kódmódosításra lehet szükség, ha a módosítások által érintett metódust használ:

  • ConfigurationsInner.get a továbbiakban nem ad vissza olyan bizalmas paramétereket, mint például a tárolókulcsok (magwebhely) vagy a HTTP-hitelesítő adatok (átjáró).
  • ConfigurationsInner.update mostantól elavult.

SDK For Go

Frissítsen a HDInsight SDK for Go 27.1.0-s vagy újabb verziójára. Minimális kódmódosításra lehet szükség, ha a módosítások által érintett metódust használ:

  • ConfigurationsClient.get a továbbiakban nem ad vissza olyan bizalmas paramétereket, mint például a tárolókulcsok (magwebhely) vagy a HTTP-hitelesítő adatok (átjáró).
    • Az összes konfiguráció lekéréséhez, beleértve a bizalmas paramétereket is, használja ConfigurationsClient.list a Tovább elemet. Az Olvasó szerepkörrel rendelkező felhasználók nem tudják használni ezt a módszert. Lehetővé teszi annak részletes ellenőrzését, hogy mely felhasználók férhetnek hozzá a fürt bizalmas adataihoz.
    • Ha csak a HTTP-átjáró hitelesítő adatait szeretné lekérni, használja ClustersClient.get_gateway_settingsa .
  • ConfigurationsClient.updateaz elavult, és helyébe a következő lépett: .a0>

Az.HDInsight PowerShell

A megszakítások elkerülése érdekében frissítsen az Az PowerShell 2.0.0-s vagy újabb verziójára. Minimális kódmódosításra lehet szükség, ha a módosítások által érintett metódust használ.

  • Grant-AzHDInsightHttpServicesAccess elavult, és az új Set-AzHDInsightGatewayCredential parancsmag lecserélte.
  • Get-AzHDInsightJobOutput frissítve lett, hogy támogassa a tárkulcshoz való részletes, szerepköralapú hozzáférést.
    • A HDInsight-fürt operátori, közreműködői vagy tulajdonosi szerepkörrel rendelkező felhasználókra nincs hatással.
    • A csak olvasói szerepkörrel rendelkező felhasználóknak explicit módon kell megadniuk a DefaultStorageAccountKey paramétert.
  • Revoke-AzHDInsightHttpServicesAccess mostantól elavult. A HTTP mostantól mindig engedélyezve van, így erre a parancsmagra már nincs szükség. Lásd az az . A HDInsight migrálási útmutatója további részletekért.

A HDInsight-fürt operátor szerepkör-hozzárendelésének hozzáadása egy felhasználóhoz

A tulajdonosi szerepkörrel rendelkező felhasználók hozzárendelhetik a HDInsight fürtkezelői szerepkört azokhoz a felhasználókhoz, akiknek olvasási/írási hozzáféréssel kell rendelkezniük a BIZALMAS HDInsight-fürtkonfigurációs értékekhez (például a fürtátjáró hitelesítő adataihoz és a tárfiókkulcsokhoz).

Az Azure CLI-vel

A szerepkör-hozzárendelés hozzáadásának legegyszerűbb módja az az role assignment create Azure CLI-ben található parancs használata.

Megjegyzés:

Ezt a parancsot tulajdonosi szerepkörrel rendelkező felhasználónak kell futtatnia, mivel csak ők adhatják meg ezeket az engedélyeket. Ez --assignee annak a felhasználónak a szolgáltatásneve vagy e-mail-címe, akinek a HDInsight-fürtkezelői szerepkört hozzá szeretné rendelni. Ha nem megfelelő engedélyhiba jelenik meg, tekintse meg a gyakori kérdéseket.

Szerepkör megadása az erőforrás (fürt) szintjén

az role assignment create --role "HDInsight Cluster Operator" --assignee <user@domain.com> --scope /subscriptions/<SubscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.HDInsight/clusters/<ClusterName>

Szerepkör megadása az erőforráscsoport szintjén

az role assignment create --role "HDInsight Cluster Operator" --assignee user@domain.com -g <ResourceGroupName>

Szerepkör megadása előfizetési szinten

az role assignment create --role "HDInsight Cluster Operator" --assignee user@domain.com

Using the Azure portal

Másik lehetőségként az Azure Portallal is hozzáadhatja a HDInsight-fürtkezelő szerepkör-hozzárendelést egy felhasználóhoz. Tekintse meg az Azure-szerepkörök hozzárendelése az Azure Portalon című dokumentációt.

GYIK

Miért jelenik meg a 403-as (tiltott művelet) válasz az API-kérelmek és/vagy az eszköz frissítésekor?

A fürtkonfigurációk mostantól részletes szerepköralapú hozzáférés-vezérlés mögött állnak, és engedélyre van szükségük a Microsoft.HDInsight/clusters/configurations/* hozzáférésükhöz. Az engedély beszerzéséhez rendelje hozzá a HDInsight-fürt operátori, közreműködői vagy tulajdonosi szerepkörét ahhoz a felhasználóhoz vagy szolgáltatásnévhez, amely megpróbál hozzáférni a konfigurációkhoz.

Miért jelenik meg a "Nem megfelelő jogosultságok a művelet végrehajtásához", amikor az Azure CLI-parancs futtatásával hozzárendelem a HDInsight-fürt operátori szerepkörét egy másik felhasználóhoz vagy szolgáltatásnévhez?

A tulajdonosi szerepkör mellett a parancsot végrehajtó felhasználónak vagy szolgáltatásnévnek elegendő Microsoft Entra-engedéllyel kell rendelkeznie a hozzárendelt objektumazonosítóinak kereséséhez. Ez az üzenet azt jelzi, hogy nincs elegendő Microsoft Entra-engedély. Próbálja meg lecserélni az -–assignee argumentumot –assignee-object-id , és adja meg a hozzárendelt objektumazonosítóját paraméterként a név helyett (vagy felügyelt identitás esetén az egyszerű azonosítót). További információkért tekintse meg az az szerepkör-hozzárendelés létrehozási dokumentációjának választható paraméterekkel foglalkozó szakaszát.

Ha továbbra sem működik, forduljon a Microsoft Entra rendszergazdájához a megfelelő engedélyek beszerzéséhez.

Mi történik, ha nem lépek?

2019. szeptember 3-tól kezdődően a hívások többé nem adnak vissza semmilyen információt, GET /configurationsPOST /configurations/gateway és a GET /configurations/{configurationName} hívás többé nem ad vissza bizalmas paramétereket, például tárfiókkulcsokat vagy fürtjelszót. Ugyanez igaz a megfelelő SDK-metódusokra és PowerShell-parancsmagokra is.

Ha a Visual Studio, a VSCode, az IntelliJ vagy az Eclipse egyik eszközének régebbi verzióját használja, az csak a frissítés után működik.

Részletesebb információkért tekintse meg a dokumentum megfelelő szakaszát a forgatókönyvhöz.