none
关于xp_cmdshell RRS feed

  • 问题

  • 问题一:

    我在命令行窗口中执行命令SET USER,如下所示:
    C:\>SET USER
    USERDOMAIN=DSG201006301736
    USERNAME=Administrator
    USERPROFILE=C:\Documents and Settings\Administrator

    但是,在OSQL中结果却不同:
    C:\>OSQL -E
    1> XP_CMDSHELL 'SET USER'
    2> GO
    USERPROFILE=C:\Documents and Settings\Default User

    那环境变量USERDOMAIN和USERNAME怎么没有了呢?(我已在Surface Area Configuration中,Enable xp_cmdshell)

    问题二:

    我怎么才能看到和修改security context of xp_cmdshell的相关信息呢?

    2010年9月8日 3:25

答案

  • 调整 sql server 服务的启动用户,  让它和你在命令提示下使用的用户相同, 这样在 xp_cmdshell 里面的执行结果就和命令提示符下相同了.

    • 已标记为答案 老笨猪 2010年9月9日 8:07
    • 取消答案标记 老笨猪 2010年9月9日 8:08
    • 已标记为答案 老笨猪 2010年9月10日 17:59
    2010年9月9日 4:46

全部回复

  • When you run it from sql as sysadmin, it returns sql service account's setting.
    2010年9月8日 3:35
  • run it from sql as sysadmin ?能具体说下是怎么操作的吗?多谢。
    2010年9月8日 3:38
  • Connect to sql with login that has sysadmin rights then run xp_cmdshell.
    2010年9月8日 14:44
  • OK,Thank you. Now let's connect to sql with login 'sa':

    C:\>osql -Usa -SDSG201006301736
    Password:

    1> select sysadmin from master.sys.syslogins where name='sa'
    2> go
     sysadmin
     -----------
               1

    (1 row affected)

    1> xp_cmdshell 'set USER'
    2> go
     output 
    --------------------------------------------------------------------
     USERPROFILE=C:\Documents and Settings\Default User
     NULL

    (2 rows affected)

    Why environment 'USERDOMAIN' and 'USERNAME' has not been displayed ?

    2010年9月9日 2:43
  • Did you set those for sql service account?
    2010年9月9日 3:00
  • 不好意思。我不太明白如何"set those for sql service account" ?

    我在SSCM中,打开SQL Server (MSSQLSERVER)的属性页,在tab页"Log On"中,看到Log on as : Built-in account : Local System,这个内建账户是对应到Windows的System账户吧?这又该如何"set those"呢?

    2010年9月9日 3:50
  • 调整 sql server 服务的启动用户,  让它和你在命令提示下使用的用户相同, 这样在 xp_cmdshell 里面的执行结果就和命令提示符下相同了.

    • 已标记为答案 老笨猪 2010年9月9日 8:07
    • 取消答案标记 老笨猪 2010年9月9日 8:08
    • 已标记为答案 老笨猪 2010年9月10日 17:59
    2010年9月9日 4:46
  • 的确如此,非常感谢。

    第二个问题,我能不能看到,或者怎么才能看到(并修改)security context of xp_cmdshell的相关信息呢?

    2010年9月9日 6:25
  • Can try set proxy account. But why you want to see those info?

    2010年9月9日 13:31