Page 1 of 1
Create dir on UNC when member of a specific group
Posted: Wed Feb 22, 2012 11:20 am
by sis3970
Hi all,
I try to create a script that will create a directory on a shared drive, but only when this user is member of a specific group. I want to execute the script on logon.
This is what works
Code: Select all
local newfolder = "//192.168.1.55/nas-000406_ftp/_cims/".."%Name"
c_MkDir(newfolder)
c_AddUserDirectory("%Domain","%Name",newfolder ,'/',true,true,true,true,true,true,true,true,true)
This does not work
Code: Select all
if table.maxn(c_GetUser("%Usergroups")) == "MyGroup"
then
local newfolder = "//192.168.1.55/nas-000406_ftp/_cims/".."%Name"
c_MkDir(newfolder)
c_AddUserDirectory("%Domain","%Name",newfolder ,'/',true,true,true,true,true,true,true,true,true)
end
Any idea what is wrong here?
Thanks in advance!
Sis
Re: Create dir on UNC when member of a specific group
Posted: Wed Feb 22, 2012 1:50 pm
by FTP
Code: Select all
do
local useruploaded = c_GetUser("%Domain","%Name")
local grouplist = useruploaded["usergroups"]
if grouplist ~= nil then
for _,groupitem in pairs(grouplist) do
if groupitem.groupname == "MyGroup" then
local newfolder = "//192.168.1.55/nas-000406_ftp/_cims/".."%Name"
c_MkDir(newfolder)
c_AddUserDirectory("%Domain","%Name",newfolder ,'/',true,true,true,true,true,true,true,true,true)
break
end
end
end
end
Re: Create dir on UNC when member of a specific group
Posted: Wed Feb 22, 2012 2:53 pm
by sis3970
Thanks! this works fine now.
Additional question, is there a way to add a sub-folder to the user, instead of a normal folder?
I guess I need an alternative for c_AddUserDirectory
Thanks
Sis
Re: Create dir on UNC when member of a specific group
Posted: Thu Feb 23, 2012 11:19 am
by FTP
Do you want to add a virtual folder?
c_AddUserDirectory("%Domain","%Name",newfolder ,'myfolder',false,true,true,true,true,true,true,true,true)
Re: Create dir on UNC when member of a specific group
Posted: Tue Feb 28, 2012 10:07 am
by sis3970
Actually no, I would need a sub-folder.
We give root access to all users on group level, but only read.
Now I'd like to add a subfolder to give write permissions on a deeper level.
I don't know if this is possible via scripts, but via the Admin it works great...
Best Regards
Sis
Re: Create dir on UNC when member of a specific group
Posted: Mon Mar 05, 2012 7:52 am
by FTP
OK, check out the following script:
Code: Select all
local strDomain = "mydomain"
local strUsername = "myuser"
local tableUser = c_GetUser(strDomain,strUsername)
for k,v in pairs(tableUser) do
if type(v) == "boolean" then
if v == true then
tableUser[k] = 1
else
tableUser[k] = 0
end
end
end
local subfolder = {}
subfolder["dir"] = "d:/game"
subfolder["alias"] = ""
subfolder["is_home_dir"] = false
subfolder["fileread"] = true
subfolder["filewrite"] = true
subfolder["fileappend"] = false
subfolder["filedelete"] = false
subfolder["dirlist"] = true
subfolder["dirmake"] = true
subfolder["dirdelete"] = false
subfolder["dirrename"] = false
subfolder["filerename"] = false
subfolder["zipfile"] = false
subfolder["unzipfile"] = false
table.insert(tableUser.subdir_perm, subfolder)
tableUser.oldpassword = tableUser.password
AddUser(strDomain,tableUser)