Activez l'authentification sur un système back-end de stockage ONTAP
ASTRA Control Center offre deux modes d'authentification d'un backend ONTAP :
-
Authentification basée sur les informations d'identification : le nom d'utilisateur et le mot de passe d'un utilisateur ONTAP avec les autorisations requises. Vous devez utiliser un rôle de connexion de sécurité prédéfini, tel que admin ou vsadmin, pour assurer une compatibilité maximale avec les versions de ONTAP.
-
Authentification basée sur un certificat : Astra Control Center peut également communiquer avec un cluster ONTAP à l'aide d'un certificat installé sur le back-end. Vous devez utiliser le certificat client, la clé et le certificat de l'autorité de certification approuvée, le cas échéant (recommandé).
Vous pouvez par la suite mettre à jour les systèmes back-end existants pour passer d'un type d'authentification à une autre. Une seule méthode d'authentification est prise en charge à la fois.
Activer l'authentification basée sur les informations d'identification
ASTRA Control Center requiert les identifiants d'un cluster-scoped admin
Pour communiquer avec le backend ONTAP. Vous devez utiliser des rôles standard prédéfinis, tels que admin
. La compatibilité avec les futures versions d'ONTAP qui pourraient exposer les API de fonctionnalités à utiliser dans les futures versions d'Astra Control Center est ainsi garantie.
Un rôle de connexion de sécurité personnalisé peut être créé et utilisé avec Astra Control Center, mais il n'est pas recommandé. |
Un exemple de définition de back-end se présente comme suit :
{ "version": 1, "backendName": "ExampleBackend", "storageDriverName": "ontap-nas", "managementLIF": "10.0.0.1", "dataLIF": "10.0.0.2", "svm": "svm_nfs", "username": "admin", "password": "secret" }
La définition du back-end est le seul endroit où les informations d'identification sont stockées en texte brut. La création ou la mise à jour d'un back-end est la seule étape qui nécessite la connaissance des informations d'identification. Il s'agit donc d'une opération réservée à l'administrateur du stockage ou de Kubernetes.
Activer l'authentification basée sur certificat
ASTRA Control Center peut utiliser des certificats pour communiquer avec les systèmes back-end ONTAP, nouveaux et existants. Vous devez entrer les informations suivantes dans la définition du back-end.
-
clientCertificate
: Certificat client. -
clientPrivateKey
: Clé privée associée. -
trustedCACertificate
: Certificat de l'autorité de certification approuvée. Si vous utilisez une autorité de certification approuvée, ce paramètre doit être fourni. Ceci peut être ignoré si aucune autorité de certification approuvée n'est utilisée.
Vous pouvez utiliser l'un des types de certificats suivants :
-
Certificat auto-signé
-
Certificat tiers
Activez l'authentification avec un certificat auto-signé
Un flux de travail type comprend les étapes suivantes.
-
Générez un certificat client et une clé. Lors de la génération, définissez le nom commun (CN) sur l'utilisateur ONTAP pour s'authentifier en tant que.
openssl req -x509 -nodes -days 1095 -newkey rsa:2048 -keyout k8senv.key -out k8senv.pem -subj "/C=US/ST=NC/L=RTP/O=NetApp/CN=<common-name>"
-
Installez le certificat client de type
client-ca
Et sur le cluster ONTAP.security certificate install -type client-ca -cert-name <certificate-name> -vserver <vserver-name> security ssl modify -vserver <vserver-name> -client-enabled true
-
Vérifiez que le rôle de connexion de sécurité ONTAP prend en charge la méthode d'authentification par certificat.
security login create -user-or-group-name vsadmin -application ontapi -authentication-method cert -vserver <vserver-name> security login create -user-or-group-name vsadmin -application http -authentication-method cert -vserver <vserver-name>
-
Tester l'authentification à l'aide du certificat généré. Remplacer <LIF> et <vserver name> de ONTAP par l'IP et le nom du SVM de la LIF de gestion. Vous devez vous assurer que le LIF a sa politique de service définie sur
default-data-management
.curl -X POST -Lk https://<ONTAP-Management-LIF>/servlets/netapp.servlets.admin.XMLrequest_filer --key k8senv.key --cert ~/k8senv.pem -d '<?xml version="1.0" encoding="UTF-8"?><netapp xmlns=http://www.netapp.com/filer/admin version="1.21" vfiler="<vserver-name>"><vserver-get></vserver-get></netapp>
-
À l'aide des valeurs obtenues à l'étape précédente, ajoutez le back-end de stockage dans l'interface utilisateur d'Astra Control Center.
Activez l'authentification à l'aide d'un certificat tiers
Si vous disposez d'un certificat tiers, vous pouvez configurer l'authentification basée sur un certificat à l'aide de ces étapes.
-
Générer la clé privée et la RSC :
openssl req -new -newkey rsa:4096 -nodes -sha256 -subj "/" -outform pem -out ontap_cert_request.csr -keyout ontap_cert_request.key -addext "subjectAltName = DNS:<ONTAP_CLUSTER_FQDN_NAME>,IP:<ONTAP_MGMT_IP>”
-
Transmettez la RSC à l'autorité de certification Windows (autorité de certification tierce) et émettez le certificat signé.
-
Téléchargez le certificat signé et nommez-le « ontap_signed_cert.crt ».
-
Exportez le certificat racine à partir de l'autorité de certification Windows (autorité de certification tierce).
-
Nommez ce fichier
ca_root.crt
Vous disposez maintenant des trois fichiers suivants :
-
Clé privée :
ontap_signed_request.key
(Il s'agit de la clé correspondante pour le certificat de serveur dans ONTAP. Elle est nécessaire lors de l'installation du certificat du serveur.) -
Certificat signé:
ontap_signed_cert.crt
(Il s'agit également du certificat de serveur dans ONTAP.) -
Certificat CA racine :
ca_root.crt
(Il s'agit également du certificat Server-ca dans ONTAP.)
-
-
Installez ces certificats dans ONTAP. Générer et installer
server
etserver-ca
Certificats sur ONTAP.Développez pour Sample.yaml
# Copy the contents of ca_root.crt and use it here. security certificate install -type server-ca Please enter Certificate: Press <Enter> when done -----BEGIN CERTIFICATE----- <certificate details> -----END CERTIFICATE----- You should keep a copy of the CA-signed digital certificate for future reference. The installed certificate's CA and serial number for reference: CA: serial: The certificate's generated name for reference: === # Copy the contents of ontap_signed_cert.crt and use it here. For key, use the contents of ontap_cert_request.key file. security certificate install -type server Please enter Certificate: Press <Enter> when done -----BEGIN CERTIFICATE----- <certificate details> -----END CERTIFICATE----- Please enter Private Key: Press <Enter> when done -----BEGIN PRIVATE KEY----- <private key details> -----END PRIVATE KEY----- Enter certificates of certification authorities (CA) which form the certificate chain of the server certificate. This starts with the issuing CA certificate of the server certificate and can range up to the root CA certificate. Do you want to continue entering root and/or intermediate certificates {y|n}: n The provided certificate does not have a common name in the subject field. Enter a valid common name to continue installation of the certificate: <ONTAP_CLUSTER_FQDN_NAME> You should keep a copy of the private key and the CA-signed digital certificate for future reference. The installed certificate's CA and serial number for reference: CA: serial: The certificate's generated name for reference: == # Modify the vserver settings to enable SSL for the installed certificate ssl modify -vserver <vserver_name> -ca <CA> -server-enabled true -serial <serial number> (security ssl modify) == # Verify if the certificate works fine: openssl s_client -CAfile ca_root.crt -showcerts -servername server -connect <ONTAP_CLUSTER_FQDN_NAME>:443 CONNECTED(00000005) depth=1 DC = local, DC = umca, CN = <CA> verify return:1 depth=0 verify return:1 write W BLOCK --- Certificate chain 0 s: i:/DC=local/DC=umca/<CA> -----BEGIN CERTIFICATE----- <Certificate details>
-
Créez le certificat client pour le même hôte pour la communication sans mot de passe. ASTRA Control Center utilise ce processus pour communiquer avec ONTAP.
-
Générer et installer les certificats client sur ONTAP :
Développez pour Sample.yaml
# Use /CN=admin or use some other account which has privileges. openssl req -x509 -nodes -days 1095 -newkey rsa:2048 -keyout ontap_test_client.key -out ontap_test_client.pem -subj "/CN=admin" Copy the content of ontap_test_client.pem file and use it in the below command: security certificate install -type client-ca -vserver <vserver_name> Please enter Certificate: Press <Enter> when done -----BEGIN CERTIFICATE----- <Certificate details> -----END CERTIFICATE----- You should keep a copy of the CA-signed digital certificate for future reference. The installed certificate's CA and serial number for reference: CA: serial: The certificate's generated name for reference: == ssl modify -vserver <vserver_name> -client-enabled true (security ssl modify) # Setting permissions for certificates security login create -user-or-group-name admin -application ontapi -authentication-method cert -role admin -vserver <vserver_name> security login create -user-or-group-name admin -application http -authentication-method cert -role admin -vserver <vserver_name> == #Verify passwordless communication works fine with the use of only certificates: curl --cacert ontap_signed_cert.crt --key ontap_test_client.key --cert ontap_test_client.pem https://<ONTAP_CLUSTER_FQDN_NAME>/api/storage/aggregates { "records": [ { "uuid": "f84e0a9b-e72f-4431-88c4-4bf5378b41bd", "name": "<aggr_name>", "node": { "uuid": "7835876c-3484-11ed-97bb-d039ea50375c", "name": "<node_name>", "_links": { "self": { "href": "/api/cluster/nodes/7835876c-3484-11ed-97bb-d039ea50375c" } } }, "_links": { "self": { "href": "/api/storage/aggregates/f84e0a9b-e72f-4431-88c4-4bf5378b41bd" } } } ], "num_records": 1, "_links": { "self": { "href": "/api/storage/aggregates" } } }%
-
Ajoutez le système back-end de stockage dans l'interface utilisateur d'Astra Control Center et fournissez les valeurs suivantes :
-
Certificat client : ontap_test_client.pem
-
Clé privée : ontap_test_client.key
-
Certificat CA de confiance : ontap_signed_cert.crt
-