Konfigurera offentliga och privata nycklar för användning med Adobe I/O

AEM använder publika/privata nyckelpar för att kommunicera säkert med Adobe I/O och andra webbtjänster. Den här korta självstudiekursen visar hur kompatibla tangenter och nyckelbehållare kan genereras med kommandoradsverktyget openssl som fungerar med både AEM och Adobe I/O.

FÖRSIKTIGHET

Den här guiden skapar självsignerade nycklar som är användbara för utveckling och användning i lägre miljöer. I produktionsscenarier genereras och hanteras nycklar vanligtvis av en organisations IT-säkerhetsteam.

Generera nyckelparet offentlig/privat

Kommandoradsverktyget openssl req command kan användas för att generera ett nyckelpar som är kompatibelt med Adobe I/O och Adobe Experience Manager.

$ openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout private.key -out certificate.crt

Om du vill slutföra kommandot openssl generate anger du certifikatinformationen när du begär det. Adobe I/O och AEM bryr sig inte om vilka dessa värden är, men de bör anpassas efter och beskriva din nyckel.

Generating a 2048 bit RSA private key
...........................................................+++
...+++
writing new private key to 'private.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) []:US
State or Province Name (full name) []:CA
Locality Name (eg, city) []:San Jose
Organization Name (eg, company) []:Example Co
Organizational Unit Name (eg, section) []:Digital Marketing
Common Name (eg, fully qualified host name) []:com.example
Email Address []:me@example.com

Lägg till nyckelpar i en ny nyckelbehållare

Nyckelpar kan läggas till i en ny PKCS12-nyckelbehållare. Som en del av openssl’s pcks12 kommandot definieras namnet på nyckelbehållaren (via - caname), namnet på nyckeln (via -name) och nyckelbehållarens lösenord (via - passout).

Dessa värden krävs för att läsa in nyckelbehållaren och nycklarna i AEM.

$ openssl pkcs12 -export -caname my-keystore -in certificate.crt -name my-key -inkey private.key -out keystore.p12 -passout pass:my-password

Kommandots utdata är en keystore.p12-fil.

OBSERVERA

Parametervärdena my-keystore, my-key och my-password ska ersättas med dina egna värden.

Verifiera innehållet i nyckelbehållaren

Kommandoradsverktyget keytool från Java ger synlighet i en nyckelbehållare för att säkerställa att nycklarna läses in korrekt i nyckelbehållarfilen (keystore.p12).

$ keytool -keystore keystore.p12 -list

Enter keystore password: my-password

Keystore type: jks
Keystore provider: SUN

Your keystore contains 1 entry

my-key, Feb 5, 2019, PrivateKeyEntry,
Certificate fingerprint (SHA1): 7C:6C:25:BD:52:D3:3B:29:83:FD:A2:93:A8:53:91:6A:25:1F:2D:52

Verifiera nyckelbehållaren i Adobe I/O

Lägga till nyckelbehållaren i AEM

AEM använder den genererade privata nyckeln för att kommunicera säkert med Adobe I/O och andra webbtjänster. För att den privata nyckeln ska vara tillgänglig för AEM måste den installeras i en AEM nyckelbehållare.

Navigera till AEM > Tools > Security >Users och redigera användaren som den privata nyckeln ska kopplas till.

Skapa en AEM nyckelbehållare

Create KeyStore in
AEMAEM > Tools > Security > Users > Edit user

Om du uppmanas att skapa en nyckelbehållare gör du det. Den här nyckelbehållaren finns bara i AEM och är INTE den nyckelbehållare som skapas via openssl. Lösenordet kan vara vad som helst och behöver inte vara samma som lösenordet som används i kommandot openssl.

Installera den privata nyckeln via nyckelbehållaren

Lägg till privat nyckel i AEM
User> Keystore >Add private key from keystore

Klicka på Add Private Key form KeyStore file i användarens nyckelbehållare och lägg till följande information:

  • New Alias: nyckelns alias i AEM. Detta kan vara vad som helst och behöver inte motsvara namnet på nyckelbehållaren som skapades med kommandot openssl.
  • KeyStore File: utdata för kommandot openssl pkcs12 (keystore.p12)
  • KeyStore File Password: Lösenordet som anges i openssl pkcs12-kommandot via -passout argument.
  • Private Key Alias: Värdet som anges för -name argumentet i openssl pkcs12-kommandot ovan (dvs. my-key).
  • Private Key Password: Lösenordet som anges i openssl pkcs12-kommandot via -passout argument.
FÖRSIKTIGHET

KeyStore-fillösenordet och lösenordet för den privata nyckeln är samma för båda indata. Om du anger ett lösenord som inte matchar importeras inte nyckeln.

Kontrollera att den privata nyckeln har lästs in i AEM nyckelbehållare

Verifiera privat nyckel i AEM
User>Keystore

När den privata nyckeln har lästs in från den angivna nyckelbehållaren till AEM nyckelbehållare visas den privata nyckelns metadata i användarens nyckelbehållarkonsol.

Lägga till den offentliga nyckeln i Adobe I/O

Den matchande offentliga nyckeln måste överföras till Adobe I/O för att AEM som har den offentliga nyckelns motsvarande privata nyckel ska kunna kommunicera säkert.

Skapa integrering med Adobe I/O

Skapa integrering med Adobe I/O

Create Adobe I/O Integration >New Integration

Om du vill skapa en ny integrering i Adobe I/O måste du överföra ett offentligt certifikat. Överför certificate.crt som genererats av kommandot openssl req.

Verifiera att de publika nycklarna har lästs in i Adobe I/O

Verifiera offentliga nycklar i Adobe I/O

De installerade offentliga nycklarna och deras förfallodatum visas i konsolen Integrations på Adobe I/O. Du kan lägga till flera offentliga nycklar via knappen Add a public key.

Nu AEM den privata nyckeln och Adobe I/O-integreringen innehåller motsvarande offentliga nyckel, vilket gör att AEM kan kommunicera säkert med Adobe I/O.

På denna sida