The SID for network service is well-known (S-1-5-20), so if you know that, you can use a tool like LDIF or ldp.exe. Let's go the ldp route since I think it is the most useful tool for LDAP programers to learn to use anyway.
- Start up ldp from the ADAM program directory in C:\windows\adam
- Connect to localhost or whatever the DNS name of the ADAM server is
- Bind as an administrator in ADAM (if current user is administrator, you can just bind as current user)
- Find the readers role group for the partition, first by doing View | Tree and finding the partition root where the important data is stored
- Navigate to the Roles container and find the CN=Readers object
- Right click on it and choose modify (you can also skip the tree thing if you know the DN of the group by simply typing it in from the Modify option on the menu)
- For attribute name, use "member"
- For value, use "<SID=S-1-5-20>"
- For modification type, use "add"
- Add the modification to the list and click the button to execute it
If all went well, the mod will succeed and the membership for the group in LDP will show an object in the FSP container with the SID of Network Service.
You can also use <SID=S-1-5-11> to use authenticated users instead. You can also include both although Network Service will always have the authenticated users SID so you don't really need both.
Hopefully this will all help. It is from memory but it should be close enough.
Learning to use LDP a little is good because you can see what's really going on at the LDAP data layer level and execute the actual LDAP operations directly. ADSI puts it through a bit of a filter. Sometimes it makes things easier but sometimes the filter makes it hard to know what's going on. Usually, programmers want to know what's going on.