Model Access Control¶
This workflow covers configuring which Progrid models AI Core can interact with, including setting operation permissions, field blacklists, and query limits.
Overview¶
AI Core uses a whitelist-based access model. By default, the AI cannot access any model unless it has been explicitly added to the model access configuration. Each entry controls which operations (read, write, create, delete) are allowed and which fields are excluded.
Required permissions¶
AI Manager or AI Admin to manage model access configurations
Add a model to the whitelist¶
Navigate to .
Click New.
Select the Model from the dropdown (e.g.,
res.partner,crm.lead,account.move).Configure access permissions:
Read – AI can search and read records (default: enabled)
Write – AI can update existing records (default: disabled)
Create – AI can create new records (default: disabled)
Delete – AI can delete records (default: disabled)
Set guardrail options:
Require Confirmation – Whether write operations need user approval (default: enabled)
Max Records Per Query – Maximum records the AI can return in a single search (default: 100, range: 1-1000)
Optionally add a Field Blacklist – Comma-separated field names the AI cannot access (e.g.,
salary,bonus_amount,bank_account_id)Click Save.
Tip
The inline list view supports direct editing. You can quickly add multiple models and toggle permissions without opening individual forms.
Default model access¶
On installation, the module creates access entries for two common models:
Contacts (``res.partner``) – Read-only, with signup-related fields blacklisted
Users (``res.users``) – Read-only, with password and authentication fields blacklisted
These defaults provide a safe starting point. Add more models based on your team’s needs.
Configure field blacklists¶
For models containing sensitive data, use the Field Blacklist to prevent the AI from reading or writing specific fields.
To add a field blacklist:
Open the model access entry.
In the Field Blacklist field, enter comma-separated field names:
salary,bonus_amount,bank_account_id,social_security
Click Save.
The module also applies a global default blacklist to all models, automatically excluding:
password,password_cryptapi_key,api_key_idstotp_secret,oauth_access_token,signup_tokencredit_card,bank_account
These fields are excluded even if not listed in the model-specific blacklist.
Recommended configurations¶
Model |
Read |
Write |
Create |
Delete |
Notes |
|---|---|---|---|---|---|
|
Yes |
Yes |
Yes |
No |
Allow AI to create and update contacts |
|
Yes |
Yes |
Yes |
No |
Allow AI to manage opportunities |
|
Yes |
No |
No |
No |
Read-only for quotation lookups |
|
Yes |
No |
No |
No |
Read-only for invoice queries |
|
Yes |
Yes |
Yes |
No |
Allow AI to manage tasks |
|
Yes |
No |
No |
No |
Read-only with salary fields blacklisted |
Warning
Avoid enabling delete permissions unless there is a clear use case. Accidental bulk deletions through AI commands can be difficult to reverse.
Test access configuration¶
After configuring model access, verify the setup:
Open the AI chat panel (Ctrl+Space).
Try a read query: “How many contacts are in the system?”
If write is enabled, try: “Create a test contact named AI Test”
Verify the AI respects blacklisted fields by asking about excluded data.
Check the audit log at to confirm actions are being logged.
Next steps¶
Knowledge Management – Add documentation for the AI to reference
Conversations – Start using the AI with your configured models
Security – Review rate limits and audit settings