Mea hoʻohana no ka pilina o ke aka kanaka o ka luna hoʻomalu ʻole i nā kau mea hoʻohana RDP ma WinServer 2012R2

ʻO ka pilikia i ka wā quarantine o ka ʻoihana i lilo i mea penei: pono maoli e hōʻemi i ka helu o nā kipa i nā keʻena e nā loea e lawelawe ana a kūkākūkā i nā polokalamu noi, a ʻo ka ʻōlelo ʻoiaʻiʻo, hoʻohana pinepine nā mea hoʻohana i ke kōkua o nā loea me ka makemake ʻole e komo i loko. ʻO ka pilikia pono'ī,'ōlelo lākou "e hele mai lākou - e kōkua lākou - e hana lākou, akā e puhi wau / inu kofe, a pēlā aku." ʻOi aku ka maikaʻi o ke kūkākūkā kelepona ke kaʻana like ʻana i kahi kikowaena inā ʻoe e nānā i ka pale mamao.

Mea hoʻohana no ka pilina o ke aka kanaka o ka luna hoʻomalu ʻole i nā kau mea hoʻohana RDP ma WinServer 2012R2

Ma hope o ka "mea hou" o kā mākou kaʻa, ua ʻike ʻia ka ʻike kūpono e pili ana i ke kumuhana o ka ʻatikala: RDS Shadow - ka pilina o ka malu i nā kau mea hoʻohana RDP ma Windows Server 2012 R2 ai ole ia, ʻO ke ʻano o ke aka o ka mea hoʻohana pono ʻole ma windows server ai ole ia, ʻO ka hāʻawi ʻana i ka hoʻokele o nā kau RDP. Hoʻopili lākou a pau i ka hoʻohana ʻana i kahi console, ʻoiai me nā mea o kahi kamaʻilio maʻalahi.

ʻO nā ʻike a pau ma lalo nei no ka poʻe tolerates abnormal perversions maʻamau e kiʻi i ka hopena i makemake ʻia, e hana ana i nā ʻano hana pono ʻole.
I ʻole e "huki i ka pōpoki ma ka huelo", e hoʻomaka wau me ka mea hope loa: hana ke kaʻa no ka mea hoʻohana maʻamau e hoʻohana ana i ka pono. AdmiLink, no ka mea, mahalo i kona mea kākau.

I. Console a me ka malu RDP.

Mai ka hoʻohana ʻana me kuleana luna hoʻomalu o ka console Manager Server -> QuickSessionCollection -> ma ke kaomi ʻana i ke kau o ka mea hoʻohana hoihoi, ke koho ʻana i ka Shadow mai ka papa kuhikuhi. no nā limahana e aʻo ana pehea e hoʻohana ai i ka polokalamu, ʻaʻole ia he koho, ua noʻonoʻo ʻia kekahi ala "lāʻau", ʻo ia hoʻi:

1. E ʻike i ka id RDP o ke kau:

query user | findstr Administrator

aiʻole:

qwinsta | findstr Administrator 

Eia hou "| findstr Lunahooponopono"Ua maʻalahi wale ia inā ʻike ʻoe i ka mea pololei luna pono ʻoe, a i ʻole e hoʻohana wale i ka ʻāpana mua e ʻike i ka poʻe āpau i komo i ka kikowaena.

Mea hoʻohana no ka pilina o ke aka kanaka o ka luna hoʻomalu ʻole i nā kau mea hoʻohana RDP ma WinServer 2012R2

2. Hoʻohui i kēia kau, inā i loko o ke kikowaena nā kulekele hui Ua koho ʻia ke koho "Set up remote control rules for user sessions of Remote Desktop Services" me ka liʻiliʻi o ka "Monitor session with user permit" i koho ʻia (ʻike hou aku):

mstsc /shadow:127

E ʻoluʻolu e loaʻa i ka papa inoa nā mea hoʻohana wale nō.

Ke haʻi hou nei au me ka ʻole o nā kuleana admin e loaʻa iā ʻoe kēia:

Mea hoʻohana no ka pilina o ke aka kanaka o ka luna hoʻomalu ʻole i nā kau mea hoʻohana RDP ma WinServer 2012R2

Akā no ka debugging mua o ka papahana e kūkākūkā ʻia, ua hoʻohana au i kahi moʻokāki me nā kuleana luna.

II. Papahana

No laila ka ʻōlelo pilikia: ka hana ʻana i kekahi ʻano kiʻi kiʻi maʻalahi e hoʻopili i ke ʻano aka o ka mea hoʻohana me kāna ʻae, e hoʻouna ana i kahi leka i ka mea hoʻohana. ʻO ke kaiapuni polokalamu i koho ʻia ʻo Lazaro.

1. Loaʻa iā mākou ka papa inoa piha o nā mea hoʻohana "login" - "inoa piha" mai ka luna hoʻomalu, a i ʻole ma o ka console:

wmic useraccount get Name,FullName 

ʻAʻohe mea i pāpā i kēia.

wmic useraccount get Name,FullName > c:testusername.txt

E ʻōlelo koke wau ʻo Lazaro ka pilikia i ka hoʻoponopono ʻana i kēia faila, no ka mea, ma ke ʻano maʻamau, ʻo ia ka UCS-2, no laila pono wau e hoʻololi lima iā ia i ka UTF-8 maʻamau. Nui nā ʻaoʻao i ka hoʻolālā faila, a i ʻole ka nui o nā hakahaka, i hoʻoholo ʻia e hana ma ka papahana; ma hope koke iho e hoʻonā ʻia ka pilikia hoʻopili, a e hoʻonui ʻia ka faila ma ka programmatically.

