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:
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.
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.
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:
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.