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

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Добавить пользователя и права на ветку реестра.

Ответить
Настройки темы
CMD/BAT - Добавить пользователя и права на ветку реестра.

Пользователь


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

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


Добрый день, помогите реализовать задачку....:

HKEY_LOCAL_MACHINE\SOFTWARE\ODBC

В разделе "Разрешения"/Права доступа, нужно добавить пользователя и дать ему права доступа....

Не смог придумать, как добавить пользователя.....

Отправлено: 15:31, 16-02-2018

 


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

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


Аватара для Казбек

Ветеран


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

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


DarckSol,

На PowerShell:
Код: Выделить весь код
$acl = Get-Acl HKLM:\SOFTWARE\ODBC
$rule = New-Object System.Security.AccessControl.RegistryAccessRule ("oszone\forum","FullControl","Allow")
$acl.SetAccessRule($rule)
$acl |Set-Acl -Path HKLM:\SOFTWARE\ODBC
oszone\forum - формат ввода имени нужного пользователя. Посмотреть для своего случай можно, выполнив в PS:
Код: Выделить весь код
Get-WmiObject -Class Win32_UserAccount

Сторонними утилитами, но из командной строки, так:

-------
Кто реку перешел, тому росы бояться ни к чему


Отправлено: 17:33, 17-02-2018 | #3


Пользователь


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

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


Спасибо за скрипт, но функции PS отключены GPO...... Нужен альтернативный вариант......

Отправлено: 09:37, 19-02-2018 | #4


Аватара для Казбек

Ветеран


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

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


Цитата DarckSol:
Нужен альтернативный вариант »
Вам две ссылки предоставлено с альтернативными вариантами после скрипта. Вам религия не позволяет их прочесть, заменить пути и имена на актуальные, подставить необходимые аргументы?? Вот пример:
Код: Выделить весь код
SetACL.exe -on "hklm\software\ODBC" -ot reg -actn ace
          -ace "n:oszone\forum;p:full"

-------
Кто реку перешел, тому росы бояться ни к чему


Отправлено: 11:25, 19-02-2018 | #5


Пользователь


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

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


У меня есть сетка, примерно 200 компов, мне нужно на каждом компе добавить разрешения пользователю именно тому, кто за компом работает....

Отправлено: 12:39, 19-02-2018 | #6


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


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

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


Сделайте групповую политику

Цитата Казбек:
Код: Выделить весь код
SetACL.exe -on "hklm\software\ODBC" -ot reg -actn ace
 -ace "n:oszone\forum;p:full" »

Отправлено: 13:13, 20-02-2018 | #7


Пользователь


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

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


Решил иначе... Малость интерактивного порно....:

User.vbs :

Код: Выделить весь код
On Error Resume Next
dim User
strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") 
Set colItems = objWMIService.ExecQuery( _
    "SELECT * FROM Win32_ComputerSystem",,48) 
For Each objItem in colItems 
User = objItem.UserName
'*********************************************
'Wscript.Echo "UserName: " & objItem.UserName
'*********************************************

Next

Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run("Perm.bat "+User)
Param.bat :
Код: Выделить весь код
@echo off
::----------------------------------------------------------------------------------------------------------------
Set UserName=''
set OpenLog=0
Set LoG_work=D:\LogPermision_.txt
::----------------------------------------------------------------------------------------------------------------
::----------------------------------------------------------------------------------------------------------------
Set Param1=%1
::----------------------------------------------------------------------------------------------------------------
::----------------------------------------------------------------------------------------------------------------
echo.
echo.
Echo Add permissions for USER: %Param1%
echo.
echo.
echo.
echo.
echo.
echo.

if %UserName% == '' ( call :StartWork_autodetect ) else Call :Start_Manual

:StartWork_autodetect
echo.
echo.
echo ****************
Echo MOD Autodetect
echo ****************
echo.
echo.
::----------------------------------------------------------------------------------------------------------------
SetACL.exe -log "%LoG_work%" -on "hklm\software\ODBC" -ot reg -actn ace -ace "n:%Param1%;p:Full
SetACL.exe -log "%LoG_work%" -on "hklm\software\Wow6432Node\ODBC" -ot reg -actn ace -ace "n:%Param1%;p:Full
::----------------------------------------------------------------------------------------------------------------
TimeOut /t 11
::----------------------------------------------------------------------------------------------------------------
if %OpenLog% == 0 ( exit ) else %systemroot%\system32\notepad.exe %LoG_work% && exit
::----------------------------------------------------------------------------------------------------------------

:Start_Manual
echo.
echo.
echo ****************
Echo MOD Manual
echo ****************
echo.
echo.
::----------------------------------------------------------------------------------------------------------------
SetACL.exe -log "%LoG_work%" -on "hklm\software\ODBC" -ot reg -actn ace -ace "n:%UserName%;p:Full
SetACL.exe -log "%LoG_work%" -on "hklm\software\Wow6432Node\ODBC" -ot reg -actn ace -ace "n:%UserName%;p:Full
::----------------------------------------------------------------------------------------------------------------
TimeOut /t 11
::----------------------------------------------------------------------------------------------------------------
if %OpenLog% == 0 ( exit ) else %systemroot%\system32\notepad.exe %LoG_work% && exit
::----------------------------------------------------------------------------------------------------------------
И рядом нужно положить SetACL.exe

-------------------------------------------------------------

Логика....
VBS выдерает авторизованного пользователя на ПК и передает его батнику, который в свою очередь запускает SetACL.exe с нужными параметрами.... Вот как то так.

Я решил свою задачу, можно закрывать темку. Всем спасибо!

Цитата fire33:
Сделайте групповую политику »
Многоуровневый домен, нет прав на работу с GPO.

Отправлено: 15:19, 20-02-2018 | #8



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Добавить пользователя и права на ветку реестра.

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
VBS/WSH/JS - [решено] Изменение разрешения на ветку реестра SanyaJoker Скриптовые языки администрирования Windows 12 04-02-2016 22:01
2008 R2 - Удалил ветку реестра ProfileList пользователя. vikinga Windows Server 2008/2008 R2 2 30-09-2014 17:10
CMD/BAT - [решено] Редактирование прав на ветку реестра Aplisen Скриптовые языки администрирования Windows 0 24-02-2013 13:33
Доступ - [решено] определить ветку реестра пользователя по имени RRRinat Microsoft Windows 2000/XP 4 11-10-2012 10:57
[решено] Изменение разрешения на ветку реестра SanyaJoker AutoIt 1 24-11-2011 14:31




 
Переход