在自动化Azure SQL数据库部署时,如何处理环境特定的安全权限?

mrzz3bfm  于 2022-12-27  发布在  其他
关注(0)|答案(1)|浏览(138)

我们正在尝试将Azure SQL数据库部署集成到我们的CICD流程中。
我们有三个环境:开发、登台和生产。
CI管道将生成DACPAC文件。CD管道将把DACPAC部署到下一个环境中。但是,由于分配给每个环境中的数据库的角色和权限发生冲突,该操作失败。
处理这种情况最好的办法是什么?

nimxete2

nimxete21#

我认为你应该在生成dacpac时使用一个exclude参数。
提取add参数时(单据sqlpackage提取):

sqlpackage /Action:extract /p:ignorePermissions=true

发布时使用(单据sqlpackage发布):

sqlpackage /Action:Publish /p:ExcludeObjectTypes="Users;Permissions"

对我来说,我会选择第二个选项,因为它对你想排除的对象提供了更多的控制(将来你可能想排除其他的东西)。

相关问题