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)