Änderungen token generierung erfolgt besser

This commit is contained in:
ja
2021-10-13 13:51:21 +02:00
parent f345d97210
commit 6014061cfd
3 changed files with 84 additions and 73 deletions

View File

@@ -104,18 +104,18 @@
<asp:TextBox ID="txtEmail" runat="server" Width="250px" ValidationGroup="Valtxtemail" Font-Size="1.125em" Text="E-Mail" CssClass="bg-email-icon" style="margin-left:22px;color:#003680" OnClick="this.value='';"/> <asp:TextBox ID="txtEmail" runat="server" Width="250px" ValidationGroup="Valtxtemail" Font-Size="1.125em" Text="E-Mail" CssClass="bg-email-icon" style="margin-left:22px;color:#003680" OnClick="this.value='';"/>
<asp:RequiredFieldValidator ID="valreqtxtEmail" ControlToValidate="txtEmail" ValidationGroup="Valtxtemail" runat="server" Text="Require E-Mail Address" ></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="valreqtxtEmail" ControlToValidate="txtEmail" ValidationGroup="Valtxtemail" runat="server" Text="Require E-Mail Address" ></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ControlToValidate="txtEmail" runat="server" ID="regexval_txt_Email" ValidationGroup="Valtxtemail" ValidationExpression="[\w\.]+\@(\bverag.ag\b)" Display="Dynamic" ErrorMessage="The E-Mail has not the correct domain!" SetFocusOnError="true"></asp:RegularExpressionValidator> <asp:RegularExpressionValidator ControlToValidate="txtEmail" runat="server" ID="regexval_txt_Email" ValidationGroup="Valtxtemail" ValidationExpression="[\w\.]+\@(\bverag.ag\b)" Display="Dynamic" ErrorMessage="The E-Mail has not the correct domain!" SetFocusOnError="true"></asp:RegularExpressionValidator>
<asp:RegularExpressionValidator ControlToValidate="txtEmail" runat="server" ID="regexval_txt_Email_2" ValidationGroup="Valtxtemail" ValidationExpression="[\w\.]+\@[\w]+(?:\.[\w]{3}|\.[\w]{2}\.[\w]{2}|\.[\w]{2})\b" Display="Dynamic" ErrorMessage="The E-Mail has not the correct domain!" SetFocusOnError="true"></asp:RegularExpressionValidator>
</td></tr> </td></tr>
<tr style="color:#003680; height:30px;"> <tr style="color:#003680; height:30px;">
<td align="left" colspan="2"> <td align="left" colspan="2">
<asp:TextBox ID="txt_Username" runat="server" CssClass="bg-user-icon" ValidationGroup="Valtxtusername" Text="Username" Font-Size="1.125em" Width="250px" style="margin-left:22px;color:#003680" OnClick="this.value='';" /> <asp:TextBox ID="txt_Username" runat="server" CssClass="bg-user-icon" ValidationGroup="Valtxtusername" Text="Username" Font-Size="1.125em" Width="250px" style="margin-left:22px;color:#003680" OnClick="this.value='';" />
<asp:RegularExpressionValidator ControlToValidate="txt_Username" runat="server" ID="regexval_txt_Username" ValidationGroup="Valtxtusername" ValidationExpression="^(A-Z]).{4,30}$" Display="Dynamic" ErrorMessage="The Username does not meet the requirements!" SetFocusOnError="true"></asp:RegularExpressionValidator> <asp:RegularExpressionValidator ID="check_UserName_regex" ControlToValidate="txt_Username" ValidationGroup="Valtxtusername" runat="server" Display="Dynamic" SetFocusOnError="true" ValidationExpression="^([a-zA-Z1]{4,30})$"></asp:RegularExpressionValidator>
</td></tr> </td></tr>
<tr style="color:#003680; height:30px;"> <tr style="color:#003680; height:30px;">
<td align="right" colspan="2"> <td align="right" colspan="2">
<asp:Label ID="lblMessage" runat="server" /> <asp:Label ID="lblMessage" runat="server" />
</td></tr> </td></tr>
<tr style="color:#003680; height:30px;"><td> <tr style="color:#003680; height:30px;"><td>
<asp:Button ID="btn_Send" Text="Send" runat="server" Width="330px" Enabled="true" Font-Size="20px" style="margin-left:22px;border:none" OnClick="btn_Send_Click" /> <asp:Button ID="btn_Send" Text="Send" runat="server" Width="330px" Enabled="true" Font-Size="20px" style="margin-left:22px;border:none" OnClick="btn_Send_Click" />
</td></tr> </td></tr>
<tr><td> <tr><td>

View File

