Forum Discussion

Bill_MacAllist1's avatar
Bill_MacAllist1
Icon for Nimbostratus rankNimbostratus
Apr 07, 2011

List of virtual servers for an individual partition

Here is a fragment of perl code pull from shared code area.

 

 

my $soapResponse = $VirtualServer->get_list();

 

checkResponse($soapResponse);

 

@vs_lists = @{$soapResponse->result};

 

 

checkResponse is returning the following error:

 

 

SOAP-ENV:Server Exception caught in LocalLB::urn:iControl:LocalLB/VirtualServer::get_list()

 

Exception: Common::OperationFailed

 

primary_error_code : 17238051 (0x01070823)

 

secondary_error_code : 0

 

error_string : 01070823:3: Read Access Denied: user (BigIP.someuser) does not have read access to partition (foo), check your current "read" partition settings

 

 

Which is not surprising because I don't have access to partition foo, but I do have access to other partitions.

 

I don't see how to restrict the get_list() call to just look at a single partition or to just return information for the partitions that I do have access to. What am I missing.

 

 

Bill

 

 

P.S. I would argue that the an Exception should not be returned and just the list of objects that I have access to should be return. That is a semi-religious argument and I really just want it to work for now.

 

  • We've designed the access model for partitions in that you must explicitly make a call to set your "current" partition. This is good for all subsequent calls for that user until the call is made again to change it. I covered how to switch between partitions in this tech tip:

     

     

    iControl 101 - 08 - Partitions

     

    http://devcentral.f5.com/Tutorials/...tions.aspx

     

     

    The one thing I left out of that article was how to determine which partitions the current user has access to. That can be done with the Management.UserManagement.get_my_permission() method

     

     

    http://devcentral.f5.com/wiki/defau...ssion.html

     

     

    Hopefully this is enough to get you going. Let me know if you need more explanation.

     

     

    -Joe