Return to Jive Software

Skip navigation
7,385 Views 40 Replies Last post: Feb 26, 2010 6:43 AM by dbeutner RSS
nilsbolsen Intermediate 571 posts since
Apr 10, 2008
Currently Being Moderated

Sep 28, 2009 2:52 AM

Blogposts in SocialGroups can be edited by all members

Hi Jive,

 

we have an internal incident where a group member (BAD) edited a blogposts by another member (GOOD).

 

GOOD created a blogposts.

BAD edited the post to something not nice

 

The blogost does not show that it was edit by BAD. It still shows GOOD as the creator.

 

This feels like a bug or two or ...

 

Firstly, the last editor should show somewhere.

Secondly, the blogpost should not be editable by other members. They can comment.

Thirdly, I did not find any documentation about how permissions in a social group are handled. Who can do what?

 

best regards,

Nils

Expert 3,517 posts since
Jun 18, 2009
Currently Being Moderated
Sep 28, 2009 3:55 AM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

Hello Nils,

 

Social group permissions are much "looser" than space permissions -- that is, you're either a member of the group or you're not. If you're a member, you should be able to create any type of content. A member can edit any other member's content as well -- even a group administrator's content.

 

Regarding your bug suggestions:

 

  1. There should be a "Last modified:" field at the top of the content after publishing. The content should still be owned by the original publisher but that by-line should be appended with a "last modified."
  2. The blog post is actually editable by all members by design. The justification here is if you shouldn't be able to create content in the group then you shouldn't be a member.
  3. There isn't really any documentation because I think they figured it was straight forward -- if you're a member you can do anything except add other members.

 

Hope that helps some!

 

Thanks,

Brad

Expert 3,517 posts since
Jun 18, 2009
Currently Being Moderated
Oct 1, 2009 7:35 AM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

Hey Nils,

 

So I was finally able to reproduce this. It looks like Private and Secret groups are effected by this but Open and Members Only groups are not effected for whatever reason. I'm not sure if this is by design or is a bug, but it looks like everyone around here is actually aware of this one way or the other. I didn't see an issue ticket logged so I'm going to go ahead and log this as a bug and we'll see what QA does with it!

 

Thanks,

Brad

Expert 3,517 posts since
Jun 18, 2009
Currently Being Moderated
Oct 1, 2009 8:37 AM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

I will forward this to the docs guys. Your issue ID on this is CS-16142.

Expert 3,517 posts since
Jun 18, 2009
Currently Being Moderated
Oct 5, 2009 7:14 AM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

Hey Nils,

 

I've logged it as an improvement as it's currently working as designed as far as I can tell.

 

- Brad

Expert 3,517 posts since
Jun 18, 2009
Currently Being Moderated
Oct 7, 2009 8:01 AM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

Nils,

 

This is as designed because it's assumed that in these private groups there is no hierarchy as it's invite only and people can't just walk up and join them.

 

- Brad

Expert 3,517 posts since
Jun 18, 2009
Currently Being Moderated
Oct 8, 2009 1:56 AM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

Hello Nils,

 

I understand, I saw the mail come through. We will likely be reviewing internally and get back to you. When/if the statement comes back as expected there are some improvements that should likely be filed here, like as you mentioned the fact that blog posts aren't somehow marked as "modified" in the view.

 

Cheers,

Brad

paul.crerand Jive Employee 265 posts since
May 12, 2009
Currently Being Moderated
Oct 8, 2009 11:02 AM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

Hello Nils we are working on a fix today (hopefully) and will probably want a conference call tomorrow (Freitag) to have a discussion with yourself (and Detlev) with Engineering on the fix.

 

Such a call would be late afternoon Frankfurt and early morning Portland, will you and or Detlev be available?

olivia.teich Jive Employee 94 posts since
Aug 17, 2009
Currently Being Moderated
Oct 8, 2009 11:22 AM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

Hi Nils,

 

