⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 users.asp

📁 asp与MYSQL的源码
💻 ASP
字号:
<!--#include file="top.asp"-->
<%

if len(request("flush")) > 0 then
	
	set cn = server.CreateObject("ADODB.Connection")
	cn.open dsn
	
	sql = "FLUSH PRIVILEGES"
	cn.execute sql
	
	set cn = nothing

end if

if len(request("add")) > 0 then

	sql = "Grant usage on *.* to '" & request("username") & "'@'" & request("host") & "' identified by '" & request("password") & "'"
	
	set cn = server.CreateObject("ADODB.Connection")
	cn.Open dsn
	cn.Execute sql
	
	sql = "grant select on mysql.db to '" & request("username") & "'@'" & request("host") & "'"
	cn.Execute sql
	
	sql = "grant select on mysql.user to '" & request("username") & "'@'" & request("host") & "'"
	cn.Execute sql
	
	sql = "GRANT ALL PRIVILEGES ON " & request("defaultdb") & ".* TO '" & request("username") & "'@'" & request("host") & "'"
	cn.Execute sql
	
	sql = "FLUSH PRIVILEGES"
	cn.execute sql
	
	set cn = nothing

end if

if len(request("del")) > 0 then
	
	username = left(request("deluser"), len(request("deluser")) - len(right(request("deluser"), len(request("deluser")) - instr(request("deluser"), "@"))) -1)
	host = right(request("deluser"), len(request("deluser")) - instr(request("deluser"), "@"))
	
	set cn = server.CreateObject("ADODB.Connection")
	cn.Open dsn
	
	sql = "DELETE FROM mysql.user WHERE Host=" & host & " AND User=" & username
	cn.execute sql

	sql = "DELETE FROM mysql.db WHERE Host=" & host & " AND User=" & username
	cn.execute sql

	sql = "DELETE FROM mysql.tables_priv WHERE Host=" & host & " AND User=" & username
	cn.execute sql

	sql = "DELETE FROM mysql.columns_priv WHERE Host=" & host & " AND User=" & username
	cn.execute sql

	sql = "SELECT * FROM mysql.user"
	cn.execute sql

	sql = "FLUSH PRIVILEGES"
	cn.execute sql
	
	set cn = nothing
	
end if

