安全配置最佳实践
场景说明
安全性是华为云与您的共同责任。华为云负责云服务自身的安全,提供安全的云;作为租户,您需要合理使用云服务提供的安全能力对数据进行保护,安全地使用云。
本文提供了ModelArts使用过程中的安全最佳实践,旨在为提高整体安全能力提供可操作的规范性指导。根据该指导文档您可以持续评估ModelArts资源的安全状态,更好的组合使用ModelArts提供的多种安全能力,提高对ModelArts资源的整体安全防御能力,保护在ModelArts平台上的数据不泄露、不被篡改,以及数据传输过程中不泄露、不被篡改。
本文从以下几个维度给出建议,您可以评估ModelArts使用情况,并根据业务需要在本指导的基础上进行安全配置。
使用IP白名单的方式接入Notebook
ModelArts Standard的开发环境Notebook实例支持通过SSH方式直接连接,通过keypair方式进行认证。除此之外,对于安全性要求更强的用户,建议配置IP白名单的方式,进一步限制能接入该实例的终端节点。配置方式参考Notebook SSH远程连接配置章节中的“远程访问白名单”参数。
在生产环境下使用专属资源池
在使用训练、推理、开发环境时,建议在生产环境下使用专属资源池,它在提供独享的计算资源情况下,还可以提供更强更安全的资源隔离能力,专属资源池的使用请参考创建专属资源池。
在使用ModelArts进行AI全流程开发时,您可以选择使用两种不同的资源池。
公共资源池:公共资源池提供公共的大规模计算集群,根据用户作业参数分配使用,资源按作业隔离。按资源规格、使用时长及实例数计费,不区分任务(训练作业、部署、开发)。公共资源池是ModelArts默认提供,不需另行创建或配置,您可以直接在AI开发过程中,直接选择公共资源池进行使用。
专属资源池:提供独享的计算资源,可用于Notebook、训练作业、部署模型。专属资源池不与其他用户共享,更加高效。
在使用专属资源池之前,您需要先购买一个专属资源池,然后在AI开发过程中选择此专属资源池。
自定义镜像使用非root用户运行
自定义镜像支持自行开发Dockerfile,并推送到SWR,出于权限控制范围的考虑,建议用户在自定义镜像时,显式定义默认运行的用户为非root用户,以降低容器运行时的安全风险。
在AI业务开发以及运行的过程中,一般都会有复杂的环境依赖需要进行调测并固化。面对开发中的开发环境的脆弱和多轨切换问题,在ModelArts的AI开发最佳实践中,通过容器镜像的方式,将运行环境进行固化,以这种方式不仅能够的进行依赖管理,而且可以方便的完成工作环境切换。配合ModelArts提供的云化容器资源使用,可以更加快速、高效地进行AI开发与模型实验的迭代等。
ModelArts Standard中使用自定义镜像请参见自定义镜像使用场景。
开发过程不使用硬编码的凭证
在使用ModelArts Standard Notebook进行算法开发时,如果要将此开发好的算法发布上生产环境,建议对代码中使用到的密码、AK/SK 、数据库连接、OBS连接、SWR连接信息等进行排查,不要使用固化的认证凭据,不方便后期算法更新维护。建议对上述敏感信息进行加密后保存在程序配置文件中。
对不同的子用户,使用独立的委托
要使用ModelArts的资源,需要得到用户的委托授权,为了控制各子用户之间权限,建议租户在ModelArts全局配置功能中给各子用户分配委托权限时,分开授权,不要多个子用户共用一个委托凭证。委托授权相关内容参考创建IAM用户并授权使用ModelArts。