Apologies for the earlier confusion. We do see this as an issue and, as Paul said, we will be working with you on how to address it.

 

Regards,

Olivia

Expert 3,517 posts since
Jun 18, 2009
Currently Being Moderated
Oct 9, 2009 8:52 AM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

Hello Nils,

 

Regarding indication about who might have added users to the blog, I haven't seen any logging statements in the code, including messages to jiveAuditLog, around this. The verification piece is a bit harder to figure out, it would seem -- I'll let engineering figure that out as it seems like that's actually the issue we're having right now, who can edit blog posts and when.

 

I think it is unlikely that an upgrade added additional users and I haven't seen any issues logged around this; however, it's not impossible -- again, I'll let engineering comment on that as their knowledge is more intimate than mine at this point.

 

Cheers,

Brad

scott.hirdes Jive Employee 3,304 posts since
Oct 9, 2007
Currently Being Moderated
Oct 9, 2009 9:01 AM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

Unfortunately, the only way to truly tell what users will have full admin priviledges for a blog is go to the database.

 

The permissions for blogs are held in the jiveEntitlement table.  So, for the group where you had the incident reported, you'll want to take the blogID for the blog for that group and run the following query:

 

SELECT * FROM jiveEntitlement WHERE objectType = 37 AND objectID = <blogID>;

 

This will show all the entitlements associated with that blog.  Entitlements provide the information on what user(s) can do what things with the blog.

 

For a social group, all the members of the group should have records in the jiveEntitlement table for the group blog that have a value of 3 for the "entitlementMask" column.  This indicates the user has the permission to create a new blog post.

 

If the blog was ever updated via the "System Blogs" page in the admin console, I would expect that you would see the members having an "entitlementMask" column value of 11.

 

Can you provide the output of the above query for the blog in question?

Since the behavoir has been reported by users to us, maybe there is was an update/upgrade issue which trigger this

"Update Blog" event?

I'm not aware of  any upgrade/update tasks that would be responsible for this behavior in the 2.5 series and locally I have not been able to reproduce the behavior with doing upgrades.

 

I've also tested with creating a system blog and then moving that blog into a social group to see if that could result in the behavior that was reported but I was not able to replicate the problem in that scenario either.

 

At this point, the only way that we have been able to replicate the issue was if the one of the two aforementioned scenarios had first taken place.

scott.hirdes Jive Employee 3,304 posts since
Oct 9, 2007
Currently Being Moderated
Oct 9, 2009 10:28 AM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

Here's a query I put together that should be able to provide what you suggested, information on members of a social group returned next to their entitlement for the group's blog:

 

select g.groupID, g.groupType, g.name, gm.userID, gm.memberType, e.entitlementID, e.entitlementMask 
  from jivesgroup g
  join jivesgroupmember gm
    on gm.groupID = g.groupID
  join jiveBlog b
    on b.containerType = 700
   and b.containerID = g.groupID
  join jiveEntitlement e
    on e.objectType = 37
   and e.objectID = b.blogID
   and e.userID = gm.userID
 where g.displayName = '<groupDisplayName>';

 

To run the query for a particular social group, replace the <groupDisplayName> part with the display name string for the group which, when viewing the social group, is the part of the URL after the "/groups/" section of the URL.

 

The memberType column will tell what the role is of the user in social group.  Here are the possible values and their translations:

 

0 = OWNER
1 = MEMBER

2 = PENDING_APPROVAL
3 = BANNED
4 = INVITED

scott.hirdes Jive Employee 3,304 posts since
Oct 9, 2007
Currently Being Moderated
Oct 20, 2009 8:49 AM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

Each effective entitlement is given a value in the Entitlement enum.  Here is definition of the values for the enum taken from the code:

 

NONE(0x0),
READ(0x1),
WRITE(0x2),
    
MODERATE(0x4),
ADMINISTER(0x8);

 

