Import an external table as Expose Read Only


Add the possiblity to configure the Expose Read Only property when importing an external table via integration studio. This comes in handy when importing reference data tables from another system where you don't want the ability to write to the table, preventing create, update or deletes by not having those CRUD operations inside the extension module.

This would mitigate data accidents by devs and truly feel like a static entity but only external.

Created on 10 Sep (3 weeks ago)
Comments (6)

Hi joão,

Although I do understand your request, would this however not be needed to be governed on the external database using permissions set to the account you use in the database connection.

It is not OutSystems responsibility to secure data access to the external database, that should be the responsibility of the external database.



I'm in favor, for more controls in platform.

You can control via module, creating only the wrapper and exposing this functionality. Another feature is to limit the connection by the database.

However, I believe that one more resource can speed up the work, so +1


The point I try to make is OutSystems does not control (own) the external database. This can even be try from a departmental perspective. Where there is a different department owning the responsibility for the external database.


I agree with the first part of your reply. The proper way anyhow to not use the CRUD actions for any entity (let it be OutSystems or External database tables) directly. The best practice is to create CRUD wrapper actions that expose exactly the functionality that needs to be exposed.

In that sense the external entity just needs the same treatment as the OutSystems entity.

@Daniel Kuhlmann I agree there should be validations on the external Db side to prevent writting, but besides that since it's such a simple thing to have this option in the table detail in Integration Studio , why not?

In other words, if those CRUDs aren't supposed to be used (due to best practice is to use wrappers and also otherwise will throw an external exception) there's no point of having them there messing arround :)

Changed the category to Database