1. A method using a computing device having one or more processors and memory storing one or more programs for execution by the one or more processors, the method comprising: identifying a request from a user, wherein the request comprises: an application-level request associated with a user role to access a first module of an enterprise application; and a separate database-level request associated with the user role to access a first portion of a database through the first module, wherein the database-level request includes parameters necessary for invoking one or more stored procedure calls to apply changes to a database table of the database; responsive to a first determination that, based on the user role, the application-level request by the user is permissible: granting the application-level request to access the first module in the enterprise application; and responsive to a second determination, different from the first determination, that based on the user role, the database-level request by the user is permissible: granting the database-level request to access the first portion of the database through the first module; wherein the user role is associated with a plurality of access permissions, and wherein each access permission in the plurality of access permissions specifies: an exhaustive set of application-level requests permitted for the user role; and an exhaustive set of database-level requests permitted for the user role, wherein the database-level request invokes the one or more stored database procedure calls from a database stored procedure calls module in communication with a database access control module of the database, wherein a database stored procedure call in the database stored procedure calls module is invoked through a synonym specified in the data request, and wherein an application program interface (API) associated with the database stored procedure calls module is accessible to the database-level request through the synonym to provide a security wall between the enterprise application and the database to avoid exposure of the API to the application-level request.