LDAP-hitelesítés engedélyezése az Apache Cassandra felügyelt Azure-példányában
Az Apache Cassandra felügyelt Azure-példánya automatizált üzembe helyezési és skálázási műveleteket biztosít a felügyelt nyílt forráskódú Apache Cassandra adatközpontokhoz. Ez a cikk azt ismerteti, hogyan engedélyezheti az LDAP-hitelesítést a fürtök és adatközpontok számára.
Fontos
Az LDAP-hitelesítés nyilvános előzetes verzióban érhető el. Ez a szolgáltatás szolgáltatásiszint-szerződés nélkül érhető el, és éles számítási feladatokhoz nem ajánlott. További információ: Kiegészítő használati feltételek a Microsoft Azure előzetes verziójú termékeihez.
Előfeltételek
- Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot.
- Azure Managed Instance for Apache Cassandra-fürt. Tekintse át, hogyan hozhat létre Felügyelt Azure-példányt Apache Cassandra-fürthöz az Azure Portalon.
LDAP-kiszolgáló üzembe helyezése az Azure-ban
Ebben a szakaszban bemutatjuk, hogyan hozhat létre egyszerű LDAP-kiszolgálót egy Azure-beli virtuális gépen. Ha már fut LDAP-kiszolgáló, kihagyhatja ezt a szakaszt, és áttekintheti , hogyan engedélyezheti az LDAP-hitelesítést.
Virtuális gép üzembe helyezése az Azure-ban az Ubuntu Server 18.04 LTS használatával. Itt követheti az utasításokat.
Adjon dns-nevet a kiszolgálónak:
Telepítse a Dockert a virtuális gépre. Ezt az oktatóanyagot javasoljuk.
Másolja és illessze be a következő szöveget a kezdőkönyvtárba, és nyomja le az Enter billentyűt. Ez a parancs létrehoz egy fájlt, amely egy teszt LDAP-felhasználói fiókot tartalmaz.
mkdir ldap-user && cd ldap-user && cat >> user.ldif <<EOL dn: uid=admin,dc=example,dc=org uid: admin cn: admin sn: 3 objectClass: top objectClass: posixAccount objectClass: inetOrgPerson loginShell: /bin/bash homeDirectory: /home/admin uidNumber: 14583102 gidNumber: 14564100 userPassword: admin mail: admin@example.com gecos: admin EOL
Navigálás a kezdőlapra
cd ..
Futtassa az alábbi parancsot az LDAP-kiszolgálóhoz korábban létrehozott DNS-névre cserélve
<dnsname>
. Ez a parancs üzembe helyez egy LDAP-kiszolgálót, amelyen engedélyezve van a TLS egy Docker-tárolóban, és a korábban létrehozott felhasználói fájlt is átmásolja a tárolóba.sudo docker run --hostname <dnsname>.uksouth.cloudapp.azure.com --name <dnsname> -v $(pwd)/ldap-user:/container/service/slapd/assets/test --detach osixia/openldap:1.5.0
Másolja ki a tanúsítványmappát a tárolóból (cserélje le
<dnsname>
az LDAP-kiszolgálóhoz létrehozott DNS-névre):sudo docker cp <dnsname>:/container/service/slapd/assets/certs certs
Ellenőrizze, hogy helyes-e a DNS-név:
openssl x509 -in certs/ldap.crt -text
Másolja a fájlt a
ldap.crt
clouddrive-ra az Azure CLI-ben későbbi használatra.Adja hozzá a felhasználót az ldaphoz (cserélje le
<dnsname>
az LDAP-kiszolgálóhoz létrehozott DNS-névre):sudo docker container exec <dnsname> ldapadd -H ldap://<dnsname>.uksouth.cloudapp.azure.com -D "cn=admin,dc=example,dc=org" -w admin -f /container/service/slapd/assets/test/user.ldif
LDAP-hitelesítés engedélyezése
Fontos
Ha kihagyta a fenti szakaszt, mert már rendelkezik meglévő LDAP-kiszolgálóval, győződjön meg arról, hogy engedélyezve vannak a kiszolgáló SSL-tanúsítványai. A subject alternative name (dns name)
tanúsítványhoz megadott tartománynak meg kell egyeznie annak a kiszolgálónak a tartományával is, amelyen az LDAP üzemel, vagy a hitelesítés sikertelen lesz.
Az LDAP-hitelesítés jelenleg egy nyilvános előzetes verziójú szolgáltatás. Futtassa az alábbi parancsot a szükséges Azure CLI-bővítmény hozzáadásához:
az extension add --upgrade --name cosmosdb-preview
Állítsa a hitelesítési módszert "Ldap" értékre a fürtön, a megfelelő értékekkel helyettesítve
<resource group>
és<cluster name>
használva:az managed-cassandra cluster update -g <resource group> -c <cluster name> --authentication-method "Ldap"
Most állítsa be a tulajdonságokat az adatközpont szintjén. Cserélje le és
<cluster name>
írja be<resource group>
a megfelelő értékeket, valamint<dnsname>
az LDAP-kiszolgálóhoz létrehozott DNS-nevet.Feljegyzés
Az alábbi parancs a korábbi szakaszban található LDAP-beállításon alapul. Ha kihagyta ezt a szakaszt, mert már rendelkezik meglévő LDAP-kiszolgálóval, adja meg helyette a kiszolgáló megfelelő értékeit. Győződjön meg arról, hogy feltöltött egy tanúsítványfájlt, például
ldap.crt
a clouddrive-ra az Azure CLI-ben.ldap_search_base_distinguished_name='dc=example,dc=org' ldap_server_certificates='/usr/csuser/clouddrive/ldap.crt' ldap_server_hostname='<dnsname>.uksouth.cloudapp.azure.com' ldap_service_user_distinguished_name='cn=admin,dc=example,dc=org' ldap_service_user_password='admin' az managed-cassandra datacenter update -g `<resource group>` -c `<cluster name>` -d datacenter-1 --ldap-search-base-dn $ldap_search_base_distinguished_name --ldap-server-certs $ldap_server_certificates --ldap-server-hostname $ldap_server_hostname --ldap-service-user-dn $ldap_service_user_distinguished_name --ldap-svc-user-pwd $ldap_service_user_password
A parancs befejeződése után a CQLSH-t (lásd alább) vagy bármely Apache Cassandra nyílt forráskódú ügyfélillesztőt használhat a felügyelt példány adatközpontjához való csatlakozáshoz a fenti lépésben hozzáadott felhasználóval:
export SSL_VALIDATE=false cqlsh --debug --ssl <data-node-ip> -u <user> -p <password>