
admin:appserver-set-privilege( $config as element(configuration), $appserver-id as xs:unsignedLong, $value as xs:unsignedLong ) as element(configuration)
This function sets an execute privilege in the configuration for the specified App Server. When a privilege is set, the user who makes a request to the App Server must have been granted (via a role, either directly or indirectly) the specified privilege.
http://marklogic.com/xdmp/privileges/admin/app-server-security
http://marklogic.com/xdmp/privileges/admin/app-server-security/{id}
http://marklogic.com/xdmp/privileges/admin/group-security
http://marklogic.com/xdmp/privileges/admin/group-security/{id}
  xquery version "1.0-ml";
  import module namespace admin = "http://marklogic.com/xdmp/admin"
      at "/MarkLogic/admin.xqy";
  let $config := admin:get-configuration()
  let $groupid := admin:group-get-id($config, "Default")
  return
  admin:appserver-set-privilege($config,
         admin:appserver-get-id($config, $groupid, "myAppServer"),
	 xdmp:eval('
                xquery version "1.0-ml";
                import module "http://marklogic.com/xdmp/security"
      at "/MarkLogic/security.xqy";
      sec:get-privilege("http://marklogic.com/my.uri",
         "execute")/sec:privilege-id',
      (),
     <options xmlns="xdmp:eval">
     <database>{xdmp:security-database()}</database>
     </options>))
  (: returns the new configuration element -- use admin:save-configuration
     to save the changes to the configuration or pass the configuration
     to other Admin API functions to make other changes.  :)
  
Stack Overflow: Get the most useful answers to questions from the MarkLogic community, or ask your own question.