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


Tárolólemezképek letöltéséhez konfigurálja az alkalmazás adattár-hitelesítő adatait

Konfigurálja a tárolóregisztrációs adatbázis hitelesítését az ContainerHostPolicies alkalmazásjegyzék szakaszához való hozzáadássalRepositoryCredentials. Adja hozzá a tárolóregisztrációs adatbázis fiókját és jelszavát (az alábbi példában myregistry.azurecr.io ), amely lehetővé teszi, hogy a szolgáltatás letöltse a tárolórendszerképet az adattárból.

<ServiceManifestImport>
    ...
    <Policies>
        <ContainerHostPolicies CodePackageRef="Code">
            <RepositoryCredentials AccountName="myregistry" Password="=P==/==/=8=/=+u4lyOB=+=nWzEeRfF=" PasswordEncrypted="false"/>
            <PortBinding ContainerPort="80" EndpointRef="Guest1TypeEndpoint"/>
        </ContainerHostPolicies>
    </Policies>
    ...
</ServiceManifestImport>

Javasoljuk, hogy titkosítsa az adattár jelszavát egy, a fürt összes csomópontján üzembe helyezett titkosítási tanúsítvány használatával. Amikor a Service Fabric üzembe helyezi a szervizcsomagot a fürtön, a titkosítási tanúsítvánnyal fejti vissza a titkosított szöveget. Az Invoke-ServiceFabricEncryptText parancsmaggal hozhat létre titkosított szöveget a jelszóhoz, amelyet a rendszer hozzáad az ApplicationManifest.xml fájlhoz. A tanúsítványokról és a titkosítási szemantikáról további információt a Titkos kódok kezelése című témakörben talál.

Fürtszintű hitelesítő adatok konfigurálása

A Service Fabric lehetővé teszi a fürtszintű hitelesítő adatok konfigurálását, amelyek az alkalmazások által alapértelmezett adattárbeli hitelesítő adatokként használhatók.

Ez a funkció engedélyezhető vagy letiltható úgy, hogy ContainerHostPolicies hozzáadja az attribútumot ApplicationManifest.xml UseDefaultRepositoryCredentials egy true vagy false több értékkel.

<ServiceManifestImport>
    ...
    <Policies>
        <ContainerHostPolicies CodePackageRef="Code" UseDefaultRepositoryCredentials="true">
            <PortBinding ContainerPort="80" EndpointRef="Guest1TypeEndpoint"/>
        </ContainerHostPolicies>
    </Policies>
    ...
</ServiceManifestImport>

A Service Fabric ezután az alapértelmezett adattár hitelesítő adatait használja, amelyek a fürtmanifest Hosting szakaszban adhatók meg. Ha UseDefaultRepositoryCredentials igen true, a Service Fabric a következő értékeket olvassa be a ClusterManifestből:

  • DefaultContainerRepositoryAccountName (sztring)
  • DefaultContainerRepositoryPassword (sztring)
  • IsDefaultContainerRepositoryPasswordEncrypted (bool)
  • DefaultContainerRepositoryPasswordType (sztring)

Íme egy példa arra, hogy mit lehet hozzáadni a Hosting ClusterManifestTemplate.json fájl szakaszában. A Hosting szakasz hozzáadható a fürt létrehozásakor vagy később egy konfigurációfrissítésben. További információ: Az Azure Service Fabric-fürt beállításainak módosítása és az Azure Service Fabric-alkalmazás titkos kulcsainak kezelése

"fabricSettings": [
	...,
	{
        "name": "Hosting",
        "parameters": [
          {
            "name": "EndpointProviderEnabled",
            "value": "true"
          },
          {
            "name": "DefaultContainerRepositoryAccountName",
            "value": "someusername"
          },
          {
            "name": "DefaultContainerRepositoryPassword",
            "value": "somepassword"
          },
          {
            "name": "IsDefaultContainerRepositoryPasswordEncrypted",
            "value": "false"
          },
          {
            "name": "DefaultContainerRepositoryPasswordType",
            "value": "PlainText"
          }
        ]
      },
]

Jogkivonatok használata beállításjegyzékbeli hitelesítő adatokként

A Service Fabric támogatja a tokenek hitelesítő adatokként való használatát a tárolók lemezképeinek letöltéséhez. Ez a funkció a mögöttes virtuálisgép-méretezési csoport felügyelt identitását használja a beállításjegyzékben való hitelesítéshez, így nincs szükség felhasználói hitelesítő adatok kezelésére. További információt az Azure-erőforrások felügyelt identitásai című témakörben talál. A funkció használatához a következő lépések szükségesek:

  1. Győződjön meg arról, hogy a rendszer által hozzárendelt felügyelt identitás engedélyezve van a virtuális gép számára.

    Azure Portal: Virtuálisgép-méretezési csoport identitásbeállításának létrehozása

Feljegyzés

A felhasználó által hozzárendelt felügyelt identitás esetében hagyja ki ezt a lépést. Az alábbi további lépések ugyanúgy működnek, ha a méretezési csoport csak egyetlen felhasználó által hozzárendelt felügyelt identitáshoz van társítva.

  1. Adjon engedélyeket a virtuálisgép-méretezési csoportnak a rendszerképek beállításjegyzékből való lekéréséhez/olvasásához. Az Azure Container Registry Hozzáférés-vezérlés (IAM) paneljén az Azure Portalon adjon hozzá egy szerepkör-hozzárendelést a virtuális géphez:

    Virtuálisgép-egyszerű hozzáadása az ACR-hez

  2. Ezután módosítsa az alkalmazásjegyzéket. ContainerHostPolicies A szakaszban adja hozzá az attribútumot‘UseTokenAuthenticationCredentials=”true”.

      <ServiceManifestImport>
          <ServiceManifestRef ServiceManifestName="NodeServicePackage" ServiceManifestVersion="1.0"/>
      <Policies>
        <ContainerHostPolicies CodePackageRef="NodeService.Code" Isolation="process" UseTokenAuthenticationCredentials="true">
          <PortBinding ContainerPort="8905" EndpointRef="Endpoint1"/>
        </ContainerHostPolicies>
        <ResourceGovernancePolicy CodePackageRef="NodeService.Code" MemoryInMB="256"/>
      </Policies>
      </ServiceManifestImport>
    

    Feljegyzés

    Az igaz értékre UseTokenAuthenticationCredentials beállított jelölő UseDefaultRepositoryCredentials az üzembe helyezés során hibát okoz.

Következő lépések

  • További információ a tárolóregisztrációs adatbázis hitelesítéséről.