Reporting services 使用openquery将SSRS参数从SQL Server注入Sybase

Reporting services 使用openquery将SSRS参数从SQL Server注入Sybase,reporting-services,sql-injection,sql-server-2016,sybase,openquery,Reporting Services,Sql Injection,Sql Server 2016,Sybase,Openquery,我正在尝试将SSRS报告中的参数传递到SQL Server->Sybase链接服务器。 据我所知,带参数的sp_executesql不适用于SQL Server->Sybase链接服务器,因此我知道的唯一选项是使用openquery。但是,由于参数是用户输入的,因此我希望避免在查询中使用动态sql 有没有一种方法可以在不必担心SQL注入的情况下将参数从SQL Server传递到Sybase 我的参数应该只包含数字字符。在将SQL Server传递给Sybase openquery之前,在SQL

我正在尝试将SSRS报告中的参数传递到SQL Server->Sybase链接服务器。 据我所知,带参数的sp_executesql不适用于SQL Server->Sybase链接服务器,因此我知道的唯一选项是使用openquery。但是,由于参数是用户输入的,因此我希望避免在查询中使用动态sql

  • 有没有一种方法可以在不必担心SQL注入的情况下将参数从SQL Server传递到Sybase
  • 我的参数应该只包含数字字符。在将SQL Server传递给Sybase openquery之前,在SQL Server上检查非数字字符是否会阻止注入?e、 g
  • BEGIN
    
    IF (@parameter  LIKE '%[^0-9]%')
    BEGIN
       RAISEERROR('Bad input',16, 1) 
       RETURN
    END
    ...
    dynamic sql
    ...
    END