About seven years ago at a conference in Los Angeles I attended I remember a session where a consultant from Oxford Computer Group gave a presentation on integrating Quest Identity Manager (now Dell One Identity Manager) with the Forefront Identity Manager Portal. I’ve recently had a requirement to do something similar and Carol pointed me in the direction of her experiments with doing something similar based off inspiration from that same presentation/session.
Well it is now 2017 and FIM and SharePoint have all moved through a few versions and doing something similar has changed. So now that I’ve got it working I thought I’d share how I’ve done it, and also to solicit any improvements. I’ve done this with SharePoint 2013.

Overview

In this post I’ll detail;

  • Publishing a Power BI Report
  • Creating new Microsoft Identity Manager Navigation Bar Resources
  • Embedding as an IFrame the published Power BI Report in the Microsoft Identity Manager Portal so that it appears like below

https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/Licensing%20Report.PNG

Pre-requisites

Obviously to follow this verbatim you are going to need to have a Power BI workspace and a Power BI Report. But you could embed any page you want to test it out.
You’ll also need;

Publish a Power BI Report

In Power BI select a Report you are looking to embed in the MIM Portal. I selected License Plans under Reports from my Power BI Worksapce.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/PBI-Report%201.PNG
From the File menu select Publish to Web.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/Publish%20to%20Web.PNG
Select Create embed code.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/CreateWebCode.PNG
Copy the link to your report somewhere where you can retrieve it easily later. Don’t worry about the HTML line or the size.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/Copy%20the%20Link.PNG
 

SharePoint Designer

Download and install with the defaults SharePoint Designer 2013 from the link above. I’m using the 64-bit version. I installed it on my Development MIM Portal Server. I’m using 2013 as my MIM Portal is using SharePoint 2013 Foundation (with SP1).
Once installed start SharePoint Designer and select Open Site.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/Sharepoint%20Designer%201.png
Enter the URL for your MIM Portal and select Open.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/Open%20Site.png
Note: In order for SharePoint Designer to successfully load your MIM Portal Site, the URL you provide above must be in your SharePoint Alternate Access Mappings. If it isn’t you will probably get the error “The server could not complete your request. For more specific information, click the Details button.”
And in your Windows Application Event Log Event ID 3 – WebHost

WebHost failed to process a request.
 Sender Information: System.ServiceModel.ServiceHostingEnvironment+HostingManager/42194754
 Exception: System.ServiceModel.ServiceActivationException: The service '/_vti_bin/client.svc' cannot be activated due to an exception during compilation.

 
Select Microsoft Identity Management, then All Files. You should then see a list of all the files in the MIM Portal website.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/All%20Files.PNG
Locate the aspx folder, right click on it and select New => Folder. Create a new folder under the aspx directory named ‘reports’.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/ReportsFolder.PNG
Right click on your new Reports Folder and select New => ASPX. Create an aspx file named reports.aspx.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/New%20ASPX%20Files.PNG
Repeat to create another aspx file named report.aspx.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/ReportsFiles.PNG
 
Click on the Reports.aspx file form the main pane and put the following contents in it overwritting everything else. Select Save.

<%@ Page Language="C#" %>
<html dir="ltr">
<head runat="server">
<meta name="WebPartPageExpansion" content="full" />
<title>Reports</title>
 window.open("report.aspx",target="_self")
</head>
<body/>
</html>

Click on the report.aspx file and replace the contents with the following and select Save.
Replace <yourreportlink> in https://app.powerbi.com/view?r=<yourreportlink> with your Power BI link.

<%@ Page masterpagefile="~masterurl/custom.master" Title="Reports" language="C#" inherits="Microsoft.SharePoint.WebPartPages.WebPartPage, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" meta:progid="SharePoint.WebPartPage.Document" UICulture="auto" Culture="auto" meta:webpartpageexpansion="full" %>
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Import Namespace="Microsoft.SharePoint" %> <%@ Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<asp:Content ContentPlaceHolderID="PlaceHolderTitleBar" Visible="true" runat="server">
</asp:Content>
<asp:Content id="content1" ContentPlaceHolderID="PlaceHolderMain" runat="server">
https://app.powerbi.com/view?r=
</asp:Content>

MIM Portal Navigation Resources

Now we need to create the MIM Portal Navigation Resources to link to our new files.
In the MIM Portal Select Navigation Bar Resources. Select New.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/Nav%20Bar%20Resources.PNG
 
Provide a Display Name, Description and select Next. Ignore Usage Keyword for now. More on that later.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/NavBar1.PNG
Make the Parent Order 8 to have it at the bottom of the Left Nav bar. Order is 0 as this is going to be our Group header. Select Next.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/NavBar2.PNG
Provide the path to the Reports.aspx file  ~/IdentityManagement/aspx/reports/reports.aspx Select Next.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/NavBar3.PNG
Provide the Localised Display name, select Finish and then Submit.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/NavBar4.PNG
Repeat, this time for linking to ~/IdentityManagement/aspx/reports/report.aspx and name it Licensing Report or whatever makes sense for your report. Also make the Order 1 so it nests under Reports.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/Nav%20Resources.PNG
Perform an IISReset.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/iisreset.PNG
Refresh you MIM Portal Page and you should see your new menu items on the left Navigatin Bar at the bottom.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/New%20Menus.PNG
Click on Reports and your Licensing Report will auto-magically load. Same as if you click on Licensing Report. You can now add as many reports as you need. And change which report you want to be the default by updating the Reports.aspx file in SharePoint Designer.
https://dl.dropboxusercontent.com/u/76015/BlogImages/MIMPortalReports/Done.PNG
You will probably also want to limit who see’s what reports. You can do that through Usage Keywords and Sets etc. By default as described here the reports will only be visible to Administrators.  Details to get you started on changing who can see what can be found here.
Let me know if you have any improvements.
 
Follow Darren Robinson on Twitter

Category:
FIM, Identity and Access Management
Tags:
,