Creating a JSAPI-only user?

Avr123
edited February 11, 2022 in Analytics #1
<p>Hi, I'm evaluating iHub and hoping to find that it will work well for our embedded reporting needs. So far it looks excellent, but I can't find out how to create an API user that does not have access to the user console.</p>
<p> </p>
<p>Can I create a JSAPI-only user, or do something else to that effect?</p>
<p> </p>
<p>If not, the only thing I can think of is to restrict access to the dashboard URLs in our load balancer, but that would require lots of tedious research into the iHub/JSAPI implementation and URLs to ensure security. But if we had to go out of our way to prevent users from logging in to the dashboard, we'd be better off just polishing up our free BIRT Viewer setup. Or maybe it's as easy as prohibiting external access to <span style="font-family:'courier new', courier, monospace;">iportal/login.do <span style="font-family:arial, helvetica, sans-serif;">and <span style="font-family:'courier new', courier, monospace;">iportal/dashboard<span style="font-family:arial, helvetica, sans-serif;">. Or maybe it's designed so the JSAPI only accesses URLs containing <span style="font-family:'courier new', courier, monospace;">iportal/jsapi</span>?</span></span></span></span></p>
<p> </p>
<p>Honestly, we couldn't care less about the dashboard or user accounts; we just want a polished version of the BIRT Viewer with enhanced embedding capabilities (the JSAPI). Our authentication is handled from scripted datasets. But iHub would be worth it if we could easily create an API-only user or otherwise easily prevent external access to the dashboard.</p>
<p> </p>
<p>Please point me in the right direction.</p>
<p>Thanks a lot,</p>
<p>Alex</p>

Comments

  • <p>This can be done using the functionality-level.config on the iHub.</p>
    <p> </p>
    <p>First create your JSAPI only user and do not assign that user to any groups. That will make the new user only part of the "All" group.</p>
    <p> </p>
    <p>Next, open the functionality-level.config located in "./BIRTiHub/iHub/web/iportal/WEB-INF" with a text editor. By default, only the "All" role will be uncommented and will have full functionality. You will need to remove all FeatureID/SubfeatureID from the all role and move the administrator role into the uncommented section.</p>
    <p> </p>
    <p>For example:</p>
    <p> </p>
    <div style="margin-left:40px;"><Level></div>
    <div style="margin-left:80px;"><Name>Open</Name></div>
    <div style="margin-left:80px;"><Role>All</Role></div>
    <div style="margin-left:40px;"></Level></div>
    <div style="margin-left:40px;"> </div>
    <div style="margin-left:40px;"><Level></div>
    <div style="margin-left:80px;"><Name>Admin</Name></div>
    <div style="margin-left:80px;"><Role>Administrators</Role></div>
    <div style="margin-left:80px;"><FeatureID>Jobs</FeatureID></div>
    <div style="margin-left:80px;"><FeatureID>Documents</FeatureID></div>
    <div style="margin-left:80px;"><FeatureID>Channels</FeatureID></div>
    <div style="margin-left:80px;"><FeatureID>Customization</FeatureID></div>
    <div style="margin-left:80px;"><FeatureID>Search</FeatureID></div>
    <div style="margin-left:80px;"><FeatureID>Volume</FeatureID></div>
    <div style="margin-left:80px;"><SubfeatureID>AddFile</SubfeatureID></div>
    <div style="margin-left:80px;"><SubfeatureID>DownloadFile</SubfeatureID></div>
    <div style="margin-left:80px;"><SubfeatureID>DeleteFile</SubfeatureID></div>
    <div style="margin-left:80px;"><SubfeatureID>SelfNotificationWithAttachment</SubfeatureID></div>
    <div style="margin-left:80px;"><SubfeatureID>SubscribeChannel</SubfeatureID></div>
    <div style="margin-left:80px;"><SubfeatureID>CreateFolder</SubfeatureID></div>
    <div style="margin-left:80px;"><SubfeatureID>DeleteFolder</SubfeatureID></div>
    <div style="margin-left:80px;"><SubfeatureID>ShareFile</SubfeatureID></div>
    <div style="margin-left:80px;"><SubfeatureID>Analyze</SubfeatureID></div>
    <div style="margin-left:80px;"><SubfeatureID>JobPriority</SubfeatureID></div>
    <div style="margin-left:80px;"><SubfeatureID>InteractiveViewing</SubfeatureID></div>
    <div style="margin-left:80px;"><SubfeatureID>AdvancedData</SubfeatureID></div>
    <div style="margin-left:80px;"><SubfeatureID>ShareDashboard</SubfeatureID></div>
    <div style="margin-left:80px;"><SubfeatureID>DashboardDeveloper</SubfeatureID></div>
    <div style="margin-left:40px;"></Level></div>
    <div style="margin-left:40px;"> </div>
    <div>After making the changes, an iHub restart is required for the new configuration to take effect.</div>
    <div> </div>
    <div>Please note, do not remove any of the feature tags located below the commented level tags and make sure to create a backup of the functionality-level.config before making any changes.</div>
    Warning No formatter is installed for the format ipb