0

web.config ファイルでユーザー名とパスワードを指定すると、ASP.NET Web ページのエラーを Windows イベント ログ、SQL Server データベース、および電子メール (Microsoft Exchange) に記録するためのヘルス モニタリングを正常にセットアップしました。ただし、ユーザー名とパスワードの指定からdefaultCredentials="true"web.config への指定に変更すると、電子メールを生成しようとすると、Windows イベント ログに次のエラー メッセージが表示されます。

System.Web.HttpException (0x80004005): Unable to send out an e-mail to the SMTP
server. Please ensure that the server specified in the <smtpMail> section is
valid. ---> System.Net.Mail.SmtpException: Mailbox unavailable. The server
response was: 5.7.1 Client does not have permissions to send as this sender

企業ドメインで Windows Vista を実行しています。私の Windows ログインは、Microsoft Exchange ログインと同じです。ログイン資格情報を web.config ファイルで明示的に指定すると機能するのに、使用するとdefaultCredentials="true"機能しない理由について、誰かが洞察を提供できますか? ユーザー名とパスワードを web.config ファイルに保存しなくても、healthMonitoring を介して自動メールを送信できる既知の解決策はありますか?

4

1 に答える 1

1

私はこの質問でタンブルウィード バッジを獲得したので、回答が他の人にとって大きな価値があるとは思えません。しかし、後日同じ罠に陥ることは避けられないことを知っていたので、自分の質問への回答を投稿しようと思いました...

同じドメイン内でメールを送信する場合、認証は必要ありません。そのため、指定する代わりに、defaultCredentials="true"認証に関連するすべてのフィールドを削除すると、メールが再び機能し始めました。

これは部分的な解決策にすぎないことに注意してください。今のところ、同じドメイン内のアドレスにのみメールを送信する必要があります。このドメインの外部に電子メールを送信することは、認証なしでは機能しないため、それが必要な場合は、設計図に戻ることになります...

于 2013-02-19T04:42:17.660 に答える