IReportServerCredentials Interface

 

Allows objects to provide credentials to use for connecting to a report server.

Namespace:   Microsoft.Reporting.WinForms
Assembly:  Microsoft.ReportViewer.WinForms (in Microsoft.ReportViewer.WinForms.dll)

Syntax

public interface IReportServerCredentials
public interface class IReportServerCredentials
type IReportServerCredentials = interface end
Public Interface IReportServerCredentials

Properties

Name Description
System_CAPS_pubproperty ImpersonationUser

Specifies the user to impersonate when connecting to a report server.

System_CAPS_pubproperty NetworkCredentials

Returns network credentials to be used for authentication with the report server.

Methods

Name Description
System_CAPS_pubmethod GetFormsCredentials(Cookie, String, String, String)

Provides forms authentication to be used to connect to the report server.

Examples

Legacy Code Example

The following example shows an implementation of IReportServerCredentials.

using System;
using System.Data;
using System.Windows.Forms;
using System.Security.Principal;
using Microsoft.Reporting.WinForms;

class MyCredentials : IReportServerCredentials
{
    public WindowsIdentity ImpersonationUser
    {
        get
        {
            return null;
        }
    }

    public bool GetBasicCredentials(out string user, out string 
password, out string domain)
    {
        user = <UserName>;
        password = <Password>;
        domain = <DomainName>;
        return true;
    }

    public bool GetFormsCredentials(System.Net.Cookie myCookie, out 
string user, out string password, out string authority)
    {
        myCookie = user = password = authority = null;
        return false;
    }
}

public class Demo : Form 
{
    public Demo()
    {
        this.Text = "Report Control Demo";
        this.ClientSize = new System.Drawing.Size(950, 600);

        ReportViewer reportViewer = new ReportViewer();

        // Set Processing Mode.

        reportViewer.ProcessingMode = ProcessingMode.Remote;

        // Set server info.

        reportViewer.ServerReport.ReportServerUrl = new 
Uri("https://<ServerName>/reportserver");
        reportViewer.ServerReport.ReportPath = "/Report 
Project1/Report1";
        reportViewer.ServerReport.ReportServerCredentials = new 
MyCredentials();

        // Add the reportviewer to the form.

        reportViewer.Dock = DockStyle.Fill;
        this.Controls.Add(reportViewer);

        // Process and render the report.

        reportViewer.RefreshReport();
    }

    [STAThread]
    public static int Main(string[] args) 
    {
        Application.Run(new Demo());
        return 0;
    }
}

See Also

Microsoft.Reporting.WinForms Namespace

Return to top