ProTech's home page

ProTech-Online.com

Microsoft Visual Basic ASPX code example modify user details behind code webpage.

Imports System.Data.SqlClient
Imports System.Security.Cryptography
Imports System.Web.Configuration
Partial Class admin_ModifyUserDetails
    Inherits System.Web.UI.Page
    Private Shared oldPassword As String
    Private Shared DecryptedStrAsString As String
    Protected Sub UserGrid_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles UserGrid.SelectedIndexChanged
        Dim UserName As String = UserGrid.SelectedValue.ToString()
        UserSelected.Text = UserName
        DetailsPanel.Visible = True
        PickPanel.Visible = False
        Try
            UserRole.Text = Roles.GetRolesForUser(UserName)(0)
            Dim tmpuser As MembershipUser = Membership.GetUser(UserName)
            oldPassword = tmpuser.GetPassword
            tbPassword.Text = oldPassword
            Dim myConnection As SqlConnection = New SqlConnection(WebConfigurationManager.ConnectionStrings("TestConnectionString").ToString())
            myConnection.Open()
            Dim myCommand As SqlCommand = New SqlCommand("get_cards", myConnection)
            myCommand.CommandType = System.Data.CommandType.StoredProcedure
            myCommand.Parameters.AddWithValue("@userid", UserSelected.Text)
            Dim reader As SqlDataReader = myCommand.ExecuteReader()
            If Not reader.HasRows Then
                reader.Close()
                myConnection.Close()
                Exit Sub
            End If
            Dim cardnumber As String = ""
            Dim lastfour As String = ""
            Dim privatekey As String = ""
            While reader.Read()
                cardnumber = reader(0).ToString()
                lastfour = reader(1).ToString()
                privatekey = reader(2).ToString()
            End While
            reader.Close()
            myConnection.Close()
            Dim RSA3 As RSACryptoServiceProvider = New RSACryptoServiceProvider()
            RSA3.FromXmlString(privatekey)
            Dim DecryptedStrAsByte As Byte() = RSA3.Decrypt(Convert.FromBase64String(cardnumber), False)
            DecryptedStrAsString = System.Text.Encoding.Unicode.GetString(DecryptedStrAsByte)
            tbCreditCardM.Text = DecryptedStrAsString
        Catch ex As Exception
            Response.Write(ex.Message)
        End Try
    End Sub
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Try
            If UserSelected.Text = "" Then
                PickPanel.Visible = True
                DetailsPanel.Visible = False
            Else
                DetailsPanel.Visible = True
                PickPanel.Visible = False
            End If
        Catch ex As Exception
            Response.Write(ex.Message)
        End Try
    End Sub
    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Try
            Roles.RemoveUserFromRole(UserSelected.Text, Roles.GetRolesForUser(UserSelected.Text)(0))
            Roles.AddUserToRole(UserSelected.Text, UserRole.Text)
            If Not String.IsNullOrEmpty(tbCreditCardM.Text) And tbCreditCardM.Text <> Application.Get("DecryptedStrAsString") Then
                Dim RSA As RSACryptoServiceProvider = New RSACryptoServiceProvider()
                Dim publickey As String = RSA.ToXmlString(False)
                Dim privatekey As String = RSA.ToXmlString(True)
                Dim data As String = tbCreditCardM.Text
                Dim RSA2 As RSACryptoServiceProvider = New RSACryptoServiceProvider()
                RSA2.FromXmlString(publickey)
                Dim EncryptedByteData As Byte() = RSA2.Encrypt(System.Text.Encoding.Unicode.GetBytes(data), False)
                Dim EncryptedStrAsString As String = Convert.ToBase64String(EncryptedByteData)
                Dim myConnection As SqlConnection = New SqlConnection(WebConfigurationManager.ConnectionStrings("TestConnectionString").ToString())
                myConnection.Open()
                Dim myCommand As SqlCommand = New SqlCommand("add_cards", myConnection)
                myCommand.CommandType = System.Data.CommandType.StoredProcedure
                myCommand.Parameters.AddWithValue("@userid", UserSelected.Text)
                myCommand.Parameters.AddWithValue("@cardnumber", EncryptedStrAsString)
                myCommand.Parameters.AddWithValue("@lastfour", tbCreditCardM.Text.Substring(tbCreditCardM.Text.Length - 4, 4))
                myCommand.Parameters.AddWithValue("@privatekey", privatekey)
                myCommand.Parameters.AddWithValue("@publickey", publickey)
                myCommand.ExecuteNonQuery()
                myConnection.Close()
            End If
            If Not tbPassword.Text = oldPassword Then
                Dim tmpuser As MembershipUser = Membership.GetUser(UserSelected.Text)
                'Dim tmppassword As String = tmpuser.ResetPassword
                Dim tester As Boolean = tmpuser.ChangePassword(oldPassword, tbPassword.Text)
                If Not tester Then
                    RegularExpressionValidator2.IsValid = False
                End If
            End If
        Catch ex As Exception
            Response.Write(ex.Message)
        End Try
    End Sub
End Class


Copyright © 2013 ProTechs-Online.com; All rights reserved.