Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] VBS права на общую папку

Ответить
Настройки темы
VBS/WSH/JS - [решено] VBS права на общую папку

Новый участник


Сообщения: 12
Благодарности: 0

Профиль | Отправить PM | Цитировать


Доброго времени суток, подскажите как программно с помощью vbs менять у конкретного пользователя права как показанно на рисунках.Снимок экрана от 2015-03-15 17:33:59.png

Снимок экрана от 2015-03-15 17:34:17.png

Отправлено: 15:46, 15-03-2015

 

Аватара для Dreamer_UFA

Ветеран


Сообщения: 757
Благодарности: 112

Профиль | Отправить PM | Цитировать


Использование сценария Xcacls.vbs для изменения разрешений NTFS

Основные SIDы в Windows

Отправлено: 16:06, 15-03-2015 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Сценарий Create a Shared Folder and Assign Share Permissions
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:56, 15-03-2015 | #3


Новый участник


Сообщения: 12
Благодарности: 0

Профиль | Отправить PM | Цитировать


Изображения
Тип файла: png no.png
(27.0 Kb, 5 просмотров)
Тип файла: png nada.png
(38.0 Kb, 5 просмотров)

прошу прощения Xcalcs меняет разрешения во вкладке http://forum.oszone.net/attachment.p...1&d=1426431111 а мне нада http://forum.oszone.net/attachment.p...1&d=1426431111.

скрипт от Iska выдаёт ошибку на set account = getObject("Winmgmts:{impersonationlevel=impersonate}!root/cimv2:Win32_Group.Name='" & strName & "',Domain='" & strDomain &"'") если поставить on error resume nex папку создаёт а права недаёт, непойму в чем дело

Отправлено: 17:54, 15-03-2015 | #4


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата A-n_G_e-L:
выдаёт ошибку на set account = getObject("Winmgmts:{impersonationlevel=impersonate}!root/cimv2:Win32_Group.Name='" & strName & "',Domain='" & strDomain &"'") »
Какую? Существует ли указанная группа безопасности в указанном домене?

Цитата A-n_G_e-L:
если поставить on error resume nex папку создаёт а права недаёт, непойму в чем дело »
Именно потому, что поставили «on error resume next».

Отправлено: 18:33, 15-03-2015 | #5


Новый участник


Сообщения: 12
Благодарности: 0

Профиль | Отправить PM | Цитировать


