Gépkonfigurációs csomagok aláírása
A gépkonfigurációs egyéni szabályzatok SHA256 kivonat használatával ellenőrzik, hogy a szabályzatcsomag nem változott-e. Opcionálisan az ügyfelek tanúsítványt is használhatnak a csomagok aláírásához, és kényszeríthetik a gép konfigurációs bővítményét, hogy csak aláírt tartalmat engedélyezzenek.
A forgatókönyv engedélyezéséhez két lépést kell elvégeznie. Futtassa a parancsmagot a tartalomcsomag aláírásához, és fűzjön hozzá egy címkét azokhoz a gépekhez, amelyekhez kód aláírására van szükség.
Aláírás-ellenőrzés kódaláíró tanúsítvány használatával
Az Aláírás érvényesítése funkció használatához futtassa a parancsmagot a Protect-GuestConfigurationPackage
csomag aláírásához a közzététel előtt. Ehhez a parancsmaghoz kódaláírási tanúsítvány szükséges. Ha nem rendelkezik "Kódaláíró" tanúsítvánnyal, a következő szkripttel létrehozhat egy önaláírt tanúsítványt tesztelési célokra a példával együtt.
Windows-aláírás érvényesítése
# How to create a self sign cert and use it to sign Machine Configuration
# custom policy package
# Create Code signing cert
$codeSigningParams = @{
Type = 'CodeSigningCert'
DnsName = 'GCEncryptionCertificate'
HashAlgorithm = 'SHA256'
}
$mycert = New-SelfSignedCertificate @codeSigningParams
# Export the certificates
$mypwd = ConvertTo-SecureString -String "Password1234" -Force -AsPlainText
$mycert | Export-PfxCertificate -FilePath C:\demo\GCPrivateKey.pfx -Password $mypwd
$mycert | Export-Certificate -FilePath "C:\demo\GCPublicKey.cer" -Force
# Import the certificate
$importParams = @{
FilePath = 'C:\demo\GCPrivateKey.pfx'
Password = $mypwd
CertStoreLocation = 'Cert:\LocalMachine\My'
}
Import-PfxCertificate @importParams
# Sign the policy package
$certToSignThePackage = Get-ChildItem -Path cert:\LocalMachine\My |
Where-Object { $_.Subject-eq "CN=GCEncryptionCertificate" }
$protectParams = @{
Path = 'C:\demo\AuditWindowsService.zip'
Certificate = $certToSignThePackage
Verbose = $true
}
Protect-GuestConfigurationPackage @protectParams
Linux-aláírás érvényesítése
# generate gpg key
gpg --gen-key
# export public key
gpg --output public.gpg --export <email-id-used-to-generate-gpg-key>
# export private key
gpg --output private.gpg --export-secret-key <email-id-used-to-generate-gpg-key>
# Sign linux policy package
Import-Module GuestConfiguration
$protectParams = @{
Path = './not_installed_application_linux.zip'
PrivateGpgKeyPath = './private.gpg'
PublicGpgKeyPath = './public.gpg'
Verbose = $true
}
Protect-GuestConfigurationPackage
A parancsmag paraméterei Protect-GuestConfigurationPackage
:
- Elérési út: A gép konfigurációs csomagjának teljes elérési útja.
- Tanúsítvány: Kódaláíró tanúsítvány a csomag aláírásához. Ez a paraméter csak a Windows-tartalom aláírásakor támogatott.
Tanúsítványkövetelmények
A gépkonfigurációs ügynök azt várja, hogy a tanúsítvány nyilvános kulcsa jelen legyen a "Megbízható közzétevők" között Windows rendszerű gépeken és a Linux rendszerű gépeken /usr/local/share/ca-certificates/gc
. Ahhoz, hogy a csomópont ellenőrizze az aláírt tartalmat, telepítse a tanúsítvány nyilvános kulcsát a számítógépre az egyéni szabályzat alkalmazása előtt. Ez a folyamat bármely, a virtuális gépen belüli technikával vagy az Azure Policy használatával elvégezhető. Egy példasablon használható egy tanúsítványt tartalmazó gép üzembe helyezéséhez. A Key Vault hozzáférési szabályzatának lehetővé kell tennie, hogy a számítási erőforrás-szolgáltató hozzáférjen a tanúsítványokhoz az üzembe helyezés során. Részletes lépésekért lásd: Key Vault beállítása virtuális gépekhez az Azure Resource Managerben.
Az alábbiakban egy példa látható a nyilvános kulcs aláíró tanúsítványból való exportálására, a gépre való importálásra.
$Cert = Get-ChildItem -Path cert:\LocalMachine\My |
Where-Object { $_.Subject-eq "CN=mycert3" } |
Select-Object -First 1
$Cert | Export-Certificate -FilePath "$env:temp\DscPublicKey.cer" -Force
Címkével kapcsolatos követelmények
A tartalom közzététele után fűzjön hozzá egy nevet GuestConfigPolicyCertificateValidation
és értéket enabled
tartalmazó címkét az összes olyan virtuális géphez, ahol kódaláírásra van szükség. A Címkék mintáiban megtudhatja, hogyan kézbesíthetők a címkék nagy méretekben az Azure Policy használatával. A címke üzembe helyezése után a parancsmaggal New-GuestConfigurationPolicy
létrehozott szabályzatdefiníció lehetővé teszi a követelményt a gép konfigurációs bővítményén keresztül.
Kapcsolódó tartalom
- Azure-szabályzatdefiníció létrehozása a
GuestConfiguration
modul használatával a környezet tömeges felügyeletéhez. - Egyéni szabályzatdefiníció hozzárendelése az Azure Portal használatával.
- Megtudhatja, hogyan tekintheti meg a gépkonfigurációs házirend-hozzárendelések megfelelőségi részleteit.
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: