[rt-users] Creating Group and giving Rights.
    Jarno Huuskonen 
    jarno.huuskonen at uef.fi
       
    Mon Feb  1 01:31:27 EST 2010
    
    
  
Hi,
> On Friday, 29. January 2010 13:15:37 JJussi wrote:
> Hi to list,
> (I'm not very good Perl programmer, so this question may be (too) simple)
> 
> I can create group easily:
> 
> my $group = new RT::Group($RT::SystemUser);
> my $gid = $group->CreateUserDefinedGroup(
>       Name              => $vars{nimi},
>       Description       => $vars{kuvaus},
>     );
> 
> To give rights to that group I (try) to use:
> 
> my @gacl=('ShowTicket','CreateTicket','SeeQueue','ReplyToTicket');
> my $principal = new RT::Principal($RT::SystemUser);
> my $pid = $principal->Create(
>       PrincipalType => 'Group',
>       ObjectId => $gid,
>       Disabled => '0',
>     );
> 
> foreach (@gacl)
>     {
>       $xxx->GrandRight( Right => $_, Object => $gid);
>     }
> 
> That $xxx is problem.. I need Principal-Object there, but
> CreateUserDefinedGroup returns GroupID. How I can get that Object?
What are you trying to achieve ? Are you trying to give the new group
permissions to some queueu ?
Something like this works for me:
my $queue = RT::Queue->new($RT::SystemUser);
$queue->Load($queuename);
foreach my $tmp_right (@group_rights) {
        my ($status, $msg) = $group->PrincipalObj->GrantRight(
                Right => $tmp_right,
                Object => $queue);
}
-- 
Jarno Huuskonen
    
    
More information about the rt-users
mailing list