The entitlementMask is the bit-wise "or" of the entitlement bits that are granted.  So, a value of 15 for the entitlement mask means that the user has been granted all of the entitlements above.  A value of 11 would mean the user has READ, WRITE, and ADMINISTER entitlements.

 

The expected value for an owner of a social group in the entitlementMask column for the social group's blog is 15.

scott.hirdes Jive Employee 3,304 posts since
Oct 9, 2007
Currently Being Moderated
Oct 20, 2009 10:42 AM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

Can you send along the queries as you are running them that are producing the results under the "Blog Permissions" and "Groups Permissions" sections in the output you gave?  I just want to be sure I am reading the columns correctly.

 

Can you really exclude the possibility that something else upgrade, bugs might have set these permissions?

There is a possibility, yes, and I apologize if I gave the impression that we are completely excluding this possibility.  However, in local testing, we have not been able to reproduce the data as you are seeing it with any upgrades that have been tried.

 

To get back to a normal state, I am thinking of taking the groups results and update the blog-permissions so that group members get create permissions and only the owners get overwrite rights.

The normal state for entitlements for a social group blog would be:

  • all the owners/admins of the group have a jiveEntitlement record for the social group blog with an entitlementMask value of 15
  • all regular members of the group have a jiveEntitlement record for the social group blog with an entitlementMask value of 3
scott.hirdes Jive Employee 3,304 posts since
Oct 9, 2007
Currently Being Moderated
Oct 21, 2009 1:23 PM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

In the script you are using, the queries that are used to count the number of admins and members of a blog are doing an EXISTS check from jiveEntitlement to jiveBlog on just the social group id.  I would recommend that you also include a "containerType = 700" in the inner query against jiveBlog there since the social group id could potentially overlap with other container ids for other container types.  Not necessarily all that likely, but possible.

 

So, for example, I would recommend changing the query getting the value for "numberOfAdminsInBlog" to this:

SELECT count(*) FROM jiveEntitlement WHERE objectType = 37 AND objectID in (select blogID from jiveBlog where containerType = 700 and containerID = '$i') AND entitlementMask in (11,15);

 

The bugfixes that are planned for 2.5.18, do they also correct permissions that are not consistent or do they 'just' prevent new errors? I ask this because, if they heal our problems we wouldn't have to update the permissions.

The fixes mentioned in this case are going to be in 2.5.19, the 2.5.18 release was already closed to development by the time these issues were discovered.

 

As for an upgrade task, at this time we are not planning on implementing an upgrade task to update entitlements for social group blogs.  Changing the values in the database as you have suggested would be the supported way of correcting the data.

scott.hirdes Jive Employee 3,304 posts since
Oct 9, 2007
Currently Being Moderated
Oct 22, 2009 11:31 AM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

This query can be run to set the entitlement value for social group blogs for all social group members correctly.  The update will grant those users READ and CREATE permission:

 

-- Entitlements for group members
UPDATE jiveEntitlement
   SET entitlementMask = 3
 WHERE entitlementID in (SELECT je.entitlementID
                           FROM jiveEntitlement je
                           JOIN jiveBlog jb
                             ON jb.blogID = je.objectID
                            AND jb.containerType = 700
                           JOIN jiveSGroupMember gm
                             ON gm.groupID = jb.containerID
                            AND gm.memberType = 1
                            AND gm.userID = je.userID
                          WHERE je.objectType = 37);

 

This query can be used to set the entitlement value for social group blogs for all social group owners correctly.  The update will grant those users ADMIN, MODERATE, EDIT, CREATE, and READ permissions:

 

-- Entitlements for group owners/administrators
UPDATE jiveEntitlement
   SET entitlementMask = 15
 WHERE entitlementID in (SELECT je.entitlementID
                           FROM jiveEntitlement je
                           JOIN jiveBlog jb
                             ON jb.blogID = je.objectID
                            AND jb.containerType = 700
                           JOIN jiveSGroupMember gm
                             ON gm.groupID = jb.containerID
                            AND gm.memberType = 0
                            AND gm.userID = je.userID
                          WHERE je.objectType = 37);

 

