Securing access to data in location- based services and mobile applications requires the definition of spatially aware access- control systems. Even if some approaches have already been proposed either in the context of geographic database systems or context- aware applications, a comprehensive framework, general and flexible enough to deal with spatial aspects in real mobile applications, is still missing. In this paper, we make one step toward this direction and present GEO- RBAC, an extension of the RBAC model enhanced with spatial- and location- based information. In GEOR-BAC, spatial entities are used to model objects, user positions, and geographically bounded roles. Roles are activated based on the position of the user. Besides a physical position, obtained from a given mobile terminal or a cellular phone, users are also assigned a logical and device- independent position, representing the feature ( the road, the town, the region) in which they are located. To enhance flexibility and reusability, we also introduce the concept of role schema, specifying the name of the role, as well as the type of the role spatial boundary and the granularity of the logical position. We then extend GEO- RBAC to support hierarchies, modeling permission, user, and activation inheritance, and separation of duty constraints. The proposed classes of constraints extend the conventional ones to deal with different granularities ( schema/ instance level) and spatial information. We conclude the paper with an analysis of several properties concerning the resulting model.