CI/CD - WSD ACL is not deploy

We are doing CI/CD with repository based deployment.
Whenever we created a new package, we need to set the wsd file with Anonymous for List and Execute.

I read through the topic here.

I created aclread.cnf in package/config folder with the following and it work.

<?xml version="1.0" encoding="UTF-8"?> Anonymous

But when I put the same content into aclmap_sm.cnf for execute, it just not working.
I still have the Execute ACL being default.

Just wonder how could I create a package based ACL properly.

Hi Kenny,

I found that the easiest way to do this is to have a startup service for your package with the following content:

ACLManager.setAclGroup(“path_to_wsd”, “Anonymous”);
ACLManager.setBrowseAclGroup(“path_to_wsd”, “Anonymous”);

This way whenever the package is deployed, this service will be executed and the correct ACL will be assigned to your resource.

Hi Vlad,
I’m pretty new to webMethods, could you please throw more light on usage of

Is there anywhere I could find some help on server.ACLManager tutorial?


Hi Kenny,

I do not know if there is any documentation.

What I do know is that you would want to use one or more of these 4 methods:

setAclGroup(String resource, String aclName) - sets the Execute ACL privileges on the indicated resource

setReadAclGroup(String resource, String aclName) - sets the Read ACL privileges on the indicated resource

setWriteAclGroup(String resource, String aclName) - sets the Write ACL privileges on the indicated resource

setBrowseAclGroup(String resource, String aclName) - sets the List ACL privileges on the indicated resource

Besides these methods, the ACLManager class has all sort of methods to handle ACL related actions (verification if an ACL is used, adding groups to ACLs, etc…)


Here is the code, you can built a wrapper service and add them as startup services in the package.

Create a flow service with the below inputs and invoke "wm.server.ns:setACLInfo". To make "wm.server.ns:setACLInfo" visible in your designer add the setting "watt.server.ns.hideWmRoot=false" on IS Settings > Extended, refresh Desginer console


name=complete ns of wsd eg., Default:new_wsd

As this is internal service, there is no docs available and this service might change from version to verison without prior notice, hence use this service at your own risk.

Let me know if you have any questions, you can contact me via email also.