Регистрация пользователей (RegisterNewUser)

Тема в разделе "Lotus - Программирование", создана пользователем dimat, 26 сен 2012.

  1. dimat

    dimat Lotus team
    Lotus team

    Регистрация:
    31 июл 2008
    Сообщения:
    518
    Симпатии:
    0
    Всем привет!

    Agent 'RegisterNewUser' error: Notes error: You are not allowed to update the certifier log (Имя пользователя)


    Вот такую ошибку получаю в консоль при попытке зарегистрировать пользователя классом NotesRegistration агентом на сервере.
    Подскажите: как исправить?

    Код (Text):
    Dim nr As New NotesRegistration
    nr.CertifierIDFile=certFilePath
    nr.GroupList=pdoc.GetItemValue("Group")
    nr.IDType=172
    nr.IsNorthAmerican=False
    nr.RegistrationLog="log.nsf"
    nr.RegistrationServer=db.Server
    nr.ShortName=UsrNameString
    nr.StoreIDInAddressBook=True
    nr.UpdateAddressBook=True
    nr.MailSystem=REG_MAILSYSTEM_NONE
    Call nr.RegisterNewUser(UsrNameString,IdFilePath,"","","",certPwd,"","","","",PswdString,175)
    точно такой же код на клиенте работает без проблем
     
  2. savl

    savl Lotus team
    Lotus team

    Регистрация:
    28 окт 2011
    Сообщения:
    2.051
    Симпатии:
    146
    Ibm 2001
    и

    тут еще совет
     
  3. dimat

    dimat Lotus team
    Lotus team

    Регистрация:
    31 июл 2008
    Сообщения:
    518
    Симпатии:
    0
    savl проверил права - для меня и для сервера они максимальные
     
  4. savl

    savl Lotus team
    Lotus team

    Регистрация:
    28 окт 2011
    Сообщения:
    2.051
    Симпатии:
    146
    еще вот:
    если что еще найду напишу
    что-то интересное: 3 вида ошибок
     
  5. VladSh

    VladSh начинающий
    Lotus team

    Регистрация:
    11 дек 2009
    Сообщения:
    1.251
    Симпатии:
    2
    Вот такое было.
    Я бы по одной коментил строки, возможно ещё какая-то опция даёт эту ошибку.
     
  6. dimat

    dimat Lotus team
    Lotus team

    Регистрация:
    31 июл 2008
    Сообщения:
    518
    Симпатии:
    0
    Вновь вернулся к решению проблемы регистрации пользователя на сервере.

    Вобщем пользователь теперь регистрируется.
    После того как указал RegistrationServer="".

    Еще одна проблема появилась, вернее она появилась после обновления сервера до 8.5.3FP2HF25.

    При регистрации пользователь не добавляется в группу указанную в параметре GroupList.
     
  7. VladSh

    VladSh начинающий
    Lotus team

    Регистрация:
    11 дек 2009
    Сообщения:
    1.251
    Симпатии:
    2
    dimat
    Это также не работает, вернее глючит (то добавляет, то нет, и не поёмёшь, от чего это зависит); и не только в 8.5.3. Я на это не рассчитываю, а добавляю после регистрации вручную.
     
  8. dimat

    dimat Lotus team
    Lotus team

    Регистрация:
    31 июл 2008
    Сообщения:
    518
    Симпатии:
    0
    VladSh
    Понял, Спасибо! Буду так же делать.
     
  9. Shandrik

    Shandrik Well-Known Member

    Регистрация:
    30 дек 2010
    Сообщения:
    236
    Симпатии:
    24
    В строке Call nReg.RegisterNewUser(...) получил ошибку:

    Notes error: The requested item does not exist (Chack)

    Причем "Chack" - это первый параметр RegisterNewUser - LastName

    Вообще не понимаю происходящего.
     
  10. Shandrik

    Shandrik Well-Known Member

    Регистрация:
    30 дек 2010
    Сообщения:
    236
    Симпатии:
    24
    О! Накопал:
    http://www-12.lotus.com/ldd/doc/uafiles.nsf/docs/RN65/$File/readme.pdf

    Server
    "The requested item does not exist" error
    You may see this error on your server console after using the CA process to add an Alternate Name to a user:
    "Error processing certificate request: The requested item does not exist." This error only occurs if you try to recertify or register a user immediately after you add an Alternate Name to your CA Process-enabled certifier, and before the certifier has automatically refreshed its context.
    Workaround
    � At the server console, type
    tell adminp process all
    then
    tell ca refresh
    � If your CA Process-enabled Notes certifier has been locked with a user ID, you will need to unlock it using the following command:
    te ca unlock <X:\user.id> <password>
    Be sure to type the full path and file name of the ID file used to lock your CA and the ID's password when using
    the unlock command. Type the following to verify that it is active again:
    te ca status
    � Next, open the Administration Requests database and go to the Certification Authority Requests/Certificate Requests view. Locate and open the rejected request. The request will have been rejected with the following rejection reason:
    5935: unknown
    � Click Edit Request -> Approve Request. The certificate should be successfully issued.



    Убрал упоминания об альтернативных именах и языках и заработало.
     
  11. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.073
    Симпатии:
    299
    тупо добавляю юзера в нужную АК, группу - через админпроцесс пинаю:
    Код (LotusScript):
    Sub Initialize
    On Error Goto ErrH
    Dim status
    status=Split({Modifying groups...},{})
    Set ses=New NotesSession
    Set db=ses.CurrentDatabase
    Set agent=ses.CurrentAgent
    Dim noteid As String
    noteid=agent.ParameterDocID
    Dim doc As NotesDocument
    Set doc=db.GetDocumentByID(noteid)
    Dim adminp As NotesAdministrationProcess
    Set adminp = ses.CreateAdministrationProcess(db.Server)
    Dim members(0) As String, grps
    members(0)=doc.GetItemValue(FULLNAME_FLD)(0)
    grps=doc.GetItemValue(GROUPS_FLD)
    ForAll grp In grps
    noteid$ = adminp.AddGroupMembers(grp, members)
    If Len(noteid)=0 Then
    status=ArrayAppend(status, ERROR_TXT & CM_ERRADMINPGRPMOD & grp)
    MsgBox status(UBound(status))
    Else
    status=ArrayAppend(status, CM_SUCCESS & grp)
    End If
    End ForAll
    Quit:
    If Not doc Is Nothing Then Call doc.ReplaceItemValue(STATUS_FLD, status): Call doc.Save(True, False)
    Exit Sub
    ErrH:
    status=Arrayappend(status, RaiseErrorMsg)
    Resume Quit
    End Sub
    я сторонник системных подходов, но в "неустойчивых" случаях - как-то руками :)
     
  12. Shandrik

    Shandrik Well-Known Member

    Регистрация:
    30 дек 2010
    Сообщения:
    236
    Симпатии:
    24
    Применил указанный выше воркэраунд - всё заработало, даже шаблон почтовой базы стал принимать.
     
  13. Shandrik

    Shandrik Well-Known Member

    Регистрация:
    30 дек 2010
    Сообщения:
    236
    Симпатии:
    24
    А можно ли заблокировать пользователя?
     
  14. erdi

    erdi Well-Known Member

    Регистрация:
    20 авг 2008
    Сообщения:
    261
    Симпатии:
    36
    создаешь группу с типом запрета доступа, в серверном документе выбираешь ее для запрета и все кто в этой группе находится - не пускаются на сервер
     
  15. Shandrik

    Shandrik Well-Known Member

    Регистрация:
    30 дек 2010
    Сообщения:
    236
    Симпатии:
    24
    Имеется в виду кодом - есть ли какой метод, блокирующий юзера?
     
  16. Shandrik

    Shandrik Well-Known Member

    Регистрация:
    30 дек 2010
    Сообщения:
    236
    Симпатии:
    24
    А есть ли возможность кодом удалить оттуда юзера?
     
  17. erdi

    erdi Well-Known Member

    Регистрация:
    20 авг 2008
    Сообщения:
    261
    Симпатии:
    36
    можно....никто тебе не запрещает(кроме админа) взять группу, взять всех членов этой группы и либо удалить, либо добавить пользователя
     
  18. Shandrik

    Shandrik Well-Known Member

    Регистрация:
    30 дек 2010
    Сообщения:
    236
    Симпатии:
    24
    Можете пример кода привести?
     
  19. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.073
    Симпатии:
    299
    так былже пример, через админП
     
  20. Shandrik

    Shandrik Well-Known Member

    Регистрация:
    30 дек 2010
    Сообщения:
    236
    Симпатии:
    24
    Там же только добавление, это я сделал, а как удалить-то?
     
Загрузка...

Поделиться этой страницей