为 SQLRUserGroup 创建登录名

适用于:SQL Server 2016 (13.x) 及更高版本

当脚本中的环回连接指定了信任连接,且用于执行包含代码的对象的标识是 Windows 用户帐户时,在 SQL Server 中为 SQLRUserGroup 创建登录名 。

信任连接是那些在连接字符串中具有 Trusted_Connection=True 的连接。 当 SQL Server 收到指定信任连接的请求时,它将检查当前 Windows 用户的标识是否具有登录名。 对于作为工作线程帐户执行的外部进程(例如 SQLRUserGroup 中的 MSSQLSERVER01),请求失败是因为默认情况下这些帐户没有登录名 。

可以通过为 SQLRUserGroup 创建登录名来解决连接错误问题。 有关标识和外部进程的详细信息,请参阅扩展性框架安全概述

注意

请确保 SQLRUserGroup 具有“允许本地登录”权限 。 默认情况下,会向所有本地新用户授予此权限,但某些组织更严格的组策略可能会禁用此权限。

创建登录名

  1. 在 SQL Server Management Studio的“对象资源管理器”中,展开“安全性” ,右键单击“登录名” ,然后选择“新建登录名” 。

  2. 在“登录名 - 新建”对话框中,选择“搜索” 。 (请勿在该框中键入任何内容。)

    单击“搜索”为机器学习添加新的登录名

  3. 在“选择用户或组”框中,单击“对象类型”按钮 。

    搜索对象类型,为机器学习添加新的登录名

  4. 在“对象类型”对话框中,选择“组” 。 清除所有其他复选框。

    在“对象类型”对话框中选择“组”

  5. 单击“高级”,验证要搜索的位置是否位于当前计算机,然后单击“立即查找” 。

    单击“立即查找”以获取组列表

  6. 滚动服务器上的组帐户列表,直到找到一个以 SQLRUserGroup 开头的组帐户。

    • 无论安装的是 R 还是 Python,或者两者都已安装,与默认实例的 Launchpad 服务相关联的组名称始终为 SQLRUserGroup 。 仅为默认实例选择此帐户。
    • 如果使用的是命名实例,则实例名称将附加到默认工作组名称 的名称之后SQLRUserGroup。 例如,如果实例名称为“MLTEST”,则此实例的默认用户组名称将为 SQLRUserGroupMLTest 。

    服务器上的组示例

  7. 单击“确定”关闭高级搜索对话框 。

    重要

    请确保已为实例选择了正确的帐户。 每个实例只能使用自己的 Launchpad 服务以及为该服务创建的组。 实例不能共享 Launchpad 服务或工作线程帐户。

  8. 再次单击“确定”关闭“选择用户或组”对话框 。

  9. 在“登录名 - 新建”对话框中,单击“确定” 。 默认情况下,将登录名分配到 公共 角色,且有权连接到数据库引擎。

后续步骤