I have configured SSRS to use form authentication using a custom security extension which i have implemented by following SSRS documentation. Both Report Server and Report Manager works fine with the new security extension.
However when I try to save newly created report using report builder to the report server, it gives me the following error,
System.Web.Services.Protocols.SoapException: An error occurred within the report server database.
This may be due to a connection failure, timeout or low disk condition within the database. --->
Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: An error occurred within the report server database. This may be due to a connection failure, timeout or low disk condition within the database. --->
System.Data.SqlClient.SqlException: Procedure or function 'CreateObject' expects parameter '@CreatedByName', which was not supplied.
at Microsoft.ReportingServices.Library.ReportingService2010Impl.CreateReport(String Report, String Parent, Boolean Overwrite, Byte[] Definition, Property[] Properties, ItemType ItemType, CatalogItem& ItemInfo, Warning[]& Warnings)
at Microsoft.ReportingServices.Library.ReportingService2010Impl.CreateCatalogItem(String ItemType, String Name, String Parent, Boolean Overwrite, Byte[] Definition, Property[] Properties, CatalogItem& ItemInfo, Warning[]& Warnings)
at Microsoft.ReportingServices.WebServer.ReportingService2010.CreateCatalogItem(String ItemType, String Name, String Parent, Boolean Overwrite, Byte[] Definition, Property[] Properties, CatalogItem& ItemInfo, Warning[]& Warnings)
I cannot use report builder directly with new security extension to create or edit reports in the report server. It seems report builder fails to authenticate the user properly which results in missing `@CreatedByName` parameter while calling some stored
procedure to create the report.
I do not even know how report builder authenticate itself when connecting the report server because it does not ask for username or password.
Could anyone give me an explanation or workaround for this issue?
Any help would be appreciated.