I am sure that this question was asked a lot of times before. I have been searching on the internet for many days, but everytime I am getting more and more confused. I've read the 359-2012 standard and also books, but still.
What really is a role for RBAC? I have seen a lot of confusion where people tend to name as roles the business role that a user may have e.g. Security Analyst or HR Assistant. To my understanding this is not the role. The role is something that makes sense in a system. For example, I am an InfoSec Analyst, this is my business role. For RBAC, my roles will be assigned on a per system case. I.e. in a database I may have the role of Database_Admin, in another system I may have the role of System_User, in a CRM I may be CRM_PowerUser, to access files on the FTP server I may hold the role of FTP_ReadOnly. So, I have multiple roles, that are system/application/resource specific.
On the business side we can say that I am an InfoSec Analyst which is a security department employee which is also a general employee. Each one "inherits" the one before it. Each of these business roles give access to systems/applications/resources.
To summarise, I have business functions of InfoSec Analyst -> Security employee -> general employee and each one of these business functions give me access to specific roles (as mentioned above).
Does this make sense? Am I understanding something wrong?