@@ -13,18 +13,25 @@ Partial Class login_ForgotPW
End Sub End Sub
Protected Sub btn_Send_Click(sender As Object, e As EventArgs) Protected Sub btn_Send_Click(sender As Object, e As EventArgs)
Dim username As String Dim username As String = String.Empty
Dim password As String Dim password As String = String.Empty
Dim email As String Dim email As String = String.Empty
Dim tokenname As String Dim tokenname As String = String.Empty
valreqtxtEmail.Validate() valreqtxtEmail.Validate()
check_UserName_regex.Validate()
If valreqtxtEmail.IsValid() = True Then If valreqtxtEmail.IsValid = True Then
username = txt_Username.Text
password = String.Empty
email = txtEmail.Text email = txtEmail.Text
tokenname = String.Empty ElseIf valreqtxtEmail.IsValid = False Then
valreqtxtEmail.ErrorMessage = "ANnotation: The given Daomain is not the company domain."
regexval_txt_Email.Validate()
valreqtxtEmail.IsValid = True
End If End If
If check_UserName_regex.IsValid = True Then
username = txt_Username.Text
Else
check_UserName_regex.ErrorMessage = "No valid Username found!"
End If
If String.IsNullOrEmpty(email) = False AndAlso String.IsNullOrEmpty(tokenname) = True AndAlso String.IsNullOrEmpty(password) = True AndAlso String.IsNullOrEmpty(username) = False Then
'cDBFunctions.GetNewOpenConnection() 'cDBFunctions.GetNewOpenConnection()
Dim ConnectionString = String.Empty Dim ConnectionString = String.Empty
If HttpContext.Current.Request.ServerVariables("SERVER_NAME") = "localhost" Then If HttpContext.Current.Request.ServerVariables("SERVER_NAME") = "localhost" Then
@@ -65,6 +72,7 @@ Partial Class login_ForgotPW
End Using End Using
con.Close() con.Close()
End Using End Using
tokenname = genToken(username, password, email) tokenname = genToken(username, password, email)
Session.Add("TokenforEmail", tokenname) Session.Add("TokenforEmail", tokenname)
If SendEmail(username, password, email, tokenname) = True Then If SendEmail(username, password, email, tokenname) = True Then
@@ -86,6 +94,9 @@ Partial Class login_ForgotPW
lblMessage.ForeColor = Color.Red lblMessage.ForeColor = Color.Red
lblMessage.Text = "Diese E-Mail ist nicht in unserer Datenbank vorhanden." lblMessage.Text = "Diese E-Mail ist nicht in unserer Datenbank vorhanden."
End If End If
Else
MsgBox("Die Felder sind nicht alle befüllt worden.", MsgBoxStyle.Critical, "Error08")
End If
End Sub End Sub
'Function RandomString(r As Random, max As Integer) As String 'Function RandomString(r As Random, max As Integer) As String
@@ -131,7 +142,7 @@ Partial Class login_ForgotPW
If getDateoftoken(tokennametemp) = True Then If getDateoftoken(tokennametemp) = True Then
' Dim attachment As Attachment = New Attachment(File.OpenRead(excel), "Kundenliste.xlsx") ' Dim attachment As Attachment = New Attachment(File.OpenRead(excel), "Kundenliste.xlsx")
' Msg.Attachments.Add(attachment) ' Msg.Attachments.Add(attachment)
If Not String.IsNullOrEmpty(mailto) AndAlso Not String.IsNullOrEmpty(Betreff) AndAlso String.IsNullOrEmpty(htmlbody) Then If Not String.IsNullOrEmpty(mailto) AndAlso Not String.IsNullOrEmpty(Betreff) AndAlso Not String.IsNullOrEmpty(htmlbody) Then
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(mailto, Betreff, htmlbody) VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(mailto, Betreff, htmlbody)
Else Else
MsgBox("Error07: Die Paramter wurden nicht alle gesetzt. Bitte Felder überprüfen.", vbAbort, "Error07") MsgBox("Error07: Die Paramter wurden nicht alle gesetzt. Bitte Felder überprüfen.", vbAbort, "Error07")

View File

