• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 387
  • Last Modified:

I am trying to get the username from the login screen to write it to the database

I am trying to get the username on login form and assign it to a variable and write it to the database - Below is what I have so far, but I am stuck
this is the login page..........Please help
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Login.aspx.cs" Inherits="Default2" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Login</title>
</head>
<body>
    <form id="form1" runat="server">
    <div align = "Left">
        <table style="width: 100%;">
            <tr>
                <td><asp:Label ID="Label3" runat="server" Text="Domain:  "></asp:Label></td>
                <td><asp:TextBox ID="txtBxDomain" runat="server" text="Domain" ReadOnly="true"></asp:TextBox></td>
            </tr>
            <tr>
                <td><asp:Label ID="Label1" runat="server" Text="Username:"></asp:Label></td>
                <td><asp:TextBox ID="txtBxUser" runat="server"></asp:TextBox></td>
            </tr>
            <tr>
                <td><asp:Label ID="Label2" runat="server" Text="Password:"></asp:Label></td>
                <td><asp:TextBox textmode="password" ID="txtBxPass" runat="server"></asp:TextBox></td>
            </tr>
        </table>
       <asp:Button ID="btnLogon" runat="server" Text="Verify" onclick="Submit_ServerClick"/>
       <br /><asp:Label ID="lblError" runat="server"></asp:Label>
    </div>
    
    </form>
</body>
</html>

Open in new window

this is the code behind
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Security.Principal;
using System.DirectoryServices;

public partial class Default2 : System.Web.UI.Page
{
    
    protected void Page_Load(object sender, EventArgs e)
    {
        
    }
    protected void Submit_ServerClick(object sender, EventArgs e)
        {
            //Response.Redirect("Default.aspx");
            //program p = new program();
            
        
            if (!String.IsNullOrEmpty(txtBxDomain.Text.Trim()) && !String.IsNullOrEmpty(txtBxUser.Text.Trim()))
            {


                if (program.LogonHelper.VerifyADLogon(txtBxDomain.Text, txtBxUser.Text, txtBxPass.Text))
                    {
                        Response.Redirect("Default.aspx?txtBxUser.text");

                    }
                    else
                    {
                        lblError.Text="Please try again";
                    }
                }
        }
 
}

Open in new window

This is where I am trying to assign it
 protected void Page_Load(object sender, EventArgs e)
    {
        //



        string NtAccountName = Default2.txtBxUser;
       
        //WindowsIdentity currIdentity = WindowsIdentity.GetCurrent();
        //string NtAccountName = currIdentity.Name.Substring(currIdentity.Name.IndexOf("\\") + 1);
        
        Response.Write(NtAccountName);
        if (NtAccountName == "Render" || NtAccountName == "r3nder")
        {
//my code
}

Open in new window


0
r3nder
Asked:
r3nder
  • 4
  • 3
1 Solution
 
systanCommented:
string NtAccountName;
NtAccountName = System.Security.Principal.WindowsIdentity.GetCurrent().Name.ToString();
MessageBox.Show(NtAccountName.ToString());
0
 
puru1981Commented:
since you haven't set any authentication on Default2 page you will not get the name here

System.Security.Principal.WindowsIdentity.GetCurrent().Name.ToString()

so changes are here

default2.cs

Response.Redirect("Default.aspx?txtBxUser.text");
 
to

Response.Redirect("Default.aspx?u=txtBxUser.text");


default.cs

string NtAccountName = Context.Request.QueryString["u"].ToString();
0
 
r3nderAuthor Commented:
Sorry comes back as NT AUTHORITY\NETWORK SERVICE
I tried something close to it
         WindowsIdentity currIdentity = WindowsIdentity.GetCurrent();
        string NtAccountName = currIdentity.Name.Substring(currIdentity.Name.IndexOf("\\") + 1);

This gave me Network service
I need the value of txtBxUser from the login form
0
Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
r3nderAuthor Commented:
puru1981
Closer.........comes back as txtBxUser.text
0
 
puru1981Commented:
sorry it should be

Response.Redirect("Default.aspx?u=" + txtBxUser.text);
0
 
r3nderAuthor Commented:

The error I get now is
System.Web.UI.WebControls.TextBox' does not contain a definition for 'text' and no extension method 'text' accepting a first argument of type 'System.Web.UI.WebControls.TextBox' could be found (are you missing a using directive or an assembly reference?)
0
 
puru1981Commented:
txtBxUser.text -> txtBxUser.Text
0
 
r3nderAuthor Commented:
Thank you sir
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

The 14th Annual Expert Award Winners

The results are in! Meet the top members of our 2017 Expert Awards. Congratulations to all who qualified!

  • 4
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now