Delen via


Een Service Fabric-toepassing toegang verlenen tot Azure-resources in een Service Fabric-cluster

Voordat een toepassing de beheerde identiteit kan gebruiken voor toegang tot andere resources, moet u machtigingen verlenen voor die identiteit op de beveiligde Azure-resource die wordt geopend. Het verlenen van machtigingen is doorgaans een beheeractie op het besturingsvlak van de Azure-service die eigenaar is van de beveiligde resource die wordt gerouteerd door Azure Resource Manager. Deze service dwingt eventuele toepasselijke op rollen gebaseerde toegangscontrole af.

De exacte volgorde van de stappen is afhankelijk van het type Azure-resource dat wordt geopend en de taal en client die worden gebruikt om machtigingen te verlenen. In dit artikel wordt ervan uitgegaan dat een door de gebruiker toegewezen identiteit die is toegewezen aan de toepassing en verschillende voorbeelden bevat. Raadpleeg de documentatie van de respectieve Azure-services voor actuele instructies over het verlenen van machtigingen.

Toegang verlenen tot Azure Storage

U kunt de beheerde identiteit van de Service Fabric-toepassing, die in dit geval door de gebruiker is toegewezen, gebruiken om de gegevens op te halen uit een Azure Storage-blob. Verdeel de identiteit de vereiste machtigingen in Azure Portal met behulp van de volgende stappen:

  1. Navigeer naar het opslagaccount.
  2. Selecteer de koppeling Toegangsbeheer (IAM) in het linkerdeelvenster.
  3. (Optioneel) Controleer de bestaande toegang: selecteer door het systeem toegewezen of door de gebruiker toegewezen beheerde identiteit in het besturingselement Zoeken . Selecteer de juiste identiteit in de lijst met resulterende resultaten.
  4. Selecteer Roltoewijzing toevoegen>boven op de pagina om een nieuwe roltoewijzing toe te voegen voor de identiteit van de toepassing.
  5. Selecteer onder Rol in de vervolgkeuzelijst opslagblobgegevenslezer.
  6. Kies in de volgende vervolgkeuzelijst onder Toegang toewijzen aan de door de gebruiker toegewezen beheerde identiteit.
  7. Controleer vervolgens of het juiste abonnement wordt weergegeven in de vervolgkeuzelijst Abonnement en stel vervolgens De resourcegroep in op Alle resourcegroepen.
  8. Kies onder Selecteren de UAI die overeenkomt met de Service Fabric-toepassing en selecteer Opslaan.

Ondersteuning voor door het systeem toegewezen beheerde Service Fabric-identiteiten bevat geen integratie in Azure Portal. Als uw toepassing gebruikmaakt van een door het systeem toegewezen identiteit, zoekt u de client-id van de identiteit van de toepassing en herhaalt u de bovenstaande stappen, maar selecteert u de optie Microsoft Entra-gebruiker, groep of service-principal in het besturingselement Zoeken .

Toegang verlenen tot Azure Key Vault

Net als bij toegang tot opslag kunt u de beheerde identiteit van een Service Fabric-toepassing gebruiken om toegang te krijgen tot een Azure Key Vault. De stappen voor het verlenen van toegang in Azure Portal zijn vergelijkbaar met de bovenstaande stappen.

In het volgende voorbeeld ziet u hoe u toegang verleent tot een kluis met behulp van een sjabloonimplementatie. Voeg de onderstaande fragmenten toe als een andere vermelding onder het resources element van de sjabloon. In het voorbeeld ziet u hoe toegang wordt verleend voor respectievelijk door de gebruiker toegewezen en door het systeem toegewezen identiteitstypen. Kies de toepasselijke.

    # under 'variables':
  "variables": {
        "userAssignedIdentityResourceId" : "[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities/', parameters('userAssignedIdentityName'))]",
    }
    # under 'resources':
    {
        "type": "Microsoft.KeyVault/vaults/accessPolicies",
        "name": "[concat(parameters('keyVaultName'), '/add')]",
        "apiVersion": "2018-02-14",
        "properties": {
            "accessPolicies": [
                {
                    "tenantId": "[reference(variables('userAssignedIdentityResourceId'), '2018-11-30').tenantId]",
                    "objectId": "[reference(variables('userAssignedIdentityResourceId'), '2018-11-30').principalId]",
                    "dependsOn": [
                        "[variables('userAssignedIdentityResourceId')]"
                    ],
                    "permissions": {
                        "keys":         ["get", "list"],
                        "secrets":      ["get", "list"],
                        "certificates": ["get", "list"]
                    }
                }
            ]
        }
    },

Voor door het systeem toegewezen beheerde identiteiten:

    # under 'variables':
  "variables": {
        "sfAppSystemAssignedIdentityResourceId": "[concat(resourceId('Microsoft.ServiceFabric/managedClusters/applications/', parameters('clusterName'), parameters('applicationName')), '/providers/Microsoft.ManagedIdentity/Identities/default')]"
    }
    # under 'resources':
    {
        "type": "Microsoft.KeyVault/vaults/accessPolicies",
        "name": "[concat(parameters('keyVaultName'), '/add')]",
        "apiVersion": "2018-02-14",
        "properties": {
            "accessPolicies": [
            {
                    "name": "[concat(parameters('clusterName'), '/', parameters('applicationName'))]",
                    "tenantId": "[reference(variables('sfAppSystemAssignedIdentityResourceId'), '2018-11-30').tenantId]",
                    "objectId": "[reference(variables('sfAppSystemAssignedIdentityResourceId'), '2018-11-30').principalId]",
                    "dependsOn": [
                        "[variables('sfAppSystemAssignedIdentityResourceId')]"
                    ],
                    "permissions": {
                        "secrets": [
                            "get",
                            "list"
                        ],
                        "certificates": 
                        [
                            "get", 
                            "list"
                        ]
                    }
            },
        ]
        }
    }

Zie Kluizen - Toegangsbeleid bijwerken voor meer informatie.

Volgende stappen