powershell查看mysql密码_使用Windows PowerShell从数据库导入用户
使用Windows PowerShell从数据库导入用户
虽然在70-640考试中并不涉及使用Windows PowerShell导入数据库的方法,不过学习这样的做法可为以后自动创建用户的工作产生巨大的帮助。正如您看到的,只需要几行额外的代码和强大的Windows PowerShell Cmdlet,即可实现目的。
假设从人力资源部门得到了一个包含新雇佣员工信息的Excel表格,Excel可以直接将文件保存为逗号分隔文本文件(.csv),这样的文件即可使用Windows PowerShell导入。.csv文件的***行必须列出所有字段名称,这些内容对应着每个用户的信息。例如下面的例子,可以将下列.csv文件保存为Newusers.csv:Newusers.csv
cn,sAMAccountName,FirstName,LastName
John Woods,john.woods,Johnathan,Woods
Kim Akers,kim.akers,Kimberly,Akers
请注意字段名并不需要与LDAP属性名保持一致,随后可以使用脚本将字段名与属性名进行映射。
Windows PowerShell只需要使用下列一行命令即可从数据源导入:$dataSource=import-csv "newusers.csv"
在导入数据源后,还必须对数据源中的每条记录进行循环。此时可以通过foreach块实现,例如可使用下列格式的代码:foreach($dataRecord in $datasource)
{
# do whatever you want to do
}
foreach cmdlet可对数据源中的每条记录或对象进行循环,并将当前对象分配给$dataRecord变量,因此$dataRecord变量可以代表当前记录。随后即可看到每条记录中的实际字段,分别称为$dataRecord变量的属性。例如,***位用户的姓氏如下:$dataRecord.FirstName
我们可以将其分配给变量:$givenName= $dataRecord.FirstName
再次提醒,变量或字段的名称并不需要与LDAP属性名称匹配。在将包含值的变量写入属性本身时,可以进行映射:$objUser.Put("givenName",$givenName)
LDAP属性"givenName"被包含在引号中。只有在代表对象的实际属性时才需要使用正确的名称。然而如果数据源中的字段名称和属性名称与实际的属性名一致,代码的编写工作那就更简单了。
将上述代码综合在一起,即可创建用户导入脚本:Userimport.ps1
$objOU=[ADSI]"LDAP://OU=People,DC=contoso,DC=com"
$dataSource=import-csv "NewUsers.csv"
foreach($dataRecord in $datasource) {
#map variables to data source
$cn=$dataRecord.cn
$sAMAccountName=$dataRecord.sAMAccountName
$givenName=$dataRecord.FirstName
$sn=$dataRecord.LastName
$displayName=$sn + ", " + $givenName
$userPrincipalName=$givenName + "." + $sn + "@contoso.com"
#create the user object
$objUser=$objOU.Create("user","CN="+$cn)
$objUser.Put("sAMAccountName",$sAMAccountName)
$objUser.Put("userPrincipalName",$userPrincipalName)
$objUser.Put("displayName",$displayName)
$objUser.Put("givenName",$givenName)
$objUser.Put("sn",$sn)
$objUser.SetInfo()
$objUser.SetPassword("C0mp!exP@ssw0rd")
$objUser.psbase.InvokeSet("AccountDisabled",$false)
$objUser.SetInfo()
脚本的***行用于连接到容器,也就是所有用户将要创建到的OU。随后两行则用于连接到数据源,并对每条记录进行循环,将每条记录分配给变量$dataRecord。其中foreach块将完成两件事:首先,将数据源中的字段映射给变量,随后则创建用户。
这里要注意,某些变量的建立需要将两个字段联系(附加)到一起。例如$displayName变量就需要使用"LastName, FirstName"的格式,而$userPrincipalName变量需要使用"FirstName.LastName@contoso.com"的格式。
要创建用户,则需要调用OU的Create方法。用户的属性会自动填写并提交,随后设置密码并启用帐户。收工!
【责任编辑:云霞 TEL:(010)68476606】
点赞 0
powershell查看mysql密码_使用Windows PowerShell从数据库导入用户相关推荐
- 怎么查看mysql密码_怎么查看mysql密码
MySQL数据库查看密码的方法如下: 以系统管理员身份运行cmd. 查看mysql是否已经启动,如果已经启动,就停止:net stop mysql. 切换到MySQL安装路径下:D:\WAMP\MyS ...
- #数据库--第1章 Windows 下的数据库导入 TPCH 数据(以 SQL Server 作为示例,MySQL同样适用)
#数据库--第1章 Windows 下的数据库导入 TPCH 数据(以 SQL Server 作为示例,MySQL同样适用 一.TPCH 简介 二.TPCH 文件 三.生成 TPCH 数据 四.导入 ...
- 忘记本地mysql密码_本地MySQL密码忘了,怎么找回?
展开全部 MySQL密码通常保存在mysql数据库中,我们可以在访问数据之后,使用如下指令进32313133353236313431303231363533e58685e5aeb93133336564 ...
- mysql密码@_如何重设MySQL密码
展开全部 方法一 使用phpmyadmin,这是最简单的了,修改mysql库的user表,不过别62616964757a686964616fe78988e69d8331333361313936忘了使用 ...
- 如何在linux系统下修改mysql密码_如何在linux下修改mysql数据库密码?linux修改数据库密码的方法...
本篇文章给大家带来的内容是介绍如何在linux下修改mysql数据库密码?linux修改数据库密码的方法.有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助. Linux下修改Mysql的 ...
- centos 查看mysql 服务器配置_在CentOS上MySQL数据库服务器配置方法
http://www.jb51.net/article/23255.htm ======================== 1 . 无密码登录: mysql -u root 在已经有密码的情况下报错 ...
- 无法为您重置MySQL密码_无法重置MySQL的root密码
问题描述 我需要重置本地mysql安装的root密码,但不会让我.我已经试过了: $ sudo /etc/init.d/mysql stop * Stopping MySQL database ser ...
- Linux重置Mysql密码_解决MySQL for Linux错误 ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost
Linux重置Mysql密码 一般这个错误是由密码错误引起,解决的办法自然就是重置密码. 假设我们使用的是root账户. 1.重置密码的第一步就是跳过MySQL的密码认证过程,方法如下: #vim / ...
- putty怎么查看MySQL密码_putty mysql修改密码
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 putty mysql修改密码 首先我们使用putty连接上服务器,连接成功后,我们直接使用mysql -u root -p [root@lecloud ...
最新文章
- mysql5 数据类型,Mysql学习笔记5-----字段的数据类型
- AspNetManagementUtility 类
- Spring-AOP @AspectJ切点函数之target()和this()
- 深度学习中常见的损失函数
- ffmpeg命令_使用ffmpeg命令为多个短视频修改视频备注说明
- linux下docker安装步骤_linux下安装mysql8步骤
- c hello world
- [转载] Python学习之numpy函数 all()和any()比较矩阵
- 超人再起 Superman Returns
- centos7.6安装maven
- docker 暴露端口 查看_Docker容器如何暴露端口
- 自动驾驶赛道「孔雀东南飞」,何处安家?各有小算盘
- struts2+quartz定时任务
- 我们是如何设计出,让玩家们有“上瘾症”的抽卡系统的
- 22岁少年破解史上最严重网络攻击,拯救全球互联网,三个月后却被FBI逮捕……
- python做相册_用Python和Conky做个电子相册,美化你的Linux桌面
- 腾讯课堂个人老师直播授课操作 首次下载与安装 200308
- keras使用plot_model绘制网络模型图
- 搓丝机传动装置设计F=10KN【机械设计基础课程设计说明书+7张CAD图纸】
- 【若依】开源框架学习笔记 07 - 登录认证流程(Spring Security 源码)