разобрался со скриптом, но он опять же делает права не втой вкладке (

Отправлено: 18:50, 15-03-2015 | #6


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата A-n_G_e-L:
разобрался со скриптом, но он опять же делает права не втой вкладке ( »
Почему у меня в той?!

Скрытый текст
Код: Выделить весь код
…
Call sharesec ("C:\Robot", "Robot", "SCOT SHARE", "Опытные пользователи")
…
…
Set Trustee = SetGroupTrustee("MachineName", account) 'Replace ACME with your domain name.
…
…

В данном случае — локальная группа и имя машины: по причине отсутствия домена.

Отправлено: 21:28, 15-03-2015 | #7


Новый участник


Сообщения: 12
Благодарности: 0

Профиль | Отправить PM | Цитировать


Помогите разобраться(
кода вызываю на локальном коспе так: fnSetNewShare ".","C:\local foder","folder","des" всё фурыкает на локальном компе всё создаёт меняет назначает, но стоит ввести удалёную машину в домене : fnSetNewShare "asu35","C:\local foder","folder","des" // ничего непроисходит(((( где затуп ?

Код: Выделить весь код
Function fnSetNewShare(sComp,sFN,sUsr,sDesc,sShareN)
Set Services = GetObject("winmgmts:{impersonationLevel=impersonate,(Security)}!\\"&sComp&"\root\cimv2")
Set SecDescClass = Services.Get("Win32_SecurityDescriptor")
Set SecDesc = SecDescClass.SpawnInstance_()
Set colWinAcc = Services.ExecQuery("SELECT * FROM Win32_ACCOUNT WHERE Name='" & sUsr & "'")
If colWinAcc.Count => 1 Then ' Wscript.echo("User " & sUsr & "Not Found - quitting") : wscript.quit
For Each refItem in colWinAcc : Set refSID = Services.Get("Win32_SID='" & refItem.SID & "'") : Next
Set refTrustee = Services.Get("Win32_Trustee").spawnInstance_()
refTrustee.Domain = refSID.ReferencedDomainName
refTrustee.Name = refSID.AccountName
refTrustee.SID = refSID.BinaryRepresentation
refTrustee.SidLength = refSID.SidLength
refTrustee.SIDString = refSID.SID
Set ACE = Services.Get("Win32_Ace").SpawnInstance_
ACE.Properties_.Item("AccessMask") = 1179817	'2032127
ACE.Properties_.Item("AceFlags") = 3
ACE.Properties_.Item("AceType") = 1				'0=allow access		1=deny access
ACE.Properties_.Item("Trustee") = refTrustee
SecDesc.Properties_.Item("DACL") = Array(ACE)
Set Share = Services.Get("Win32_Share")
Set InParam = Share.Methods_("Create").InParameters.SpawnInstance_()
InParam.Properties_.Item("Access") = SecDesc
InParam.Properties_.Item("Description") = sDesc
InParam.Properties_.Item("Name") = sShareN
InParam.Properties_.Item("Path") = "'" & sFN & "'"
InParam.Properties_.Item("Type") = 0
Set outParams=Share.ExecMethod_("Create", InParam)
End If
End Function

Отправлено: 20:21, 16-03-2015 | #8


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата A-n_G_e-L:
Помогите разобраться( »
Разберитесь с тем кодом, ссылку на который я приводил выше.

Цитата A-n_G_e-L:
кода вызываю на локальном коспе так: fnSetNewShare ".","C:\local foder","folder","des" всё фурыкает на локальном компе всё создаёт меняет назначает, »
Не верю. В функции пять формальных параметров:
Цитата:
Код: Выделить весь код
Function fnSetNewShare(sComp,sFN,sUsr,sDesc,sShareN)
а Вы якобы вызываете её с четырьмя фактическими параметрами.

Цитата A-n_G_e-L:
// ничего непроисходит »
У Вас по-прежнему в коде присутствует «On Error Resume Next»?

Update: Ну, и до кучи — бред с:
Код: Выделить весь код
InParam.Properties_.Item("Path") = "'" & sFN & "'"
Не пойдёт лошадь под землю, мил человек не будет исполняться такой код. Не нужны там обрамляющие одинарные кавычки для пути. От слова «совсем».

Последний раз редактировалось Iska, 16-03-2015 в 22:08.


Отправлено: 21:43, 16-03-2015 | #9


Новый участник


Сообщения: 12
Благодарности: 0

Профиль | Отправить PM | Цитировать


fnSetNewShare ".","C:\local foder","User domena","folder","des"
прошу прощения 1 параметр забыл сдесь написать...
в вашем примере я немогу догнать с построением Trustee
SetGroupTrustee("домен", "юзер доменный") - так?
если так то у меня несрабатывает(

Отправлено: 08:01, 17-03-2015 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] VBS права на общую папку

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Прочее - НЕ открывает общую папку в сети. Ильнур57 Сетевые технологии 14 26-06-2013 08:22
[решено] Авторизация в общую папку в скрипте. Angel_19 AutoIt 1 05-07-2012 22:52
V. 2007 - Не приходит почта в общую папку diga Microsoft Exchange Server 0 30-11-2010 13:15
Доступ - сетевое обнаружение и вход в общую папку фрай_луис Microsoft Windows Vista 4 27-12-2009 19:54
Копирование исходящей почты в Общую папку Loki3D Microsoft Exchange Server 0 01-10-2007 18:11




 
Переход