I'm sure it goes without saying, but you'll want to backup the jiveEntitlement table (at least) before running these updates.  Also, the updates need to be run while the application is not running.

Expert 3,517 posts since
Jun 18, 2009
Currently Being Moderated
Nov 16, 2009 9:00 AM in response to: Nils Bolsen
Re: Blogposts in SocialGroups can be edited by all members

Hey Nils,

 

I've updated the issue ticket. This should be reflected here shortly.

 

- Brad

dbeutner Intermediate 585 posts since
Apr 14, 2008
Currently Being Moderated
Dec 11, 2009 8:25 AM in response to: brad.heller
Re: Blogposts in SocialGroups can be edited by all members

> I've updated the issue ticket. This should be reflected here shortly.

 

Nothing got updated. Please update the status of this.

 

Regards

Detlev

kevin.imber Jive Employee 2,726 posts since
Oct 19, 2009
Currently Being Moderated
Dec 14, 2009 9:16 AM in response to: Detlev Beutner
Re: Blogposts in SocialGroups can be edited by all members

Hi Detlev,

 

Just to be sure:  what is the extent of the updating that you'd like to see?  It looks like you want the version updated to include 2.5.18, yes?  Is that all?

 

Thanks,

Kevin

dbeutner Intermediate 585 posts since
Apr 14, 2008
Currently Being Moderated
Dec 18, 2009 9:02 AM in response to: Kevin Imber
Re: Blogposts in SocialGroups can be edited by all members

Hi Kevin,

 

To summarize this thread: We have a situation with blog permissions on our systems where it is unclear how this came. JiveSW has analyzed two bugs (see page 2: Nils on Oct 9, 2009 3:21 PM, quoted points 1 & 2); both are very probable NOT the cause of our problem. Anyhow, JiveSW has not analyzed any other cause. It might be that by some upgrade procedure something went wrong.

 

The resolution was planned as follows: We update the permissions "manually", and JiveSW fixes the two bugs. Alltogether hoping that there won't be the same effect in the future.

 

Now check out the JIRA widget:

 

  • "Improvement" - No, it's a bug (no, it is "two bugs")
  • "Cannot Reproduc" - No, JiveSW has reproduced it
  • "Fixed version" - none are given. Has it gone into 2.5.19? Both?

 

Thanks in advance

Detlev

kevin.imber Jive Employee 2,726 posts since
Oct 19, 2009
Currently Being Moderated
Dec 21, 2009 8:32 AM in response to: Detlev Beutner
Re: Blogposts in SocialGroups can be edited by all members

Hi Detlev,

 

The current bug attached to this case is closed as "Could not Reproduce," so it won't be changed.  I'm currently following up on this to find out exactly what the bug(s) involved are (and find more information about them), and I'll get back to you with more information when I have it.  I apologize for the inconvenience and confusion.

 

Thanks,

Kevin

kevin.imber Jive Employee 2,726 posts since
Oct 19, 2009
Currently Being Moderated
Dec 23, 2009 2:12 AM in response to: Kevin Imber
Re: Blogposts in SocialGroups can be edited by all members

Hi Detlev,

 

I've caught up on exactly what the problems are that you're seeing, and I've done some checking into this.  I've found the bug report for the bug that involves setting a social group blog's author in the admin console and added it to this case.  The bug ID is CS-16589.  I was unsuccessful in finding the second bug so far, but I am following up with some of our engineers, and either they will post or I will when I have more information about this.  Let me know if you have any questions about this.

 

Thanks,

Kevin

kevin.imber Jive Employee 2,726 posts since
Oct 19, 2009
Currently Being Moderated
Feb 22, 2010 5:09 PM in response to: Kevin Imber
Re: Blogposts in SocialGroups can be edited by all members

Hi Detlev,

 

