Azure FunctionsからAzure Databaseに接続する時に使うSSL証明書を構成情報に格納して利用する

以前、Azure Database for MySQLにAzure Functionsから接続するサンプルを作成しました。
こちらをデプロイ使用する際に、証明書をどうやって管理するのか悩んでいました。

正解かどうかはわかりませんが、構成情報に持たせる方法を思いついたので調査しました。

以下を参考に設定しました。

https://stackoverflow.com/questions/66501428/how-to-add-an-ssl-certificate-ca-cert-to-node-js-environment-variables-in-orde

証明書の情報を加工する

SSL証明書ですが、改行されているのでこれをこのままコピペして構成情報として使用するとエラーが出てしまいます。
エラーが出ないように\nを各行末に入れることで構成情報から使えるようになります。

ローカルではlocal.settings.jsonで構成情報を設定する

構成情報をローカルで持たせる時は、local.settings.jsonに値を設定します。

SQL_CRT="-----BEGIN CERTIFICATE-----\nすべての行末に\nをいれる-----END CERTIFICATE-----"

こんな感じにします。
しつこいですが、もともとの証明書で改行されているところで\nをいれてます。

Azure Potrtalで構成情報を設定する

実際にデプロイした時は、Azure上から構成情報を取得することになります。
なので、実際のFunctionsの構成情報から値を設定します。

詳しくは以下を確認してください。

設定するの内容は、local.settings.jsonで設定した内容と同じです。