BJ,
The party "Mansour" has only one role "Employee" related to
"Mansour INC" organization !

And I don't have any service added. It's just the same services
out-of-box.

Anyone knows how to deal with it ? 


On Sun Jul 24,2011 01:20 pm, BJ Freeman wrote:
> since access for user is through the UI there is no need to go to record
> level.
> Now if you have a service that accesses the records then the it is the
> service that should check.
> 
> 
> Mansour Al Akeel sent the following on 7/24/2011 1:12 PM:
> > BJ,
> > I am not sure if my question is clear. Yes, I have to have PROJECTMGR
> > permission to access this component. But the tasks are viewable to
> > anyone.
> > 
> > https://cwiki.apache.org/OFBTECH/ofbiz-security.html
> > This part explains what I need:
> > 
> > 
> > ====================================================
> > At record level
> > 
> > Defining a path from the Party in question to the target/desired entity 
> > through relationships. This is usually do-able and easy to do with a single 
> > view entity, and if a query on that entity with the proper constraints 
> > returns any results then you know the user/party has the permission.
> > See the catalog role limited permissions and how they are defined and used 
> > in the ProductServices.xml file for an example.
> > Role limited (or based) permissions (aka Party Roles)
> > 
> > The purpose of role-limited permissions is to tie a SecurityPermission to 
> > record level security using the RoleType/PartyRole and related entities. In 
> > OFBiz this is how record level permissions are done, i.e. somehow the user 
> > (through their Party record) is associated with another record in the 
> > database and that specific relationship must exist in order for the 
> > role-limited permission to take effect.
> > Good examples are in hasPermission methods in OrderServices class or how 
> > ProductStoreRole, ContentAndRole, PartyRole, entities are used in Java code 
> > (and at large ENTITY-NAME Role entities). See also checkStoreCustomerRole 
> > in ProductEvents class.
> >     By the way, do not confuse Security Roles (below) with Party Roles - 
> > they are entirely different.
> > 
> > 
> > Security Roles
> > 
> > Security Roles provide a means to associate a user ID (userLoginId) with a 
> > particular OFBiz element. This may seem the same as Security Permission, 
> > but it is slightly different. For example: a user is assigned the 
> > ORDERMGR_VIEW permission, and is associated to a particular facility (let's 
> > say XYZ Company) with the ORDERMGR_ROLE_UPDATE security role. This 
> > combination would allow the user to view orders for all facilities, and 
> > update orders for the XYZ Company facility only. They may be seen as 
> > limiting permissions.
> > 
> > ===================================================
> > 
> > Back again to my original question, to protect the tasks from being
> > seen by Parties (logins), that are NOT a resource of that paroject, do I
> > have to dig in the code and add the permissions check, or it's a matter of 
> > configuration. To me it
> > makes more sense that a "party login" who is not a member of a project 
> > should
> > not be able to see work effort or task in that project.
> > 
> > 
> > On Sun Jul 24,2011 11:35 am, BJ Freeman wrote:
> >> permission usually refer to the Login of a party.
> >> if you look in the ofbiz-component.xml, base-permission="PROJECTMGR",
> >> your login must have this security level.
> >>
> >> Mansour Al Akeel sent the following on 7/24/2011 10:29 AM:
> >>> BJ,
> >>> thank you for all your help. I looked at the links you sent me, and they
> >>> were usefull. I still don't understand why permissions are checked in
> >>> the ftl and not the service layer. However this is not the issue I am
> >>> stuck at now.
> >>> I think I am still confused about permissions.
> >>> I created an account on trunk demo to show what I am talking about.
> >>>
> >>> If you go to:
> >>> https://demo-trunk.ofbiz.apache.org/projectmgr/control/main
> >>> and try to login with mansour:ofbiz you will be greated with a screen
> >>> saying:
> >>>
> >>> org.ofbiz.widget.screen.ScreenRenderException: Error rendering screen 
> >>> [component://common/widget/CommonScreens.xml#GlobalDecorator]: 
> >>> java.lang.IllegalArgumentException: Error running Groovy script at 
> >>> location 
> >>> [component://projectmgr/webapp/projectmgr/WEB-INF/actions/ListCurrentProjects.groovy]:
> >>>  org.ofbiz.service.ServiceAuthException: You have no access to the 
> >>> project#: 9000 (Error running Groovy script at location 
> >>> [component://projectmgr/webapp/projectmgr/WEB-INF/actions/ListCurrentProjects.groovy]:
> >>>  org.ofbiz.service.ServiceAuthException: You have no access to the 
> >>> project#: 9000)
> >>>
> >>> This is fine, as the user "mansour" doesn't have persmission to view
> >>> this project, but shouldn't this screen display the projects he is
> >>> member of (if any).
> >>>
> >>> The second part is if you go to:
> >>>
> >>> https://demo-trunk.ofbiz.apache.org/projectmgr/control/FindTask
> >>>
> >>> and hit find, the user can see all the tasks that he is not member of,
> >>> and clicking on any of them, will open the details about that task.
> >>>
> >>> This user is in "PROJECTUSER"  security group, which has:
> >>>
> >>> ROJECTMGR_ROLE_TASK_CREATE Be able to create a task (should be member of 
> >>> project)         
> >>> PROJECTMGR_ROLE_TIMESHEET_CREATE Be able to create a weekly timesheet for 
> >>> the loginid. 
> >>> PROJECTMGR_ROLE_TIMESHEET_UPDATE Be able to update(report) on an existing 
> >>> own timesheet 
> >>> PROJECTMGR_ROLE_VIEW All view operations in the Project Manager for a 
> >>> project/phase/task the user is member of..  
> >>> PROJECTMGR_VIEW ALL View operations in the Project Manager(but can be 
> >>> limited by ROLE_VIEW) 
> >>>
> >>> On my local machine, I removed that last one "PROJECTMGR_VIEW", but
> >>> still this user can see others tasks.
> >>>
> >>> Am I doing something wrong here?
> >>>
> >>> I appreciate your help.
> >>>
> >>> On Sun Jul 17,2011 10:09 am, BJ Freeman wrote:
> >>>> New Role Type (see chapter two of the Book)
> >>>> lets you define a new role type to use.
> >>>> it is best to link with the book to use the webtools
> >>>> https://demo-trunk.ofbiz.apache.org/webtools/control/ViewRelations?entityName=RoleType
> >>>> you can also get the xml structure from the data and created a bunch of
> >>>> them then load them via the web tools import. note: that service engine
> >>>> and UI (widgets and ftls) need to changed if you want that role type to
> >>>> have access.
> >>>>
> >>>> doing a google search for
> >>>> ofbiz main role
> >>>> http://ofbiz.135035.n4.nabble.com/Party-Main-Role-td1680393.html
> >>>>
> >>>> I hope these tips help you research you answer more. and As I said
> >>>> before parts of you question are already been answered.
> >>>>
> >>>>
> >>>> This may clear up more on security and Role View all.
> >>>> https://cwiki.apache.org/OFBTECH/ofbiz-security.html
> >>>>
> >>>>
> >>>> Mansour Al Akeel sent the following on 7/17/2011 8:45 AM:
> >>>>> Hello BJ,
> >>>>> and thank you for your reply.
> >>>>>
> >>>>> You can check the link here:
> >>>>> https://demo-trunk.ofbiz.apache.org/partymgr/control/viewroles?partyId=DemoEmployee
> >>>>>
> >>>>> It has 
> >>>>> "Add To Main Role" and "Add To Role : view all" Fields. and if you
> >>>>> select soemthing like "Calendare" for the first one, you will get a
> >>>>> third field "Add To Second Role". What is the difference between them ?
> >>>>>
> >>>>> I was confused with the security part, because was adding a user to a
> >>>>> group, but still the user was not allowed to edit a project. I have to
> >>>>> add the user as a resource for that project. 
> >>>>>
> >>>>> What I understand now is, Party Roles has nothing to do with
> >>>>> permissions, and the later has to be handled separately through the
> >>>>> security group.
> >>>>>
> >>>>>
> >>>>> Thank you.
> >>>>>
> >>>>>
> >>>>> On Sat Jul 16,2011 11:01 pm, BJ Freeman wrote:
> >>>>>> Yes I still have to go back and review. The book Deals only with Roles
> >>>>>> related to Party. Security based on login is not in the Book.
> >>>>>> The is covered in the Service Engine and Webapps, widgets
> >>>>>>
> >>>>>> It helps if you give complete URL to the places you talking about. It
> >>>>>> saves time of the answerer and verify we are talking the same 
> >>>>>> component.
> >>>>>> The labels are in seperate files from actual code, so depending on who
> >>>>>> put in the text for that label, it may not be clear as to its meaning.
> >>>>>>
> >>>>>> you can limit based on Roles, security groups and/or security roles
> >>>>>> which is different from roles.
> >>>>>> going through the widgets and Ftls will give you code examples of how
> >>>>>> this is accomplished.
> >>>>>>
> >>>>>> The example component is good to review.
> >>>>>>
> >>>>>>
> >>>>>> Mansour Al Akeel sent the following on 7/16/2011 8:29 PM:
> >>>>>>> Ok, the "BOOK" explained things, and I know I have to read many parts
> >>>>>>> again, especially while trying to match the readings with  the
> >>>>>>> functionality offered by OFBiz.
> >>>>>>>
> >>>>>>> Now I have a question related to adding roles. In the "Add To Role"
> >>>>>>> screen:
> >>>>>>>
> >>>>>>>
> >>>>>>> Add To Main Role
> >>>>>>> --> Role Type Id      
> >>>>>>>
> >>>>>>> Add To Second Role
> >>>>>>> --> Role Type Id
> >>>>>>>
> >>>>>>> Add To Role : view all
> >>>>>>> --> Role Type Id
> >>>>>>>
> >>>>>>> What is the difference between "Main Role" and "Second Role" and how 
> >>>>>>> do
> >>>>>>> I use them ? 
> >>>>>>> What is the "Add To Role" mean ? 
> >>>>>>>
> >>>>>>> Back again to the senario in the first email, and after I modeled the
> >>>>>>> Parties, how do I let each access only to the functionality they need 
> >>>>>>> to
> >>>>>>> access ? For example, "Approver" to aprove timesheet and work effort.
> >>>>>>> Project manager to Assing tasks, "Developer" to update tasks. Would 
> >>>>>>> this
> >>>>>>> have to be separately using "Security Groups" ? 
> >>>>>>>
> >>>>>>> Thank you.
> >>>>>>>
> >>>>>>>
> >>>>>>> On Mon Jun 27,2011 09:29 am, BJ Freeman wrote:
> >>>>>>>> as both Adrian and I mentioned most of that would be described well 
> >>>>>>>> in
> >>>>>>>> the Data model book that ofbiz was modeled after, which is why not 
> >>>>>>>> much
> >>>>>>>> documentation is written specifically in ofbiz.
> >>>>>>>>
> >>>>>>>> There are emails in the archive that have covered different parts of
> >>>>>>>> your question.
> >>>>>>>>
> >>>>>>>> Actually it has been a good time for the Documentation for over 6 
> >>>>>>>> years,
> >>>>>>>> problem is getting someone to volunteer to do it. We have added 
> >>>>>>>> internal
> >>>>>>>> Help in ofbiz that needs to be filled out. ANY VOLUNTEERS.
> >>>>>>>>
> >>>>>>>> Normally such Contributions have been from someone hiring someone to 
> >>>>>>>> do
> >>>>>>>> the documentation, because it takes a lot of time to volunteer and 
> >>>>>>>> those
> >>>>>>>> that have to make a living do not have such time free. Then that
> >>>>>>>> documentation was volunteered to ofbiz community.
> >>>>>>>>
> >>>>>>>> I limit my volunteer time per subject on the mailing list to 15 min,
> >>>>>>>> unless i have a vested interest in it. I have even stopped answering 
> >>>>>>>> on
> >>>>>>>> here because my time has become very limited. as an example this 
> >>>>>>>> email
> >>>>>>>> took over two hours to finish because of interruptions to do 
> >>>>>>>> business.
> >>>>>>>>
> >>>>>>>> so maybe others that have the time will volunteer the information you
> >>>>>>>> desire.
> >>>>>>>>
> >>>>>>>> Most find the charge for the "BOOK" a lot less than hiring someone, 
> >>>>>>>> or
> >>>>>>>> volunteering the time to document.
> >>>>>>>>
> >>>>>>>> That said, feel free once you understand to volunteer you time to
> >>>>>>>> documented this the way you think it should be done.
> >>>>>>>> BTW I have made this offer to others that presented the same 
> >>>>>>>> proposal in
> >>>>>>>> the past and they have not volunteer such documentation yet.
> >>>>>>>>
> >>>>>>>> I would suggest you draw an organizational chart then use the fields 
> >>>>>>>> in
> >>>>>>>> ofbiz to associated the chart to relationships. There is no "ONE"
> >>>>>>>> organization chart.
> >>>>>>>>
> >>>>>>>> Demo employee shows two relationships as examples, in a normal 
> >>>>>>>> Company
> >>>>>>>> there may be many relationships. like the one that says the demo
> >>>>>>>> employee is a employee.
> >>>>>>>>
> >>>>>>>> you would use roles and relationship
> >>>>>>>>
> >>>>>>>> Mansour Al Akeel sent the following on 6/27/2011 4:28 AM:
> >>>>>>>>> BJ thank you.
> >>>>>>>>>
> >>>>>>>>> My question is related more to ofbiz usage. In the relationship 
> >>>>>>>>> page:
> >>>>>>>>> https://demo-trunk.ofbiz.apache.org/partymgr/control/EditPartyRelationships?partyId=DemoEmployee
> >>>>>>>>> you can see some fields that are not clear to me. To be more 
> >>>>>>>>> specific, We have:
> >>>>>>>>> in the role of  |   is A    of Party        | in the role of        
> >>>>>>>>>
> >>>>>>>>> There two relations for DemoEmployee. And each relation has two 
> >>>>>>>>> fields
> >>>>>>>>> "in the Role Of".
> >>>>>>>>> Further more, there is some confusion about where to relate employee
> >>>>>>>>> to organization. I mean if you go to:
> >>>>>>>>>
> >>>>>>>>> https://demo-trunk.ofbiz.apache.org/partymgr/control/viewprofile?partyId=DemoEmployee
> >>>>>>>>>
> >>>>>>>>> You will see four tabs with labels indicates similar functionality:
> >>>>>>>>> -Roles
> >>>>>>>>> -Link Party
> >>>>>>>>> -Relationships
> >>>>>>>>> -Segments
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>> What is the difference between these ? To add employee to 
> >>>>>>>>> Organization
> >>>>>>>>> I need to use ..... ?
> >>>>>>>>> May be it's a good opportunity to discuss and document each of them,
> >>>>>>>>> instead of referring me to the "BOOK" ;)
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>> On Sun, Jun 26, 2011 at 9:10 PM, BJ Freeman <bjf...@free-man.net> 
> >>>>>>>>> wrote:
> >>>>>>>>>> there is not much documented in ofbiz about party.
> >>>>>>>>>> however if you read the Data model book Vol I you will see a lot 
> >>>>>>>>>> about
> >>>>>>>>>> partyrelationsips. Good diagram on pg 41
> >>>>>>>>>> In this case you would have party relationship with the company 
> >>>>>>>>>> that
> >>>>>>>>>> supplies contractors
> >>>>>>>>>> so you need to setup the roles of each party then setup the 
> >>>>>>>>>> relationship
> >>>>>>>>>> between them
> >>>>>>>>>> start with organizational party relationship then individual 
> >>>>>>>>>> (person)
> >>>>>>>>>> realtionships with organizations.
> >>>>>>>>>>
> >>>>>>>>>> example
> >>>>>>>>>> the programmer would be a employee role with the recruitment 
> >>>>>>>>>> company if
> >>>>>>>>>> they contract, then the programmer would have a contractor 
> >>>>>>>>>> relationship
> >>>>>>>>>> with the Company.
> >>>>>>>>>>
> >>>>>>>>>> the rest you can get from the demo data or you can look at the 
> >>>>>>>>>> demo site
> >>>>>>>>>> at the different parties to see the relationships.
> >>>>>>>>>>
> >>>>>>>>>> Mansour Al Akeel sent the following on 6/26/2011 4:43 PM:
> >>>>>>>>>>> Hello all,
> >>>>>>>>>>> I didn't use the parties component extensively, and don't know a 
> >>>>>>>>>>> lot about it.
> >>>>>>>>>>> Here's the scenario we have. Three Group parties:
> >>>>>>>>>>> Programmers
> >>>>>>>>>>> Recruiter
> >>>>>>>>>>> Sales /marketing/Distributing
> >>>>>>>>>>> The distributor obtains the requirements and hires the Programmers
> >>>>>>>>>>> through the "Recruitment" company. Billing is done by hour.
> >>>>>>>>>>> In each company there's two employees that interact with the 
> >>>>>>>>>>> system.
> >>>>>>>>>>> programmer1 , programmer2
> >>>>>>>>>>> hr manager 1, hr manager2
> >>>>>>>>>>> project manager1, project manager2
> >>>>>>>>>>>
> >>>>>>>>>>> We need to setup the system, to handle the requirements 
> >>>>>>>>>>> communication,
> >>>>>>>>>>> timesheet, project management ... etc.
> >>>>>>>>>>> I have created the three group parties, and 6 employees parties, 
> >>>>>>>>>>> and
> >>>>>>>>>>> stopped there not knowing how to connect them.
> >>>>>>>>>>>
> >>>>>>>>>>> How to associate users (employee) with companies (Group Party) ?
> >>>>>>>>>>> I tried to go to Relationships page and use  "Add other party
> >>>>>>>>>>> relationship", but those fields are not clear to me. For example  
> >>>>>>>>>>> "in
> >>>>>>>>>>> the Role of" .... etc.
> >>>>>>>>>>> Let's say I need to put hr_manager1 as an employee of "Recruiter" 
> >>>>>>>>>>> ??
> >>>>>>>>>>> How many accounts I need, knowing that the recruiter get a 
> >>>>>>>>>>> percentage ?
> >>>>>>>>>>>
> >>>>>>>>>>> What do I need to do after that ?
> >>>>>>>>>>>
> >>>>>>>>>>> Guessing is not very help full here as it relies on trial and 
> >>>>>>>>>>> error,
> >>>>>>>>>>> and an error may not be initially visible. So I like to get an 
> >>>>>>>>>>> advice
> >>>>>>>>>>> from someone with more experience in this area.
> >>>>>>>>>>>
> >>>>>>>>>>> Thank you.
> >>>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>
> >>>>>>>
> >>>>>
> >>>
> > 

Reply via email to