We have created an ASP.NET application for achieving this embedding. Here, we could set the server and dashboard details as embed details then the dashboard would be rendered after passing the authorization.
NOTE: The best way to get started would be reading the Getting Started section of the documentation to start using first. The Getting Started guide gives you enough information that you need to know before working on the sample.
Please download the ASP.NET App from here.
You need to set your embed property details in the
Site.Master as follows.
|UserEmail||UserEmail of the Admin in your Bold BI, which would be used to get the dashboards list|
|EmbedSecret||You could get your EmbedSecret key from Embed tab by enabling `Enable embed authentication` in Administration page as mentioned in next step|
|RootUrl||Dashboard Server BI URL (ex: http://localhost:5000/bi/site/site1, http://demo.boldbi.com/bi/site/site1)|
|SiteIdentifier||For Bold BI Enterprise edition, it should be like `site/site1`. For Bold BI Cloud, it should be empty string.|
|Environment||Your Bold BI application environment. (If Cloud, you should use `Cloud`, if Enterprise, you should use `Enterprise`)|
|DashboardId||Set the item id of the dashboard to embed from BI server.|
You could get the item id of the dashboard from the BI server. Please refer to this link and the following screenshot.
You can get your Embed Secret key from the administrator setting section. Please refer to this link for more details.
Then, run your ASP.NET sample.
Based on the provided embed details with dashboardId, we would authorize the server URL by calling the GetEmbedDetails function
(Default.aspx/GetEmbedDetails) call with provided EmbedProperties values.
Learn more about authorize server here
In the above authorization, we have generated SignatureUrl with the provided EmbedSecret key and validate embed details in Bold BI. Once details are validated, the dashboard starts to render.
Site.Master, you can change the dashboard Id of the respective dashboard as you wish to embed.