• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Как узнать полный список агентов по расписанию,не все агенты видны

  • Автор темы yerke
  • Дата начала
Y

yerke

привет всем

скажите добрые люди как узнать
все работающие агенты по расписанию во всех базах сервака

в админ клиенте в
server- status- shedules- agents

не все агенты видны
 
A

Akupaka

можно по каждой базе пройтись и выудить ) но это весьма напряжно
зы: название темы поменяй, чтобы расширенней было, может люди просто не смотрят
 
K

Klido

не все агенты видны
собственно, вот проблемовопрос. Как узнать - Tell Amgr Schedule и если вчитаться, то Shows the schedule for all agents scheduled to run for the current day, т.е. ночные агенты не покажет - покажет после 00 часов :)
 
N

Nikotin

Вот нашел в одной базе, этот создает документ расписанием по выбранной базе, зацикли это по всем базам сервера и все =)
Поля в форме "Shedule Creation". dbname-текст, agamount - текст, stable - ричтекст
Код:
Sub Click(Source As Button)
Dim session As New NotesSession
Dim cdb As NotesDatabase
Dim db As NotesDatabase
Dim ws As New NotesUIWorkspace
Dim doc As NotesDocument
Dim dbname As NotesItem
Dim agamount As NotesItem


address= ws.Prompt(13,"Диалог выбора БД","") ' PROMPT_CHOOSEDATABASE (13), return массив(2) строк
Set db= Session.GetDatabase(address(0), address(1), False) ' Назначение выбранной БД
Set cdb = session.CurrentDatabase 'Назначение текущей БД "Расписание Агентов"
Set doc = New NotesDocument( cdb )
doc.Form = "Shedule Creation"
doc.dbname = address(2)

'Объявление переменной по типу AgentList, по которому будет идти заполнение файла
Const N=75 'Максимальное количество элементов выводимого списка
Dim agl (1 To N) As agentslist
Dim agl2 (1 To N) As agentslist

'Номер первого шага заполнения файла и массива переменной даты
i%=2
Dim intdata (1 To N) As Integer
Dim intdata2 (1 To N) As Integer

agl(1).AgentName$="Имя агента"
agl(1).AgentLastRun="Время"
Forall a In db.Agents ' следует добавить проверку на наличие таких агентов впринципе
If a.trigger=TRIGGER_SCHEDULED And a.IsEnabled Then
agl(i%).AgentName$=" "+a.name 'добавление пробела вначале, чтобы текстовый редактор
'notepad разделял agentlastrun[i-1] и agentname[i]
agl(i%).AgentLastRun=Right$(Cstr(a.lastrun),8)
'У нас может получится время agentlastrun в двух форматах (размерность 8): XX:XX:XX и X:XX:XX_. 
'Для корректной обработки нужно второй формат нужно переделать в первый,
'добавив пробел в начале, в итоге получится: _X:XX:XX
If Mid$(agl(i%).agentlastrun,2,1)=":" Then
agl(i%).AgentLastRun=" "+agl(i%).AgentLastRun
End If
intdata(i%)=Cint(Left$(agl(i%).agentlastrun,2))*100+Cint(Mid$(agl(i%).agentlastrun,4,2)) ' Преобразование текстовой даты в числовой формат
Print "Добавление агента", agl(i%).AgentName$, "в список"
i%=i%+1
End If
End Forall
'Пузырьковая сортировка: сортируем по числовой (integer) дате, меняем местами элементы списка agl
'Итак, последний элемент списка имеет номер i-1, поэтому
Print "Сортировка списка агентов"
j%=i%-1
While j%>0
j%=j%-1
For k%=1 To i%-2
If intdata(k%)>intdata(k%+1) Then
temp%= intdata(k%+1)
intdata(k%+1)=intdata(k%)
intdata(k%)=temp%

temp1$=agl(k%+1).agentname$
temp2$=agl(k%+1).agentlastrun
agl(k%+1).agentname$=agl(k%).agentname$
agl(k%+1).AgentLastRun=agl(k%).AgentLastRun
agl(k%).agentname$=temp1$
agl(k%).agentlastrun=temp2$
End If
Next
Wend

Print "Построение таблицы расписания"
'Количество элементов списка= i%-1, 1-ая строчка: заглавие
Dim rti As New NotesRichTextItem(doc, "stable")
Call rti.AppendTable(i%-1,2)
Dim rtnav As NotesRichTextNavigator
Set rtnav = rti.CreateNavigator
Call rtnav.FindFirstElement(RTELEM_TYPE_TABLECELL)
For irow%=1 To i%-1 Step 1
For icolumn%=1 To 2 Step 1
Call rti.BeginInsert(rtnav)
If icolumn%=1 Then
Call rti.AppendText(agl(irow%).agentname$)
End If
If icolumn%=2 Then
Call rti.AppendText(agl(irow%).agentlastrun)
End If
'Call rti.AppendText("Row " & iRow% & ", _	 Column " & iColumn%)
Call rti.EndInsert
Call rtnav.FindNextElement(RTELEM_TYPE_TABLECELL)
Next
Next


Print "Сохранение"
doc.agamount=Cstr(i%-2)
Call doc.Save( False, False )
Call ws.ViewRefresh 'Optional: Обновление вьюшки со свежесозданным документом внутри

End Sub
 
Y

yerke

If a.trigger=TRIGGER_SCHEDULED And a.IsEnabled Then
эт понтно

и еще не ко всем базам у вас же будет доступ
чтоб оттуда вытаскивать список агентов
разве что подписать данный код сервер айди


хотелось бы узнать средствами админ клиента
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!