我正在使用C ++在Linux上编写应用程序。目标是让它在运行时加载动态链接库并提供库所需的所有服务。主要目的是让它充当黑盒子,在运行时加载的代码不会破坏并损坏系统的其他部分。
我以前从来没有做过这样的事情,并且有点失去了最好的方法。如果我在特殊进程下加载所有动态链接库,然后使用像SELinux这样的东西来限制中央守护进程在其需求之外做任何事情的能力,这似乎是一个合理的解决方案吗?
我问的原因是我希望允许人们将代码加载到这个容器应用程序中,然后为它们处理所有服务器端的东西,所以安全性,权限,网络,日志记录等都提供了一个简单的,无论运行容器的UNIX版本如何,清理和跨平台API。