But I don't want to blog!
One of the things Apple does quite well is stick to standards when feasible and that usually means there is a plethora of options available for all services, just like there are in any other BSD or Linux installation. The problem we encounter here is that what they do slightly better is hide these advanced options so that the "No IT department required" slogan holds some grain of truth. Specifically in this case I'm referring to an item that debuted with OS X Leopard Server, the brand new "Team Server", or what is more commonly referred to as Wiki/Blog/WebCalender.
Naturally, apple does not provide extensive options in the server admin or workgroup manager GUI's to manage these services, either as a whole or for individual users and groups. We are basically expected to either turn them on or off and leave it at that. But did you know that you can control much more granular settings for the team server, using the inspector tool in workgroup manager? (and perhaps a bit of terminal too!)
First, a bit of background on how the team server works -- for this section you will want to reference Server Admin (you should probably not do any of this if you are using Server Preferences to manage the box) and make sure your web server is bound to an Open Directory (or Active Directory with apple extensions). You will notice that there is no "team server" button and corresponding "light" in server admin anywhere -- that means you can not check a box to enable the service nor can you view the status of it.
Instead, the "Team Server" is one of the completely hidden from view "just works" services in OS X. The only way to check it's status is via the command line on the server:
web-1:~ strucke1$ sudo serveradmin status teams
teams:state = "STOPPED"
The server will automatically start it up if you are using it with one or more of your web sites. To enable the team server for a site, you simply check the "Wiki and Blog" for groups or "Blog" for users option in a web site configuration:

This will appear in the system.log:
Apr 22 10:56:53 web-1 servermgrd[54]: servermgr_web: Teams service started
and you can check the status of the service:
web-1:~ strucke1$ sudo serveradmin status teams
teams:state = "RUNNING"
Now when you initially join a server to an open directory, OS X generates a Unique ID (henceforth referred to as 'GUID') for the server and registers that in the directory record. If you open workgroup manager, go to preferences and enable the inspector tool you will be able to see all of the LDAP records that are internally created and managed as you enable or disable services. You can view the server's GUID in it's computer record beneath the inspector tab in the field "apple-generateduid". You will have to enable the "Show Native Attributes" option to be able to view this data. Click the Options button in the inspector tab (under the computer record):


Select the "dsAttrTypeNative:apple-generateduid" field and click the Edit button to view or copy the whole thing. Do not change this value yourself.


When you create a web site in server admin, that site is also assigned a GUID of it's own. It is the combination of server <=> site GUID's that are used to enable team services for users and groups. The site GUIDs are stored in the computer record as well, in the field "apple-serviceinfo".
Naturally, apple does not provide extensive options in the server admin or workgroup manager GUI's to manage these services, either as a whole or for individual users and groups. We are basically expected to either turn them on or off and leave it at that. But did you know that you can control much more granular settings for the team server, using the inspector tool in workgroup manager? (and perhaps a bit of terminal too!)
First, a bit of background on how the team server works -- for this section you will want to reference Server Admin (you should probably not do any of this if you are using Server Preferences to manage the box) and make sure your web server is bound to an Open Directory (or Active Directory with apple extensions). You will notice that there is no "team server" button and corresponding "light" in server admin anywhere -- that means you can not check a box to enable the service nor can you view the status of it.
web-1:~ strucke1$ sudo serveradmin status teams
teams:state = "STOPPED"
The server will automatically start it up if you are using it with one or more of your web sites. To enable the team server for a site, you simply check the "Wiki and Blog" for groups or "Blog" for users option in a web site configuration:
This will appear in the system.log:
Apr 22 10:56:53 web-1 servermgrd[54]: servermgr_web: Teams service started
and you can check the status of the service:
web-1:~ strucke1$ sudo serveradmin status teams
teams:state = "RUNNING"
Now when you initially join a server to an open directory, OS X generates a Unique ID (henceforth referred to as 'GUID') for the server and registers that in the directory record. If you open workgroup manager, go to preferences and enable the inspector tool you will be able to see all of the LDAP records that are internally created and managed as you enable or disable services. You can view the server's GUID in it's computer record beneath the inspector tab in the field "apple-generateduid". You will have to enable the "Show Native Attributes" option to be able to view this data. Click the Options button in the inspector tab (under the computer record):

Select the "dsAttrTypeNative:apple-generateduid" field and click the Edit button to view or copy the whole thing. Do not change this value yourself.
When you create a web site in server admin, that site is also assigned a GUID of it's own. It is the combination of server <=> site GUID's that are used to enable team services for users and groups. The site GUIDs are stored in the computer record as well, in the field "apple-serviceinfo".



Thanks to my overzealous sense of security I had several optional authentication mechanisms disabled on our directory server -- one of these being "WebDAV-Digest" which oh-so-eloquently says in plain text "web service clients". It wouldn't be a valid solution if it wasn't completely obvious.