パラメータ設定:Mail.json
## 注意事項
パラメータ変更時は[パラメータ変更時の確認事項](/ja/manual/parameter-edit)をご確認ください。
## 設定値
本パラメータファイルの設定値は下記の通りです。
# 各パラメータの説明
## SMTPサーバを使用する場合
|パラメータ名|設定例|説明|
|:--|:--|:--|
|SmtpHost|"smtp.example.com"|SMTPサーバのアドレスを指定。|
|SmtpPort|25|SMTPサーバのポートを指定。|
|SmtpUserName|"UserName"|SMTP-AUTHのユーザ名を指定。ユーザ認証を行わない場合にはnullを指定。|
|SmtpPassword|"Password"|SMTP-AUTHのパスワードを指定。ユーザ認証を行わない場合にはnullを指定。|
## SendGridを使用する場合
|パラメータ名|設定例|説明|
|:--|:--|:--|
|SmtpHost|"smtp.sendgrid.net"|SendGridのアドレスを指定。|
|SmtpPort|0|SendGridを使用する場合には設定不要。|
|SmtpUserName|"apikey"| ”apikey”(固定値)を指定。|
|SmtpPassword|"SG.xxxxxxx"|SendGridのAPIキーを指定。|
上記項目の記述例:
```
"SmtpHost": "smtp.sendgrid.net",
"SmtpPort": 0,
"SmtpUserName": "apikey",
"SmtpPassword": "SG.xxxxAPIキーxxxxxx...",
```
## 共通設定
|パラメータ名|設定例|説明|
|:--|:--|:--|
|SmtpEnableSsl|false|SSLを有効化する場合にはtrueを指定。trueに設定した場合、StartTlsの暗号化方式が適用されます。それ以外の方式を指定する場合はSecureSocketOptionsパラメータをご利用ください。|
|ServerCertificateValidationCallback|false|エラー「An error occurred while attempting to establish an SSL or TLS connection」の発生を抑制する場合はtrueを設定。|
|SecureSocketOptions|"SslOnConnect"|接続に使用する SSL/TLS 暗号化の方式を指定します。デフォルト値はnull。許容される文字列は MimeKitで利用可能な[Enumの名前](http://www.mimekit.net/docs/html/T_MailKit_Security_SecureSocketOptions.htm)をご参照ください。|
|FixedFrom|"fixed@example.com"|メールアドレスを指定した場合、メール送信時のfromアドレスとなります。nullを設定した場合には、ログインユーザのメールアドレスがfromとなります。|
|AllowedFrom|[ "support@example.com" ]|FixedFromがnull以外の場合に、AllowedFromに列挙されたメールアドレスに該当する場合には、FixedFromが使用されずログインユーザのメールアドレスがfromとなります。|
|SupportFrom|"support@example.com"|サポート用メールアドレスを指定。[メールによる二段階認証](/ja/manual/secondary-authentication)利用時は必須です。|
|InternalDomains|".example1.com,.example2.com"|メールの送信先ドメインを制限する場合には、ホワイトリストをカンマ区切りで指定。|
|AddressValidation|"\\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]+\\b"|メールアドレスの検証に使用する正規表現を指定。|
|Encoding|"shift_jis"|デフォルト値は null 。UTF-8 以外に変更する場合に明示的に指定。なおシステムで利用できないエンコーディング名の場合、設定読み込み時に SysLogs にエラー出力したうえで UTF-8 で送信を試みます。|
|ContentEncoding|"SevenBit"| デフォルト値は null 。許容される文字列は MimeKit で利用可能な [Enum の名前](http://www.mimekit.net/docs/html/T_MimeKit_ContentEncoding.htm)をご参照ください。|
本パラメータファイル自体を誤って外部に公開しないようにするセキュリティの観点より、
OSのシステム環境変数からユーザ認証情報を取得する機能が追加されました。(ver.1.2.21.0)
システム環境変数の命名規則:
|No|変数名|
|:--|:--|
|1|(サービス名)_Mail_SmtpUserName|
|2|(サービス名)_Mail_SmtpPassword|
これまでと同様に本パラメータファイルに設定することも可能です。
Azureの場合は [App Serviceの設定] -> [構成] -> [アプリケーション設定] から追加/編集することが可能です。
本パラメータファイルとシステム環境の両方に設定した場合の優先順位は以下のとおりです。
### SmtpUserNameの優先順
|優先順|設定値|
|:--|:--|
|1|本パラメータファイルの「SmtpUserName」|
|2|環境変数の「(サービス名)_Mail_SmtpUserName」|
### SmtpPasswordの優先順
|優先順|設定値|
|:--|:--|
|1|本パラメータファイルの「SmtpPassword」|
|2|環境変数の「(サービス名)_Mail_SmtpPassword」|
## 対応バージョン
|対応バージョン|内容|
|:--|:--|
|1.3.18.0 以降|ServerCertificateValidationCallbackを追加|
|1.3.49.0 以降|SecureSocketOptionsを追加|