%>
<TABLE WIDTH=750 bgcolor=#E7F1EC cellspacing=1 cellpadding=0 border=0>
	<TR>
		<TD width=200 valign=top><!--#include file="left.asp"--></TD>
		<TD width=550 valign=top>
			<TABLE WIDTH=100% cellpadding=5 cellspacing=0 border=0>
				<TR>
					<TD bgcolor="#339999" align=center width=550 class=celltitle>User Administration</TD>
				</TR>
				<TR>
					<TD>
						<TABLE cellpadding=2 cellspacing=1 style="border:solid black 1pt;">
						
						<%
						'Updating a user's username, password, or host.
						'Update mysql.user set host = '%', user = 'username', password=password('password') where host='%' and user='username'
						'update mysql.db set host = '%', user='username' where host='%' and user='username'
						'update mysql.tables_priv set host='%', user='username' where host='%' and user='username'
						'update mysql.columns_priv set host='%', user='username' where host='%' and user='username'
						'flush privileges
						
						set rsUsers = server.CreateObject("ADODB.Recordset")
						rsUsers.CursorLocation = 3
						rsUsers.open "select * from mysql.user order by user asc", dsn, 2, 3
						
						%>
						<TR>
							<TD colspan=17 align=center bgcolor=#339999 class=cellsmalltitle>System Privileges</TD>
						</TR>
						<TR>
							<TD colspan=3 class=cellsmallcontent align=center><B>User</B></TD>
							<TD colspan=14 class=cellsmallcontent align=center><B>Privileges*</B></TD>
						</TR>
						<TR>
							<TD class=cellsmallcontent><B>Host</B></TD>
							<TD class=cellsmallcontent><B>User</B></TD>
							<TD class=cellsmallcontent><B>Password</B></TD>
							<TD class=cellsmallcontent><B>Select</B></TD>
							<TD class=cellsmallcontent><B>Insert</B></TD>
							<TD class=cellsmallcontent><B>Update</B></TD>
							<TD class=cellsmallcontent><B>Delete</B></TD>
							<TD class=cellsmallcontent><B>Create</B></TD>
							<TD class=cellsmallcontent><B>Drop</B></TD>
							<TD class=cellsmallcontent><B>Reload</B></TD>
							<TD class=cellsmallcontent><B>Shutdown</B></TD>
							<TD class=cellsmallcontent><B>Process</B></TD>
							<TD class=cellsmallcontent><B>File</B></TD>
							<TD class=cellsmallcontent><B>Grant</B></TD>
							<TD class=cellsmallcontent><B>References</B></TD>
							<TD class=cellsmallcontent><B>Index</B></TD>
							<TD class=cellsmallcontent><B>Alter</B></TD>
						</TR>
						<%
						for i = 1 to rsUsers.RecordCount 
						%>
						<TR<%if i mod 2 = 0 then%> bgcolor=white<%end if%>>
							<TD class=cellsmallcontent><%=rsUsers("host")%></TD>
							<TD class=cellsmallcontent><%=rsUsers("user")%></TD>
							<TD class=cellsmallcontent><A href="cpass.asp?user=<%=rsUsers("user")%>&host=<%=server.urlencode(rsUsers("host"))%>" class=navlink>Change</A></TD>
							<TD class=cellsmallcontent><A href="grantprivs.asp?priv=select_priv&setting=<%if rsUsers("select_priv") = "Y" then%>N<%else%>Y<%end if%>&host=<%=server.URLEncode(rsUsers("host"))%>&user=<%=rsUsers("user")%>" class=navlink><%=rsUsers("select_priv")%></A></TD>
							<TD class=cellsmallcontent><A href="grantprivs.asp?priv=insert_priv&setting=<%if rsUsers("insert_priv") = "Y" then%>N<%else%>Y<%end if%>&host=<%=server.URLEncode(rsUsers("host"))%>&user=<%=rsUsers("user")%>" class=navlink><%=rsUsers("insert_priv")%></TD>
							<TD class=cellsmallcontent><A href="grantprivs.asp?priv=update_priv&setting=<%if rsUsers("update_priv") = "Y" then%>N<%else%>Y<%end if%>&host=<%=server.URLEncode(rsUsers("host"))%>&user=<%=rsUsers("user")%>" class=navlink><%=rsUsers("update_priv")%></TD>
							<TD class=cellsmallcontent><A href="grantprivs.asp?priv=delete_priv&setting=<%if rsUsers("delete_priv") = "Y" then%>N<%else%>Y<%end if%>&host=<%=server.URLEncode(rsUsers("host"))%>&user=<%=rsUsers("user")%>" class=navlink><%=rsUsers("delete_priv")%></TD>
							<TD class=cellsmallcontent><A href="grantprivs.asp?priv=create_priv&setting=<%if rsUsers("create_priv") = "Y" then%>N<%else%>Y<%end if%>&host=<%=server.URLEncode(rsUsers("host"))%>&user=<%=rsUsers("user")%>" class=navlink><%=rsUsers("create_priv")%></TD>
							<TD class=cellsmallcontent><A href="grantprivs.asp?priv=drop_priv&setting=<%if rsUsers("drop_priv") = "Y" then%>N<%else%>Y<%end if%>&host=<%=server.URLEncode(rsUsers("host"))%>&user=<%=rsUsers("user")%>" class=navlink><%=rsUsers("drop_priv")%></TD>
							<TD class=cellsmallcontent><A href="grantprivs.asp?priv=reload_priv&setting=<%if rsUsers("reload_priv") = "Y" then%>N<%else%>Y<%end if%>&host=<%=server.URLEncode(rsUsers("host"))%>&user=<%=rsUsers("user")%>" class=navlink><%=rsUsers("reload_priv")%></TD>
							<TD class=cellsmallcontent><A href="grantprivs.asp?priv=shutdown_priv&setting=<%if rsUsers("shutdown_priv") = "Y" then%>N<%else%>Y<%end if%>&host=<%=server.URLEncode(rsUsers("host"))%>&user=<%=rsUsers("user")%>" class=navlink><%=rsUsers("shutdown_priv")%></TD>
							<TD class=cellsmallcontent><A href="grantprivs.asp?priv=process_priv&setting=<%if rsUsers("process_priv") = "Y" then%>N<%else%>Y<%end if%>&host=<%=server.URLEncode(rsUsers("host"))%>&user=<%=rsUsers("user")%>" class=navlink><%=rsUsers("process_priv")%></TD>
							<TD class=cellsmallcontent><A href="grantprivs.asp?priv=file_priv&setting=<%if rsUsers("file_priv") = "Y" then%>N<%else%>Y<%end if%>&host=<%=server.URLEncode(rsUsers("host"))%>&user=<%=rsUsers("user")%>" class=navlink><%=rsUsers("file_priv")%></TD>
							<TD class=cellsmallcontent><A href="grantprivs.asp?priv=grant_priv&setting=<%if rsUsers("grant_priv") = "Y" then%>N<%else%>Y<%end if%>&host=<%=server.URLEncode(rsUsers("host"))%>&user=<%=rsUsers("user")%>" class=navlink><%=rsUsers("grant_priv")%></TD>
							<TD class=cellsmallcontent><A href="grantprivs.asp?priv=references_priv&setting=<%if rsUsers("references_priv") = "Y" then%>N<%else%>Y<%end if%>&host=<%=server.URLEncode(rsUsers("host"))%>&user=<%=rsUsers("user")%>" class=navlink><%=rsUsers("references_priv")%></TD>
							<TD class=cellsmallcontent><A href="grantprivs.asp?priv=index_priv&setting=<%if rsUsers("index_priv") = "Y" then%>N<%else%>Y<%end if%>&host=<%=server.URLEncode(rsUsers("host"))%>&user=<%=rsUsers("user")%>" class=navlink><%=rsUsers("index_priv")%></TD>
							<TD class=cellsmallcontent><A href="grantprivs.asp?priv=alter_priv&setting=<%if rsUsers("alter_priv") = "Y" then%>N<%else%>Y<%end if%>&host=<%=server.URLEncode(rsUsers("host"))%>&user=<%=rsUsers("user")%>" class=navlink><%=rsUsers("alter_priv")%></TD>
						</TR>
						<%
						rsUsers.MoveNext
						next
						
						'set rsUsers = nothing
						rsUsers.MoveFirst 
						%>
						</TABLE>
						<BR>
						<TABLE cellpadding=0 cellspacing=0 border=0>
							<tr>
								<td rowspan=3 valign=top>
									<TABLE cellpadding=2 width=450 cellspacing=1 style="border:solid black 1pt;">
										<TR>
											<TD align=center bgcolor=#339999 class=cellsmalltitle colspan=2>Database Privileges</TD>
										</TR>
										<%
										
										set rsDatabases = server.CreateObject("ADODB.Recordset")
										rsDatabases.CursorLocation = 3
										rsDatabases.Open "Show Databases", dsn, 2, 3
										
										for i = 1 to rsDatabases.RecordCount 
										%>
										<TR<%if i mod 2 = 0 then%> bgcolor=white<%end if%>>
											<TD class=cellsmallcontent><A href=dbprivs.asp?db=<%=rsDatabases("database")%> class=navlink><%=rsDatabases("database")%></A></TD>
											<%
											if i = 1 then
											%>
											<TD valign=top width=65% rowspan=<%=rsDatabases.RecordCount%> class=cellsmallcontent>
												There are two sets of privileges for a MySQL database.  One is the system set, which can
												be altered using the grid above.  These settings apply for all databases across the system.
												Typically, these will be set to "N" for all privileges, with the exception of your root user.
												The root user should always have all privileges.  <BR><BR>
												The database privileges are set on a per-database basis.  This is typically how most
												databases are set up.  A specific user is given access to a specific database.  Each database
												has its own specific set of privileges.
											</TD>
											<%
											end if
											%>
										</TR>
										<%
										rsDatabases.MoveNext
										next
										set rsDatabases = nothing
										%>
									</TABLE>
								</TD>
								<TD rowspan=3 width=10></TD>
								<TD valign=top>
									<TABLE width=250 CELLPADDING=2 CELLSPACING=1 style="border:solid black 1pt;">
										<TR>
											<TD align=center bgcolor=#339999 class=cellsmalltitle>Flush Privileges</TD>
										</TR>
										<TR>
											<TD align=center class=cellsmallcontent>
												Every time a change is made to the users of MySQL, the privileges must be 
												flushed before they will take effect.  This reloads them into the memory of the server.
												<BR><BR>
												<A href=users.asp?flush=y; class=navlink>Flush Privileges</A>
											</TD>
										</TR>
									</TABLE>
								</TD>
							</TR>
							<TR>
								<TD>
									<TABLE cellpadding=2 width=250 cellspacing=1 style="border:solid black 1pt;">
										<FORM action=users.asp?del=y method=post id=form1 name=form1>
										<TR>
											<TD class=cellsmallcontent align=center><B>Delete User</B></TD>
										</TR>
										<TR>
											<TD class=cellsmallcontent align=center>
												Select user to delete.  This operation is not undoable.
											</TD>
										</TR>
										<TR>
											<TD align=center>
												<SELECT name=deluser>
													<%
													for i = 1 to rsUsers.RecordCount 
													%>
													<OPTION VALUE="'<%=rsUsers("user")%>'@'<%=rsUsers("host")%>'"><%=rsUsers("user")%>@<%=rsUsers("host")%></OPTION>
													<%
													rsUsers.movenext
													next
													%>
												</SELECT>
											</TD>
										</TR>
										<TR>
											<TD align=center>
												<INPUT TYPE=SUBMIT VALUE="Delete User" id=SUBMIT1 name=SUBMIT1>
											</TD>
										</TR>
										</form>
									</TABLE>
								</TD>
							</TR>
							<TR>
								<TD>
									<FORM ACTION=users.asp?add=y method=post id=form2 name=form2>
									<TABLE cellpadding=2 width=250 cellspacing=1 style="border:solid black 1pt;">
										<TR>
											<TD class=cellsmallcontent align=center colspan=2><B>Add User</B></TD>
										</TR>
										<TR>
											<TD class=cellsmallcontent>UserName:</TD>
											<TD><INPUT TYPE=TEXT NAME=UserName></TD>
										</TR>
										<TR>
											<TD class=cellsmallcontent>Host:</TD>
											<TD><INPUT TYPE=TEXT NAME=Host VALUE='%'></TD>
										</TR>
										<TR>
											<TD class=cellsmallcontent>Password:</TD>
											<TD><INPUT TYPE=TEXT NAME=Password></TD>
										</TR>
										<TR>
											<TD class=cellsmallcontent>Default DB:</TD>
											<%
											set rs1 = server.CreateObject("ADODB.Recordset")
											rs1.CursorLocation = 3
											rs1.Open "Show Databases", dsn, 2, 3
											%>
											<TD><SELECT NAME=DefaultDB>
												<%
												for i = 1 to rs1.recordcount
												%>
												<OPTION VALUE=<%=rs1("database")%>><%=rs1("database")%></OPTION>
												<%
												rs1.movenext
												next
												%>
												</SELECT>
											</TD>
										</TR>
										<TR>
											<TD colspan=2 align=center><INPUT TYPE=SUBMIT VALUE="Add User" id=SUBMIT2 name=SUBMIT2>
										</TR>
									</TABLE>
									</FORM>
								</TD>
							</TR>
						</TABLE>
					</TD>
				</TR>
			</TABLE>
		</TD>
	</TR>
</TABLE>
<!--#include file="bottom.asp"-->

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -