MCMS API doesn't provide any way to get the user groups (role relevant) for channels/postings. It may be useful in certain places if we can get the users who have certain rights. Also, there is no way by which we can distinguish a Moderator and an Editor. So, I thought of writing a class library which can be used for this purpose.
MCMS User Roles API
GetAuthors - to get the author collection for a given Channel.
GetEditors - to get the editors collection for a given Channel.
GetModerators - to get the moderators collection for a given Channel.
GetChannelManagers - to get the channel managers collection for a given Channel.
GetTemplateDesigners - to get the template designers for a given Channel.
IsAuthor - to check whether a given person is an author.
IsEditor - to check whether a given person is an editor.
IsModerator - to check whether a given person is a moderator.
IsChannelManager - to check whether a given person is a channel designer.
IsResourceManager - to check whether a given person is a resource manager.
IsTemplateDesigner - to check whether a given person is a template designer.
dataConfiguration.config file must be modified to point out the MCMS database name and server name.
<parameter name="database" value="" isSensitive="false" />
<parameter name="server" value="" isSensitive="false" />
And the App.config file must contain the data which is provided with the class library.
Even though it works fine for me, please do check before using this. Because this is a direct database change, you must be very careful before using this.
= = "urn:schemas-microsoft-com:office:office"
N.B: Unfortunately, direct access to the MCMS database without using the MCMS publishing API breaks the Microsoft Support Boundaries for MCMS. So, if you are interested in using Microsoft Support, please don't use this.