環境変数では期待通り取得できません。なお、認証されていない状態で User.Identity.Name を取得しようとすると、戻り値は空文字列です。
<%@ PAGE LANGUAGE="C#" %>
<html>
<head>
<title>get username</title>
<script runat="server">
void Page_Load(object sender, EventArgs e)
{
if(User.Identity.IsAuthenticated){
lbl_result.Text = User.Identity.Name;
}else{
lbl_result.Text = "(匿名アクセス)";
}
}
</script>
</head>
<body>
<form runat="server">
<asp:Label id="lbl_result" Text="" runat="server" />
</form>
</body>
</html>