No laila, ʻo ka manaʻo e loaʻa i kahi waihona i hiki i nā mea hoʻohana o ka papahana, no ka laʻana c: hoʻāʻo, kahi e loaʻa ai nā faila 2: ʻo ka mea mua me ka inoa inoa a me ka inoa piha, ʻo ka lua me ka id_rdp a me ke komo ʻana o nā mea hoʻohana. A laila, hana mākou i kēia ʻikepili e like me ka mea hiki iā mākou :).

I kēia manawa, e hui pū me ka papa inoa o nā kau, hoʻololi mākou i kēia (ke komo a me ka inoa piha) i kahi ʻano:

procedure Tf_rdp.UserF2Array;
var 
  F:TextFile;   i:integer;   f1, line1:String;   fL: TStringList;
begin //f_d глобальный путь к размещению файлов 
f1:=f_d+'user_name.txt';     //задача считать в массив содержимое файла
fL := TStringList.Create; // строку подвергнем метамарфозам с разделителями
fL.Delimiter := '|'; fL.StrictDelimiter := True;
AssignFile(F,f1); 
try // Открыть файл для чтения
  reset(F); ReadLn(F,line1);
  i:=0;
while not eof(F) do // Считываем строки, пока не закончится файл
begin
ReadLn(F,line1);
line1:= StringReplace(line1, '  ', '|',[]); //заменяем первый попавш.2пробела разделителем |
// удаляем все двойные пробелы
while pos('  ',line1)>0 do line1:= StringReplace(line1, '  ', ' ', [rfReplaceAll]);
begin
if (pos('|',line1)>0) then
begin //если разделитель существует заносим его в массив
fL.DelimitedText :=line1; // разбиваем на столбцы
if (fL[0]<>'') then //если учетка имеет имя
begin //вносим ее в массив
 inc(i); // избавляемся от возможных одиночных пробелов в логине
 fam[0,i]:=StringReplace(fL[1],' ','',[rfReplaceall, rfIgnoreCase]);
 fam[1,i]:=fL[0];
 end;end;end;end; // Готово. Закрываем файл.
 CloseFile(F);
 Fl.Free;
 except
 on E: EInOutError do  ShowMessage('Ошибка обработки файла. Детали: '+E.Message);
 end;end;

Ke kala aku nei au no ka "nui o nā code", e ʻoi aku ka pōkole o nā helu ma lalo nei.

2. Me ka hoʻohana ʻana i ke ʻano like mai ka paukū mua, heluhelu mākou i ka hopena o ka hana ʻana i ka papa inoa i loko o ka StringGrid element, ʻoiai e hāʻawi wau i kahi ʻāpana "koʻikoʻi" o ke code:

2.1 Loaʻa iā mākou ka papa inoa o nā kau RDP i kēia manawa ma kahi faila:

f1:=f_d+'user.txt';
cmdline:='/c query user >'+ f1;
if ShellExecute(0,nil, PChar('cmd'),PChar(cmdline),nil,1)=0 then;
Sleep(500); // можно и подольше ждать пока файл для чтения создается

2.2 Hana i ka faila (ʻike ʻia nā laina koʻikoʻi wale nō):

StringGrid1.Cells[0,i]:=fL[1]; StringGrid1.Cells[2,i]:=fL[3]; //кидаем в цикле в StringGrid1
login1:=StringReplace(fL[1],' ','',[rfReplaceall, rfIgnoreCase]); //убираем из логина пробелы
if (SearchArr(login1)>=0) then //ищем в массиве из п1. логин и записываем в таблицу ФИО
StringGrid1.Cells[1,i]:=fam[1,SearchArr(login1)]
else StringGrid1.Cells[1,i]:='+'; // либо записываем плюсик:)
.... //в зависимости от выбора пользователя сортируем и форматируем по данным
if (b_id.Checked=true) then SortGrid(0) else SortGrid(1);
StringGrid1.AutoSizeColumn(0);StringGrid1.AutoSizeColumn(1); StringGrid1.AutoSizeColumn(2);  

3. Hoʻopili pololei iā ia iho ma ke kaomi ʻana i ka laina me ka mea hoʻohana a me kāna helu kau:

  id:=(StringGrid1.Row);// узнаем номер строки  IntToStr(StringGrid1.Row)
  ids:=StringGrid1.Cells[2,id]; //получаем идентификатор rdp
  cmdline:='/c mstsc /shadow:'+ ids; //и подключаемся....
 if (b_rdp.Checked=True) then  if ShellExecute(0,nil, PChar('cmd'),PChar(cmdline),nil,1) =0 then;       

4. Ua hana ʻia kekahi mau mea hoʻonani hou, e like me ka hoʻokaʻawale ʻana ma ke kaomi ʻana i ke pihi radio, a me nā leka i ka mea hoʻohana a i ʻole nā ​​mea hoʻohana a pau.

Mea hoʻohana no ka pilina o ke aka kanaka o ka luna hoʻomalu ʻole i nā kau mea hoʻohana RDP ma WinServer 2012R2

→ Hiki ke ʻike ʻia ke code kumu piha maanei

III. Ke hoʻohana nei i AdminLink - kaʻu i ʻike ai:

Hana ʻo AdminLink i kahi pōkole e kuhikuhi ana i kahi o ka pono admilaunch.exe, a me kahi kope pilikino o ka pono hoʻomaka AdmiRun.Exe aia ma ka waihona o ka mea hoʻohana, no ka laʻana ʻO Vasya, ʻano C:UsvasyaWINDOWS. Ma keʻano laulā, ʻaʻole maikaʻi loa nā mea āpau: hiki iā ʻoe ke pāʻani a puni me nā kuleana komo i ka faila pōkole a me nā mea ʻē aʻe e hoʻomaʻemaʻe i kou luna manaʻo ponoʻī.

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka