Where DLP stops, Protecto starts: masking PII, PHI, PCI and custom entities in Arabic and English, including agent-to-agent calls, on your servers.
اشتكى العميل أحمد الخطيب، رقم 9871023456، من تأخر التحويل.
اشتكى العميل [PERSON_9e2]، رقم [ID_5b2]، من تأخر التحويل.
اشتكى العميل أحمد الخطيب، رقم 9871023456، من تأخر التحويل إلى JO94CBJO0010000000000131000302.
Real values in the callاشتكى العميل [PERSON_9e2]، رقم [ID_5b2]، من تأخر التحويل إلى [IBAN_4c7].
Tokens onlysummarize_ticket(id=4821)No sensitive data in the call, so nothing changes and nothing slows down.
PERSON, ID, IBAN → tokensReal values become format-preserving tokens, and the call continues.
send_email(to=external) + IBANThe call is stopped before the data moves, and the decision is logged.
Each decision is written to an audit log on your servers, so you can show which agent passed what, and what happened to it.
An external model hosted by its provider, only if your reviewers approve it. It receives tokens only. Tokens are still personal data, so Article 15 applies to this path. Not used in an air-gapped setup.
| Rule | Requirement | Protecto solution |
|---|---|---|
| Transfers outside the KingdomLaw 24/2023 Arts. 15, 17 | Data may not go to a person outside the Kingdom if their protection is weaker than the law's, except in listed cases such as consent after the person is told protection is insufficient. The controller must check the recipient's protection level first. The Council licenses transfers and publishes a list of countries it recognizes as adequate. | Protecto runs inside your network, with token mappings and keys in your own data center. When the model runs there too, nothing is sent outside the Kingdom for those flows. If you choose an external model, it receives tokens only, and Art. 15 applies to that path. |
| Sharing with recipients, and recordsLaw 24/2023 Art. 14 | Sharing data needs consent and a legitimate interest, and the controller keeps records of what was shared and why. Controller, processor, and recipient must have measures to detect and track any breach. | Agent-to-agent calls are detected, monitored, and logged where the data moves. The audit log stays on your servers. |
| Security measuresLaw 24/2023 Arts. 7(G), 8(B), 13 | Technical and organizational measures against unauthorized disclosure, alteration, and processing. Data under processing is confidential. | Runtime masking and policy enforcement across agents, MCP calls, APIs, RAG, agent context, logs and more. |
| Keeping people unidentifiedLaw 24/2023 Arts. 6(B), 7(E) | Data is not kept once its purpose is met, and processing must not identify the person after the purpose is fulfilled. | Models, vector stores, and agent memory hold tokens, not real identities. Real values return only under policy, to the people you name. |
| Processors and vendorsLaw 24/2023 Arts. 12, 13 | Processors stay within the purpose and duration, erase or return data afterward, and must not enable access to the data or the results of processing except where the law allows. | Detection, token mappings, and audit logs live on your servers. A model or vendor never holds the real values. |
| Breach noticeLaw 24/2023 Art. 20 | For a serious breach likely to cause significant harm, notify affected people within 24 hours and the Unit within 72 hours of discovery. | Real values stay out of models, vector stores, and logs, so there is less to expose. The audit log shows who saw what, which speeds the notice. |
A path-by-path map of what may leave the Kingdom, and on what footing.
By submitting you agree to Protecto’s privacy policy.