Форум программистов, компьютерный форум, киберфорум
HCL Notes: Программирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/101: Рейтинг темы: голосов - 101, средняя оценка - 4.53
0 / 0 / 0
Регистрация: 01.12.2006
Сообщений: 67

Вапрос по группам в Acl

03.09.2007, 11:04. Показов 18647. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день!

В ACL пользователи прописаны не явно а по группам. Можно ли при помощи скрипта получить содержание определённой группы?
Это необходимо для показа в форме кнопки какой-то определённый момент определённой группы в ACL.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.09.2007, 11:04
Ответы с готовыми решениями:

Вапрос про WebBrowser
Как сделать чтобы верху формы Form1.caption Тут писалася имя сайта напримерь еслы зохажу google.ru вот это было

Вапрос про IdFtp
Почему это не работает.Зранее спасибо.даёот ошибку. begin IdFTP.Host := 'Host'; // указываем хост FTP сервера IdFTP.Port := 21; //...

Вапрос про Form
как можно спрять или удалить это.Зарнее спасибо

12
0 / 0 / 0
Регистрация: 27.02.2007
Сообщений: 154
03.09.2007, 11:11
<!--QuoteBegin-rm2005+4:09:2007, 09:51 -->
<span class="vbquote">(rm2005 @ 4:09:2007, 09:51 )</span><!--QuoteEBegin-->Можно ли при помощи скрипта получить содержание определённой группы?
[snapback]77164" rel="nofollow" target="_blank[/snapback]?[/quote]
из базы names.nsf
0
0 / 0 / 0
Регистрация: 01.12.2006
Сообщений: 67
03.09.2007, 11:22
Для: Ronchik
Большое спасибо!!!!
0
0 / 0 / 0
Регистрация: 04.12.2004
Сообщений: 3,329
03.09.2007, 11:24
Код не мой. Я просто разместил объяву.


Get User Groups
This is an example of a recursive function that gets all the groups that a user is in, including nested
groups. I’ve included an example Initialize sub from an agent to demonstrate the use.
Sub Initialize
** Determine the groups that the current user is in, including
** all nested groups
On Error Goto processError
Dim session As New NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim serverName As String
Dim userName As String
Dim groupList As Variant
serverName = "MyNABServer"
userName = session.UserName
Set db = session.GetDatabase( serverName, "names.nsf" )
Set view = db.GetView( "Groups" )
** create a text file for output
fileNum% = Freefile()
fileName$ = "C:\UserGroupInfo.txt"
Open fileName$ For Output As fileNum%
Print #fileNum%, "User Group Info for " & userName & " on " & serverName
Print #fileNum%, ""
** get the group information
Call GetGroups( userName, view, "", 0, fileNum% )
** close the file and exit
Close fileNum%
Exit Sub
processError:
Messagebox "Error " & Cstr(Err) & ": " & Error$
Reset
Exit Sub
End Sub

Function GetGroups (lookupName As String, groupView As NotesView, alreadyUsed As
String, _
indentLevel As Integer, fileNum As Integer)
** This sub will recursively iterate through all the groups in the NAB,
** figuring out which ones the given user or group is in.
On Error Goto processError
Dim doc As NotesDocument
Dim memberItem As NotesItem
Dim groupName As String
Dim tabString As String
** use tabString to indent the entry, indicating that a group is a
** member of the group below it
For i% = 1 To indentLevel
tabString = tabString & Chr(9)
Next
** step through the group documents in the NAB that were looking at
Set doc = groupView.GetFirstDocument
Do While Not (doc Is Nothyng)
Set memberItem = doc.GetFirstItem( "Members" )
groupName = doc.ListName(0)
** Check for direct inclusion in a group. If the lookup name is
** in the Members text list and we havent already used the group
** (if we did, it will be in the alreadyUsed string, and would
** represent a circular reference), output the group name to our
** file and recurse
If (memberItem.Contains( lookupName )) And (Instr(1, alreadyUsed, "~" & groupName
& "~", 5) < 1) Then
Print #fileNum%, tabString & groupName
** recursion will find other groups that thys group is
** a member of
Call GetGroups( groupName, groupView, alreadyUsed & "~" & groupName & "~",
indentLevel + 1, fileNum )
End If
Set doc = groupView.GetNextDocument( doc )
Loop
Exit Function
processError:
Print #fileNum%, "Error " & Cstr(Err) & ": " & Error$
Exit Function
End Function
0
0 / 0 / 0
Регистрация: 01.12.2006
Сообщений: 67
06.09.2007, 14:20
Для: Medevic
Отличная функция всё работает, ну немного подработал её. Ну вот теперь вопрос возник. Человек найденный в группе доступа, не имеет прав на редактирование документа, т.к. в авторских полях его нет, а есть его группа, а по группе доступ не предоставляется.
как быть в этом случае? Раскрывать группы в авторские поля это я думаю не выход, т.к. группы по 400 человек.
0
0 / 0 / 0
Регистрация: 04.12.2004
Сообщений: 3,329
06.09.2007, 14:34
<!--QuoteBegin-rm2005+7:09:2007, 14:07 -->
<span class="vbquote">(rm2005 @ 7:09:2007, 14:07 )</span><!--QuoteEBegin-->Отличная функция всё работает, ну немного подработал её. Ну вот теперь вопрос возник. Человек найденный в группе доступа, не имеет прав на редактирование документа, т.к. в авторских полях его нет, а есть его группа, а по группе доступ не предоставляется.
[snapback]77474" rel="nofollow" target="_blank[/snapback]?[/quote]
Группа должна быть типа Multi-purpose или Access Control List only чтобы доступ работал. У тебя так?
0
0 / 0 / 0
Регистрация: 01.12.2006
Сообщений: 67
06.09.2007, 14:43
у меня группа Multi-purpose
0
0 / 0 / 0
Регистрация: 15.12.2006
Сообщений: 641
06.09.2007, 14:51
Хмм, как это группе доступ не предоставляется? Или я уже не соображаю чего в пятницу вечером?

