Questi non sembrano i dati del CA Issuer, sembrano i dati del Subject.. a meno che tu non abbia fatto un self signed con dati uguali.Originariamente inviato da iaco74
Ciao,
Ho capito il meccanismo per creare l'utente nei vari modi dando i privilegi desiderati.
se faccio il GRANT di un utente con solo require x509 ok riesco a connettermi da localhost (uso mysql a riga di comando come client per i test)
Se specifico REQUIRE ISSUER NEL GRANT non riesco più a connettermi.
e qui mi sorge il dubbio: nel require issuer specifico i dati del CA cerificate giusto ? (non quelli del server)
quindi
Presupponendo che i dati del CA CERTIFICATE erano questiCodice PHP:
GRANT ALL PRIVILEGES ON *.* TO 'mioutente'@'%' IDENTIFIED BY 'miapass' REQUIRE ISSUER
'/C=IT/ST=provincia/L=localita/O=miaorganizzazione/CN=mionome/Email=email@domain.com';
Country Name:IT
State or Province Namerovincia
Localitiy Name: localita
Organization Name: miaorganizzazione
Organization Unit Name: web
Common Name: mionome
Email adress: email@domain.com
Dovresti fare un
openssl x509 -text -in tuo_certificato.pem | grep Issuer | cut -d':' -f2 | sed -e 's/, /\//g'
per avere la stringa giusta. E se e' veramente un self signed, ricordati che i CN del server e del client NON devono coincidere, altrimenti succede un naming collision con risultati orribili.
Poi si, ovviamente si tratta dell'issuer del certificato del client.
[mysqld] e' per il server [mysql] e' per il client mysql, [client] e' per tutti i client in grado di riconoscere questa sezione.Altro dubbio:
nel file di conf di mysql (my.ini in window)
Ho letto un po ma senza trovare certezze, devo specificare i certificati nella sezione [client] [mysqld] e anche nella sezione [mysql] ?
Riporto my.ini di esempio
Codice PHP:
[client]
port=3306
# added ssl support
ssl-key=C:/Programmi/MySQL/MySQL Server 5.1/cert/client-key.pem
ssl-cert=C:/Programmi/MySQL/MySQL Server 5.1/cert/client-cert.pem
ssl-ca=C:/Programmi/MySQL/MySQL Server 5.1/cert/ca-cert.pem
[mysql]
default-character-set=utf8
ssl-key=C:/Programmi/MySQL/MySQL Server 5.1/cert/server-key.pem
ssl-cert=C:/Programmi/MySQL/MySQL Server 5.1/cert/server-cert.pem
ssl-ca=C:/Programmi/MySQL/MySQL Server 5.1/cert/ca-cert.pem
[mysqld]
# The TCP/IP Port the MySQL Server will listen on
port=3306
# added ssl support
ssl-key=C:/Programmi/MySQL/MySQL Server 5.1/cert/server-key.pem
ssl-cert=C:/Programmi/MySQL/MySQL Server 5.1/cert/server-cert.pem
ssl-ca=C:/Programmi/MySQL/MySQL Server 5.1/cert/ca-cert.pem
Ciao