ChangePassword.MailDefinition Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém uma referência a uma coleção de propriedades que definem a mensagem de email que é enviada aos usuários depois que eles alteraram a senha.
public:
property System::Web::UI::WebControls::MailDefinition ^ MailDefinition { System::Web::UI::WebControls::MailDefinition ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
[System.Web.UI.Themeable(false)]
public System.Web.UI.WebControls.MailDefinition MailDefinition { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
[<System.Web.UI.Themeable(false)>]
member this.MailDefinition : System.Web.UI.WebControls.MailDefinition
Public ReadOnly Property MailDefinition As MailDefinition
Valor da propriedade
Uma referência a um objeto MailDefinition que define a mensagem de email enviada a um novo usuário.
- Atributos
Exceções
A propriedade From não está definida como um endereço de email.
Exemplos
O exemplo de código a seguir mostra como usar a propriedade MailDefinition para definir uma mensagem de email que é enviada aos usuários que alteram suas senhas. Ele pressupõe que há um arquivo chamado MailFile.txt
que contém o texto da mensagem de email a ser enviada.
Para poder enviar mensagens de email aos usuários, você deve configurar um servidor de email no arquivo Web.config para seu aplicativo. Para obter mais informações, consulte Como instalar e configurar servidores virtuais SMTP no IIS 6.0.
<%@ page language="C#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Changepassword1_SendingMail(object sender, MailMessageEventArgs e)
{
// Set mail message fields.
e.Message.Subject = "New user on Web site.";
// Replace placeholder text in message body with
// information provided by the user.
e.Message.Body = e.Message.Body.Replace("<%ChangedDate%>", (DateTime.Now.ToString()) );
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:changepassword id="Changepassword1" runat="server"
maildefinition-bodyfilename="~/MailFiles/mailfile.txt"
maildefinition-from="userAdmin@your.site.name.here"
onsendingmail="Changepassword1_SendingMail">
</asp:changepassword>
</div>
</form>
</body>
</html>
<%@ page language="VB"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub Changepassword1_SendingMail(ByVal sender As Object, ByVal e As MailMessageEventArgs)
' Set mail message fields.
e.Message.Subject = "New user on Web site."
' Replace placeholder text in message body with information
' provided by the user.
e.Message.Body = e.Message.Body.Replace("<%ChangedDate%>", DateTime.Now.ToString())
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:changepassword id="Changepassword1" runat="server"
maildefinition-bodyfilename="~/MailFiles/mailfile.txt"
maildefinition-from="userAdmin@your.site.name.here"
onsendingmail="Changepassword1_SendingMail">
</asp:changepassword>
</div>
</form>
</body>
</html>
Comentários
A propriedade MailDefinition retorna uma referência a um grupo de propriedades que você usa para definir o formato e o conteúdo da mensagem de email enviada aos usuários depois que eles alterarem a senha. As configurações comuns incluem a linha de assunto e o endereço de retorno do remetente. Para obter uma lista completa de propriedades, consulte MailDefinition.
A propriedade MailDefinition é somente leitura; no entanto, você pode definir as propriedades do objeto MailDefinition que ele retorna. Você pode definir essas propriedades no formulário propriedade-
de subpropriedade, em que subpropriedade representa uma propriedade da classe MailDefinition (por exemplo, MailDefinition-Subject
). Você também pode definir as propriedades programaticamente no formulário Property.
Subproperty (por exemplo,MailDefinition.Subject
).
Uma mensagem de email será enviada somente se o usuário tiver um endereço de email registrado com o provedor de associação e se a propriedade BodyFileName da propriedade MailDefinition apontar para um arquivo válido. Se a propriedade BodyFileName estiver definida, a propriedade From deverá ser definida como um endereço de email; caso contrário, uma exceção HttpException é gerada.
Se a mensagem de email for criada a partir do objeto MailDefinition, ela fará as substituições mostradas na tabela a seguir. O texto de substituição não diferencia maiúsculas de minúsculas.
Texto de substituição | Substituído por |
---|---|
<%UserName %> |
O nome de usuário do site do usuário. |
<%%> de senha | A nova senha para o usuário. |
Se a propriedade IsBodyHtml do objeto MailDefinition for true
, o conteúdo da mensagem de email será codificado em HTML para proteger contra vulnerabilidades de segurança de script entre sites para o destinatário da mensagem.
Você pode usar o evento SendingMail para modificar o objeto MailMessage criado pelo objeto MailDefinition.
Importante
Enviar nomes de conta de usuário ou senhas por email é uma ameaça à segurança em potencial. As mensagens de email normalmente são enviadas em texto sem formatação e podem ser lidas por aplicativos especiais de "detecção" de rede. Para melhorar a segurança, use as mitigações descritas no Proteção de Controles de Logon.
Essa propriedade não pode ser definida por temas ou temas de folha de estilos. Para obter mais informações, consulte ThemeableAttribute e ASP.NET Temas e Peles.
Aplica-se a
Confira também
- Visão geral dos controles de logon do ASP.NET
- personalizando a aparência e o comportamento dos controles de logon do ASP.NET
- modelos de controles do servidor Web ASP.NET
- Como exibir informações diferentes para usuários anônimos e conectados
- Guia de Segurança da Ferramenta de Administração de Site
- protegendo controles de logon
- práticas básicas de segurança para aplicativos Web
- protegendo de associação