Approvals and safety
Portward never widens access on its own. Changes proposed in chat wait for a person, changes that give more access wait for a fresh sign-in, and setup can reach only the database hosts you allow.
Review cards
Section titled “Review cards”When you ask the admin connector for a change in plain words, the AI can’t apply it. It shows a review card in the setup widget instead:
| Tool | What the card shows | Button |
|---|---|---|
propose_access | One checkbox per change to exposure or column rules. Changes that give the AI or people more access carry a More access label and start unchecked. | Approve |
confirm_definition | The proposed definition of one column, next to the current one | Confirm definition |
confirm_link | Two columns that match across sources | Confirm |
draft_context | A dataset’s context, checked against the data, for you to edit | Save context |
Nothing changes until a person selects the button. Tick or untick the changes on a propose_access card before you
approve it. Unknown table or column names are refused with the closest real names, so the AI can’t invent a rule.
Let the AI change some rules itself
Section titled “Let the AI change some rules itself”In the setup widget’s Access rules, each dataset and column has a setting for what the AI may change when someone asks it in chat:
| Setting | What the AI may do |
|---|---|
| Ask first (the default) | Show a review card for you to approve |
| Restrict only | Apply changes that make the data more private without asking, such as making a column a token or hiding a dataset. Anything else gets a review card. |
| Anything | Apply any change either way |
There is a matching setting for each dataset’s context: with Anything, the AI saves a context draft that has no errors without asking. Changes the AI applies itself are listed in the widget with Undo these, and the setup log notes them. The AI can never change the token type of a live column on its own. Only an admin changes these settings, in the widget, and raising one asks for a fresh sign-in.
Fresh sign-in
Section titled “Fresh sign-in”A change that gives more access waits until the admin signs in again at your directory. This covers:
- exposing a dataset
- the AI or people seeing more of a column, or people being allowed to send it to the AI
- changing a live column’s token type
- letting the AI change more on its own
- adding an admin group or a user group
- adding a group to a dataset that is limited to groups, or opening it to every data user
- showing a group more of a column
- adding a database host
- reconnecting a source whose datasets are exposed
What happens:
- The console lists the changes under “Saving this gives more access than now”. Select Sign in again to confirm. The setup widget lists them under Confirm with your sign-in and opens the sign-in window itself (Claude asks first whether to open the link).
- The window opens at your directory. If you’re already signed in there, it’s usually one click.
- Portward’s own page, Confirm more access, lists the changes once more. Select Confirm and save.
The sign-in has to be your own, as an admin, and recent. You have 15 minutes from the request to Confirm and save. If the rules changed in between, nothing is saved and you start again.
Changes that only give less access, such as hiding a dataset or removing a group, are saved at once.
The fresh sign-in is on by default with directory sign-in. It is off when step_up = false is set under [auth] in
the config file, and the console’s Overview then warns “Changes that give more access are saved without a fresh
sign-in.” Settings, Sign-in shows it as Sign in again for more access.
Allowed database hosts
Section titled “Allowed database hosts”Setup can connect databases only on hosts you allow. Each connected database receives the key Portward uses to make tokens, so list only hosts you trust.
Hosts come from two places:
- The config file:
setup_hostsunder[gateway](on AWS, the stack’s Database hosts parameter). The console shows these as “From the config file” and can’t remove them. - The console: Settings, Database hosts, Add a host. Type a host such as
db.corp.example, or*.corp.examplefor every host in that domain. Adding one asks for a fresh sign-in. Removing one is saved at once, and connections on it stop at once.
File stores and business apps that you sign in to don’t use this list. Connect a source has the details per cloud.
Expiring secrets
Section titled “Expiring secrets”Database passwords, keys and your directory app’s secret often expire. Portward can’t see when, so note the dates in Settings, Expiring secrets:
- In What expires, name it, such as “Directory app secret” or “sales read-only password”. Never type the secret.
- In On, pick the date, and select Add.
The Overview’s Expiring secrets lists them with the days left, and Needs attention warns 30 days ahead and once a date has passed. These are reminders only. Nothing expires in Portward on that date, and Portward has no setting that ends a person’s or a group’s access on a date. To end access, remove the group from the dataset or the person from the group.
Other limits
Section titled “Other limits”- Every source is read with a read-only login, and every query is one read-only
SELECT. - A new source exposes nothing until you save its rules (Dataset access).
- New columns in a dataset take it offline until an admin sets their rules.
- The console signs you out after 30 minutes without a request, and after 8 hours in any case.
Context and definitions: tell the AI what your data means.