2017-02-20 19 views
0

Итак, я застрял в создании VUsers для моего босса на своем сервере marklogic и наткнулся на проблему, которую я не могу исправить. Иногда marklogic не регистрирует меня, создавая пользователя, когда я нажимаю кнопку ввода в первый раз, поэтому, когда я щелкнул второй раз, он создал дубликата пользователя. Обычно это не проблема, обычно это просто говорит «имя пользователя уже используется» на втором, но на этот раз я получаю сообщение об ошибке, которое появляется каждый раз, когда я его открываю. Я не могу изменить его имя, и я не могу редактировать его разрешения. Есть ли способ удалить один из них?Ошибка сервера 500 на сервере MarkLogic

ответ

2

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

Обращаем ваше внимание, что это подход с острым инструментом, и если вы используете его ненадлежащим образом, можете уничтожить свою базу данных безопасности - так что обращайтесь с особой осторожностью!

Если вы запустите это в Query Console против вашей базы данных безопасности, он вернет последовательность результатов. Я предоставляю URI для каждой записи безопасности и содержимого файла. Таким образом, вы можете принять обоснованное решение о том, какой из них вручную удалить с использованием предоставленного URI. Я не автоматизировал это как часть образца по дизайну - я оставляю вам анализ базы данных безопасности.

xquery version "1.0-ml"; 
declare namespace sec="http://marklogic.com/xdmp/security"; 

for $doc in fn:doc(cts:uri-match("http://marklogic.com/xdmp/users*"))[./sec:user/sec:user-name="beezelbubba"] 
    return <result uri="{xdmp:node-uri($doc)}">{$doc}</result> 

Конечно, заменить beezelbubba с именем пользователя в вопросе.

Есть и другие способы поиска этой информации. Я выбираю подход xPath, потому что некоторые функции поиска могут быть недоступны в базе данных безопасности.

+0

Фантастический, он работал красиво! –

+0

отлично - если это сработало, можете ли вы пометить ответ так, как принято, чтобы люди могли проводить время на других билетах? благодаря –

Смежные вопросы