Accessing SQL tables
Setting up role-based access to SQL tables.
Roles govern HTTP access to the REST API endpoints in DreamFactory. When you [set up a SQL database](http://wiki.dreamfactory.com/DreamFactory/Tutorials/Connecting_to_SQL) in the 'Services' tab, no tables are accessible by default (unless you are a DreamFactory Admin).
You can expose table access by setting up user roles and granting access to specific SQL tables for each role.
- Example - Grant SQL table access for a role
1. Log into the DreamFactory admin console as an Admin.
2. Click on 'Roles' > 'Create'.
3. In the 'Access' tab, select your SQL database API for 'Service', the table name for 'Component', HTTP verbs for 'Access', and API for 'Requestor'. Repeat for each table you are exposing to this role.
Note: You can also allow script-only access to tables. This allows you to grant access to a table by server-side scripts invoked by the API call, while not exposing direct access to the table by the API itself.
- Example - Creating and updating role permissions with the REST API
You can create and update role permissions directly with the API. Click on 'API Docs' in the DreamFactory Admin Console and view the '/system/role' API calls.