Кстати, лучше всего давать доступ роли, а группе назначать эту роль в ацле. Такая схема лучше во всех отношениях.
0
0 / 0 / 0
Регистрация: 04.12.2004
Сообщений: 3,329
06.09.2007, 14:52
<!--QuoteBegin-rm2005+7:09:2007, 14:30 -->
<span class="vbquote">(rm2005 @ 7:09:2007, 14:30 )</span><!--QuoteEBegin-->у меня группа Multi-purpose
[snapback]77477" rel="nofollow" target="_blank[/snapback]?[/quote]
Видимо, я не так понял. Нужно дать права редактирования конкретному человеку из группы? Тогда пропиши его в авторском поле.
0
0 / 0 / 0
Регистрация: 01.12.2006
Сообщений: 67
06.09.2007, 15:10
Для: Medevic
Именно то я и хочу сделать. Ситуация такая. Я не могу человека прописать в поле из группы доступа, т.к. я не знаю кто именно из группы будет работать с доком, а всех людей из группы в поле авторс я думаю тоже не целесобразно добавлять.
0
0 / 0 / 0
Регистрация: 04.12.2004
Сообщений: 3,329
06.09.2007, 15:28
Для: rm2005
Понятно. Нужно динамически раздавать права доступа?
Так просто этого не сделать. Могу предложить организовать через серверного агента.
Пример:
Есть общий документ. Он содержит общедоступную информацию. Делаем там кнопки "Получить данные №1", "Получить данные №2". Данные №1 и данные №2 - это документы с приватными данными. Доступ к ним имеет пользователь с определенной ролью. Лучше, если этот пользователь сервер.
Теперь в событии PostOpen общего документа вызываем серверный агент, который создаёт копии документов с приватными данными. Копии эти можно сделать доступными только текущему пользователю. Т.е. прописать его в соответствующих полях доступа. Пользователь открывает эти документы по кнопкам, работаем с ними. Потом, когда сохраняет их, вызываем серверного агента, который закачивает данные из копий в нормальные документы.
Копии каждую ночь удаляем шедульным агентом.
0
0 / 0 / 0
Регистрация: 26.05.2006
Сообщений: 1,313
09.09.2007, 14:27
Цитата Сообщение от K-Fire
Кстати, лучше всего давать доступ роли, а группе назначать эту роль в ацле. Такая схема лучше во всех отношениях.
Не во всех. Роли имеют одно неприятное свойство: они быстро кончаются. ACL может содержать всего 60 с чем-то ролей.
Мне досталась по наследству такая база. Её спихнули мне, когда число филиалов в компании зашкалило за 100. Пришлось ВСЕ переделывать... Врагу не пожелаю
0
09.09.2007, 15:15
<!--QuoteBegin-Constantin A Chervonenko+10:09:2007, 14:14 -->
<span class="vbquote">(Constantin A Chervonenko @ 10:09:2007, 14:14 )</span><!--QuoteEBegin-->Не во всех. Роли имеют одно неприятное свойство: они быстро кончаются. ACL может содержать всего 60 с чем-то ролей.
[snapback]77661" rel="nofollow" target="_blank[/snapback]?[/quote]
а именно 70
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.09.2007, 15:15
Помогаю со студенческими работами здесь

Вапрос о Java-серверном приложение
Не где не могу найти ответ на такой вопрос : На Java написанно серверное приложение, скомпилированно в .class А вот что дальше - ...

Простой вапрос про символ.
Хочу написать такой код int g=*a`; cout &lt;&lt;a; ну он будет виводит код буква A 65 . У миня проблема в том как место * ставить (`)...

Народ помагите простой вапрос.
Подскажите это не понимаю a:b что это делает.Заранее спасибо. { int a; int b,c,k; cout &lt;&lt;&quot;Hello&quot;&lt;&lt;'\n'; ...

Вапрос как в php отправить post запрос
Как в php отправить post запрос на страничку напримерь 1.ru/index.php

есть вапрос по отправки письма з денвера на пошту
праблема в том что при отправки письма на email викидает пустую белою страницу ето праблема в денвере или в коде заранее спасиба!


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru