Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit c51bc3a

Browse filesBrowse files
committed
minor symfony#20308 [Doctrine] Update doctrine.rst on ssl documentation (lacpandore)
This PR was submitted for the 7.1 branch but it was merged into the 6.4 branch instead. Discussion ---------- [Doctrine] Update doctrine.rst on ssl documentation Added SSL configuration example for MySQL in Doctrine DBAL - Included YAML and XML configuration examples for setting up an SSL connection with MySQL using Doctrine DBAL in Symfony. - Explained how to use environment variables for specifying SSL certificate paths (`MYSQL_SSL_KEY`, `MYSQL_SSL_CERT`, `MYSQL_SSL_CA`). - Added a note on configuring the `.env.local` or `.env.local.php` files with the appropriate certificate paths. Commits ------- dff0d33 Update doctrine.rst on ssl documentation
2 parents 68ca943 + dff0d33 commit c51bc3a
Copy full SHA for c51bc3a

File tree

Expand file treeCollapse file tree

1 file changed

+57
-0
lines changed
Filter options
Expand file treeCollapse file tree

1 file changed

+57
-0
lines changed

‎reference/configuration/doctrine.rst

Copy file name to clipboardExpand all lines: reference/configuration/doctrine.rst
+57Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -470,5 +470,62 @@ If the ``dir`` configuration is set and the ``is_bundle`` configuration
470470
is ``true``, the DoctrineBundle will prefix the ``dir`` configuration with
471471
the path of the bundle.
472472

473+
SSL Connection with MySQL
474+
~~~~~~~~~~~~~~~~~~~~~~~~~
475+
476+
If you want to configure a secure SSL connection to MySQL in your Symfony application using Doctrine, you need to set specific options for the SSL certificates. Here's how to configure the connection using environment variables for the certificate paths:
477+
478+
.. configuration-block::
479+
480+
.. code-block:: yaml
481+
482+
doctrine:
483+
dbal:
484+
url: '%env(DATABASE_URL)%'
485+
server_version: '8.0.31'
486+
driver: 'pdo_mysql'
487+
options:
488+
# SSL private key (PDO::MYSQL_ATTR_SSL_KEY)
489+
1007: '%env(MYSQL_SSL_KEY)%'
490+
# SSL certificate (PDO::MYSQL_ATTR_SSL_CERT)
491+
1008: '%env(MYSQL_SSL_CERT)%'
492+
# SSL CA authority (PDO::MYSQL_ATTR_SSL_CA)
493+
1009: '%env(MYSQL_SSL_CA)%'
494+
495+
.. code-block:: xml
496+
497+
<?xml version="1.0" encoding="UTF-8" ?>
498+
<container xmlns="http://symfony.com/schema/dic/services"
499+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
500+
xmlns:doctrine="http://symfony.com/schema/dic/doctrine"
501+
xsi:schemaLocation="http://symfony.com/schema/dic/services
502+
https://symfony.com/schema/dic/services/services-1.0.xsd
503+
http://symfony.com/schema/dic/doctrine
504+
https://symfony.com/schema/dic/doctrine/doctrine-1.0.xsd">
505+
506+
<doctrine:config>
507+
<doctrine:dbal
508+
url="%env(DATABASE_URL)%"
509+
server-version="8.0.31"
510+
driver="pdo_mysql">
511+
512+
<doctrine:option key="1007">%env(MYSQL_SSL_KEY)%</doctrine:option>
513+
<doctrine:option key="1008">%env(MYSQL_SSL_CERT)%</doctrine:option>
514+
<doctrine:option key="1009">%env(MYSQL_SSL_CA)%</doctrine:option>
515+
</doctrine:dbal>
516+
</doctrine:config>
517+
</container>
518+
519+
Make sure that your environment variables are correctly set in your ``.env.local`` or ``.env.local.php`` file as follows:
520+
521+
.. code-block:: bash
522+
523+
MYSQL_SSL_KEY=/path/to/your/server-key.pem
524+
MYSQL_SSL_CERT=/path/to/your/server-cert.pem
525+
MYSQL_SSL_CA=/path/to/your/ca-cert.pem
526+
527+
This configuration secures your MySQL connection with SSL by specifying the paths to the required certificates.
528+
529+
473530
.. _DBAL documentation: https://www.doctrine-project.org/projects/doctrine-dbal/en/current/reference/configuration.html
474531
.. _`Doctrine Metadata Drivers`: https://www.doctrine-project.org/projects/doctrine-orm/en/current/reference/metadata-drivers.html

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.