Excepción de SSRS Sql Server Reporting Server Custom Security 2019 en Windows Server 2019

Excepción de SSRS Sql Server Reporting Server Custom Security 2019 en Windows Server 2019

Tengo un problema con respecto a la excepción de seguridad personalizada SSRS (Sql Server Reporting Server) 2019 en Windows Server 2019.

El informe SSRS funciona bien desde el código winforms vb.net en la versión anterior de SQL Server (2016, 2014 y 2012), pero no en 2019.

Ejecutar el informe usando el código fuente de Vb.net Winforms y enviar WebRequest al servidor SSRS con los detalles necesarios como la URL del servidor, nombre de usuario, contraseña, nombre de base de datos, etc., con respuesta usando webResponse, es necesario obtener una cookie de autenticación para el usuario.

Obtuve un error porque sqlAuthCookie es nulo y también obtuve un error porque la excepción de seguridad personalizada no está habilitada

Cualquier solución/ayuda será muy apreciada.

Adjunto el fragmento de código que se envía desde vb.net y se obtiene respuesta del servidor SSRS.

VB.NET Code
Protected Overrides Function GetWebResponse(ByVal request As WebRequest) As WebResponse
        Dim response As WebResponse = MyBase.GetWebResponse(request)
        Dim cookieName As String = response.Headers("RSAuthenticationHeader")
        ' If the response contains an auth header, store the cookie
        If Not (cookieName Is Nothing) Then
            Dim webResponse As HttpWebResponse = CType(response, HttpWebResponse)
            Dim authCookie As Cookie = webResponse.Cookies(cookieName)
            ' If the auth cookie is null, throw an exception
            If authCookie Is Nothing Then
                Throw New Exception("Unable to generate report - the Reporting Services Custom Security Extension is expected to be enabled in XB")
            End If
            ' otherwise save it for this request
            Me.AuthCookie = authCookie
            ' and send it to the client
        End If
        Return response

    End Function
//adding new GetUserInfo method for IAuthenticationExtension2
       public void GetUserInfo(IRSRequestContext requestContext, out IIdentity userIdentity, out IntPtr userId)
       {
           userIdentity = null;
           if (requestContext.User != null)
           {
               userIdentity = requestContext.User;
           }

           // initialize a pointer to the current user id to zero
           userId = IntPtr.Zero;
       }

información relacionada