一个生成Oracle用户密码的通用小程序
时间:2007-12-23 来源:不详 作者:迈克DB
rem由于Oracle数据库用户密码不区分大小写,故,视所选择的起始字母,决定随机数
rnd_base=90-start_asc
?
rem打开文件,用于输出生成的改密码的脚本
Open"c:change_pass.sql"ForOutputAs#1
rem同时,在工作表上记录相应的密码,以便打印出来备作为记录,此处为先写标题
Cells(1,1)="Username":Cells(1,2)="Password"
Cells(1,3)="Username":Cells(1,4)="Password"
rem先生成apps的密码,但脚本中加上注释,因apps密码必须与应用程序一起改
rem先初始化密码串为空白
temp_str=""
Forbit_count=1Topass_length
char_value=start_asc Int(Rnd(1)*rnd_base)
rem此处为为防=号引起excel误认为是公式,从而程序出错。
Ifchar_value=61Then
char_value=62
EndIf
rem组合成密码
temp_str=temp_str Chr$(char_value)
Nextbit_count
rem将生成的apps密码输出到脚本文件
Print#1,"REMalteruserapps" "identifiedby" temp_str ";"
rem同时,记录在工作表上
Cells(2,3)="APPS":Cells(2,4)=temp_str
rem需生成密码的用户名从row_num行开始
dedecms.com
row_num=2
rem若第一列非空,则创建密码,否则退出 DoWhileCells(row_num,1)<>""
temp_str=""
Forbit_count=1Topass_length
char_value=start_asc Int(Rnd(1)*rnd_base)
Ifchar_value=61Then
char_value=62
EndIf
temp_str=temp_str Chr$(char_value)
Nextbit_count
Print#1,"alteruser" Cells(row_num,1) "identifiedby" temp_str
Cells(row_num,2)=temp_str
rem获取下一行
row_num=row_num 1
Loop
rem所有用户的密码已生成,关闭文件
Close#1
EndSub
?
Subgen_pass_unix()
Dimbit_countasinteger’循环变量,密码中位数计数器
dimrow_numasinteger’需生成密码的用户名信息开始的行号
dimrnd_baseAsInteger’随机数种子
Dimchar_valueAsInteger’密码中每个字符的ascii值
Dimtemp_strAsString’密码串
Dimusername(50)AsString’用户名
dimpass_lengthasinteger’定义生成的密码的长度
dimstart_ascasinteger’定义从哪个字符开始生成
pass_length=8 本文来自织梦
start_asc=48’0
Remstart_asc=65’A
rem由于unix密码支持大小写,故,视所选择的起始字母,决定随机数的范围,以确保
rnd_base=122-start_asc
?
rem打开文件,用于输出生成的改密码的脚本
Open"c:change_pass.txt"ForOutputAs#1
rem同时,在工作表上记录相应的密码,以便打印出来备作为记录,此处为先写标题
Cells(1,3)="Username":Cells(1,4)="Password"
row_num=2
rem若第三列非空,则创建密码,否则退出 DoWhileCells(row_num,3)<>""
temp_str=""
Forbit_count=1Topass_length
char_value=start_asc Int(Rnd(1)*rnd_base)
rem91-94为[]^_`
rem因不愿在unix密码串中包含该类字符,故,通过减少已增大的计数器以保证密码的长度,同时,不将其计入密码串中,以排除它们
If(char_value>=58Andchar_value<=64)Or(char_value>=91Andchar_value<=96)Then
bit_count=bit_count-1
Else
temp_str=temp_str Chr$(char_value)
EndIf
Nextbit_count
上一篇:SQL备份并压缩备份文件 下一篇:My SQL服务器的启动和关闭
文章评论
共有位Admini5网友发表了评论 查看完整内容