My apologies on the long wait.  We couldn't reproduce what you found in your instance with any of our test instances, so it was found that you had values corrupted either before or during the upgrade process.  Also, we haven't seen this issue come up with other customers, although permissions have been the most difficult part of upgrading to 4.x due to their completely new system.  This is why the report is set to not able to reproduce.  Let me know if you have any questions or comments about this.

 

Thanks,

Kevin

dbeutner Intermediate 585 posts since
Apr 14, 2008
Currently Being Moderated
Feb 25, 2010 5:55 AM in response to: Kevin Imber
Re: Blogposts in SocialGroups can be edited by all members

Hi Kevin,

 

This is a long thread with some confusion, but I think I did my best (and I think it was not that bad) to overcome the confusion. As I already had written, it have been Jive engineers who came up with two bugs, not us. So "not able to reproduce" is more than strange... or less.. or whatever.

 

To get concrete again:

 

The quoted bugs in Nils reply on page two are:

 

1.) "In the admin console under Blogs -> System Blogs, a system admin can actually navigate to a social group blog if the admin knows the blogID..."  --> This corresponds to the case added by yours some weeks ago. Perfect.

 

2.) "If userA creates a new social group and then chooses to grant the "administrator" role to another member of the group, userB, then userB will then have the ability to change userA's role to just "member."  However, if this is done, userA, who at one time was an "administrator" for the social group, still retains their administrative permissions for the social group's blog and thus is still able to edit posts made by other users."

 

This second point was brought up by your colleagues. And Nils could reproduce it. So, sorry, I don't have any understanding why this was not clear.And: It is reproducable.

 

And: The whole thread has nothing to do with 4.0 / upgrade from 2.5 to 4.0. As far as updates have been affected, it was from 2.5.x to 2.5.y

 

Regards

Detlev

kevin.imber Jive Employee 2,726 posts since
Oct 19, 2009
Currently Being Moderated
Feb 25, 2010 10:27 AM in response to: Detlev Beutner
Re: Blogposts in SocialGroups can be edited by all members

Hi Detlev,

 

My apologies on the 4.x mentions, that was a bad assumption I made.

 

Can you reproduce this on your system after you've made the queries that Brad gave you to fix the problem?  The engineer checked a vanilla instance, and couldn't reproduce what was going on there, that's why he filed it as could not reproduce.  In what environment are you able to reproduce this still?

 

Thanks,

Kevin

dbeutner Intermediate 585 posts since
Apr 14, 2008
Currently Being Moderated
Feb 26, 2010 6:43 AM in response to: Kevin Imber
Re: Blogposts in SocialGroups can be edited by all members

Hi Kevin,

 

Let me get some things straight:

 

- Not Brad gave us some queries, but Scott ;-)

- The queries have been given to get rid of the inconsistencies in our DB; originally, we wanted to know how this inconsistency came into the DB; this could not get cleared.

- Looking for situations how such an inconsistency might come up, your colleagues found two bugs (probably not related to our issue, but "additional" situations how such an inconsistency might appear).

- So: The queries have nothing to do with the aforementioned bugs!

 

Anyhow, we just checked the situation, and in fact, this second bug seems to be resolved, too. Great! (Even if this never has been tracked with a JIRA case, so we could not expect this to be resolved.)

 

So, I'm closing this ticket. Anyhow, I will open a new one, as the resolution of bug #1 (accessing group blogs via admin console as "system" or "personal" blogs) is not satisfactory (no result is given, not even a "nothing found" or similar).

 

Regards

Detlev

More Like This

  • Retrieving data ...

Bookmarked By (1)

Case Product Issues

Loading Jira issues

Loading related product issues for this case
To better serve our customers we have included functionality to automatically follow up on a case after it has been idle for more than 5 days, and then auto close after an additional 3 days of inactivity. Choose No to acknowledge that this case will remain idle for longer than 5 days.
Making cases public allows other customers to learn from the solution of the case. It can also be used to gain feedback from others in the community. Ask our Support Engineers for more info, but we encourage you to make your cases public.