2017-03-16 13 views
0

電子メールサーバーの現在の設定がバージョンコントロールにチェックインされています。Azure App ServiceからmailSettingsを設定する方法 - アプリケーション設定

<configuration> 
    <system.net> 
    <mailSettings> 
     <smtp deliveryMethod="network"> 
     <network host="..." port="25" password="..." userName="..." /> 
     </smtp> 
    </mailSettings> 
    </system.net> 
</configuration> 

他の開発者が私たちのメールサーバーでメールを送信できないように(少なくともパスワードは)バージョンコントロールから削除したいと思います。

私たちはアウトバウンド電子メールにSAASプロバイダを使用しています。このため、このサーバへのアクセスをファイアウォールを設定して制限することはできません。唯一の認証は、SAASプロバイダーが提供するユーザー名とパスワードを使用することです。

Azureのアプリケーション設定ブレードからmailSettingsを設定することは可能ですか?こうすることで、バージョンコントロールからパスワードを削除でき、(自動)展開時にweb.configを手動で更新する必要はありません。

+0

SmtpClientを使用してメールを送信するには? –

+0

はい、フードの下でSmtpClientを使用する[Postal](http://aboutcode.net/postal/smtp-config.html)を使用します。 – Waaghals

答えて

2

Waaghals、

あなたが郵便を使用している述べたように。彼らのGitHubでは、SmtpClientを作成する関数を提供できることがわかりました。

var smtpServerHost = CloudConfigurationManager.GetSetting("SmtpServerHost"); 
    var smtpServerPort = int.Parse(CloudConfigurationManager.GetSetting("SmtpServerPort")); 
    var smtpServerUserName = CloudConfigurationManager.GetSetting("SmtpServerUserName"); 
    var smtpServerPassword = CloudConfigurationManager.GetSetting("SmtpServerPassword"); 

    var client = new SmtpClient(smtpServerHost, smtpServerPort); 
    client.Credentials = new NetworkCredential(smtpServerUserName, smtpServerPassword); 

あなたはAzureのアプリケーションサービスのアプリケーション設定でメールの設定を変更することができますこの方法:そこから始まっ

、あなたはアプリケーション設定を使用して構築されるカスタムSmtpClientを作成することができます。

+0

varクライアント=新しいSmtpClient(smtpServerHost、smtpServerPort); client.DeliveryMethod = SmtpDeliveryMethod.Network; client.Credentials =新しいNetworkCredential(smtpServerUserName、smtpServerPassword); client.EnableSsl = true; EmailService emaiService =新しいEmailService(ViewEngines.Engines、()=> client); emaiService.SendAsync(email); –

関連する問題