@@ -128,21 +128,21 @@
<td align="left"> <td align="left">
<asp:TextBox ID="CustomerID" CssClass="bg-UID-icon" runat="server" required="true" ValidationGroup="txt_checkUID" OnTextChanged="CustomerID_TextChanged" Width="250" Text="User-ID / E-Mail" OnClick="this.value='';" style="margin-left: 22px;"></asp:TextBox> <asp:TextBox ID="CustomerID" CssClass="bg-UID-icon" runat="server" required="true" ValidationGroup="txt_checkUID" OnTextChanged="CustomerID_TextChanged" Width="250" Text="User-ID / E-Mail" OnClick="this.value='';" style="margin-left: 22px;"></asp:TextBox>
<asp:RequiredFieldValidator ID="CustomerIDrequired" runat="server" ControlToValidate="CustomerID" SetFocusOnError="true" ValidationGroup="txt_checkUID" ErrorMessage="Please enter the User-ID."></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="CustomerIDrequired" runat="server" ControlToValidate="CustomerID" SetFocusOnError="true" ValidationGroup="txt_checkUID" ErrorMessage="Please enter the User-ID."></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="valid_getNumberInput" ControlToValidate="CustomerID" ValidationGroup="txt_checkUID" runat="server" Display="Dynamic" SetFocusOnError="true" ValidationExpression="[0-9].{4,10}"></asp:RegularExpressionValidator> <asp:RegularExpressionValidator ID="valid_getNumberInput" ControlToValidate="CustomerID" ValidationGroup="txt_checkUID" runat="server" Display="Dynamic" SetFocusOnError="true" ValidationExpression="[0-9]{4,10}"></asp:RegularExpressionValidator>
</td> </td>
</tr> </tr>
<tr style="color:#003680; height:46px;"> <tr style="color:#003680; height:46px;">
<td align="left" colspan="2"> <td align="left" colspan="2">
<asp:TextBox ID="UserName" runat="server" CssClass="bg-user-icon" TextMode="SingleLine" Width = "250" ValidationGroup="txt_Username" required="true" Font-Size="1.125em" style="margin-left:22px;color:#003680" OnClick="this.value='';" Text="Username"></asp:TextBox> <asp:TextBox ID="UserName" runat="server" CssClass="bg-user-icon" TextMode="SingleLine" Width = "250" ValidationGroup="txt_Username" required="true" Font-Size="1.125em" style="margin-left:22px;color:#003680" OnClick="this.value='';" Text="Username"></asp:TextBox>
<asp:RequiredFieldValidator ID="UserNamerequired" runat="server" ControlToValidate="UserName" ErrorMessage="Please enter the Username." ToolTip="The Username is required." ValidationGroup="txt_Username"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="UserNamerequired" runat="server" ControlToValidate="UserName" ErrorMessage="Please enter the Username." ToolTip="The Username is required." ValidationGroup="txt_Username"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="check_UserName_regex" ControlToValidate="UserName" ValidationGroup="txt_check_username" runat="server" Display="Dynamic" SetFocusOnError="true" ValidationExpression="^(A-Z][a-z]).{4,30}$"></asp:RegularExpressionValidator> <asp:RegularExpressionValidator ID="check_UserName_regex" ControlToValidate="UserName" ValidationGroup="txt_check_username" runat="server" Display="Dynamic" SetFocusOnError="true" ValidationExpression="^([a-zA-Z]{4,30})$"></asp:RegularExpressionValidator>
</td> </td>
</tr> </tr>
<tr style="color:#003680; height:46px;"> <tr style="color:#003680; height:46px;">
<td align="left" colspan="2"> <td align="left" colspan="2">
<asp:TextBox ID="Password" runat="server" CssClass="bg-key-icon" TextMode="Password" required="true" Width = "250" Font-Size="1.125em" ValidationGroup="chk_PWField" MaxLength="30" AutoCompleteType="Enabled" CausesValidation="true" style="margin-left:22px;color:#003680" OnClick="this.value='';" Text="Password"></asp:TextBox> <asp:TextBox ID="Password" runat="server" CssClass="bg-key-icon" TextMode="Password" required="true" Width = "250" Font-Size="1.125em" ValidationGroup="chk_PWField" MaxLength="30" AutoCompleteType="Enabled" CausesValidation="true" style="margin-left:22px;color:#003680" OnClick="this.value='';" Text="Password"></asp:TextBox>
<asp:RequiredFieldValidator ID="Passwordrequired" runat="server" ControlToValidate="Password" ErrorMessage="Password is needed to authenticate." ToolTip="Please enter the Password." ValidationGroup="chk_PWField"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="Passwordrequired" runat="server" ControlToValidate="Password" ErrorMessage="Password is needed to authenticate." ToolTip="Please enter the Password." ValidationGroup="chk_PWField"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="checkpwdREGEX" ControlToValidate="Password" ValidationGroup="chk_PWField" runat="server" Display="Dynamic" SetFocusOnError="true" ValidationExpression="^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^a-zA-Z\d]).{4,35}$"></asp:RegularExpressionValidator> <asp:RegularExpressionValidator ID="checkpwdREGEX" ControlToValidate="Password" ValidationGroup="chk_PWField" runat="server" Display="Dynamic" SetFocusOnError="true" ValidationExpression="^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^a-zA-Z\d]){4,35}$"></asp:RegularExpressionValidator>
</td> </td>
</tr> </tr>
<tr style="color:#003680; height:23px;"> <tr style="color:#003680; height:23px;">