Hi the team, do you plan to port the sdk to Typesc...
# community
d
Hi the team, do you plan to port the sdk to Typescript to use native library within a Typescript program ?
a
Hi, I'm not sure I fully understand the question. What are you trying to achieve exactly? We have embedded policy decision points available in Cerbos Hub, which allow you to make authorization decisions without calling out to an external service using a TypeScript SDK. Is that the sort of thing you're looking for?
d
@Andrew Haines (Cerbos) It requires connecting to the cloud? https://lite.cerbos.cloud/bundle?workspace=...&label=...
So something like in nodejs, i want to load local yaml files, and evaluation locally only ?
a
You can download the bundle ahead of time and then load it from the filesystem if it's important that your application doesn't connect out to the cloud. You can use
readFile
from
fs/promises
to read the bundle and then pass the resulting promise into the
Embedded
client constructor. But in general for a Node.js application we'd recommend running the Cerbos PDP service and communicating with it using the gRPC SDK. There's some explanation of the rationale here.
d
Yes, i know from beginning how Cerbos was designed for, that's why the original question. In many cases, on premise, modular monothlic architecture, or to deploy on a platform like Heroku,... you have no other choice.
We has a tons of enterprise customer and i do not use microservice at all, just pure VPS boxes.
So , saying "Nowadays, the trend is towards microservice architectures where system functionality is split between multiple services that are fairly independent of each other." is pure assumption, maybe for some regions, but it's not for our case.
a
Fair enough, but even on a VPS you can run Cerbos as a separate process (we have Linux packages available to run it as a system service). It can listen on a Unix socket or localhost so that you don't expose it via the network. The latency in such a setup is negligible so there's not much to gain from embedding it in the application process.