<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Access to Stream by having an app  with access in it in Management &amp; Governance</title>
    <link>https://community.qlik.com/t5/Management-Governance/Access-to-Stream-by-having-an-app-with-access-in-it/m-p/1576568#M13475</link>
    <description>&lt;P&gt;How have you given read access to the application?&lt;/P&gt;</description>
    <pubDate>Fri, 03 May 2019 22:05:51 GMT</pubDate>
    <dc:creator>jwjackso</dc:creator>
    <dc:date>2019-05-03T22:05:51Z</dc:date>
    <item>
      <title>Access to Stream by having an app  with access in it</title>
      <link>https://community.qlik.com/t5/Management-Governance/Access-to-Stream-by-having-an-app-with-access-in-it/m-p/1576489#M13474</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Is it possible to get access to stream by having one ore more apps that the user have access to ?&amp;nbsp;&lt;/P&gt;&lt;P&gt;it tried to implement the following rule, but it didn't work.&lt;/P&gt;&lt;P&gt;resource filter : Stream_*&lt;/P&gt;&lt;P&gt;action: read&lt;/P&gt;&lt;P&gt;condition :&amp;nbsp;&lt;/P&gt;&lt;P&gt;resource.App.HasPrivilege("read")&lt;/P&gt;&lt;P&gt;can't see the different between my example and&amp;nbsp; thwe in the video below for Reload Tasks&lt;/P&gt;&lt;P&gt;&lt;A title="https://youtu.be/h5nBdt969XI?t=1577" href="https://youtu.be/h5nBdt969XI?t=1577" target="_blank" rel="noopener"&gt;https://youtu.be/h5nBdt969XI?t=1577&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/A&gt;(already at 26:17)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank in advance&lt;/P&gt;&lt;P&gt;Shay&lt;/P&gt;</description>
      <pubDate>Sat, 16 Nov 2024 05:55:36 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Management-Governance/Access-to-Stream-by-having-an-app-with-access-in-it/m-p/1576489#M13474</guid>
      <dc:creator>shaybitton</dc:creator>
      <dc:date>2024-11-16T05:55:36Z</dc:date>
    </item>
    <item>
      <title>Re: Access to Stream by having an app  with access in it</title>
      <link>https://community.qlik.com/t5/Management-Governance/Access-to-Stream-by-having-an-app-with-access-in-it/m-p/1576568#M13475</link>
      <description>&lt;P&gt;How have you given read access to the application?&lt;/P&gt;</description>
      <pubDate>Fri, 03 May 2019 22:05:51 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Management-Governance/Access-to-Stream-by-having-an-app-with-access-in-it/m-p/1576568#M13475</guid>
      <dc:creator>jwjackso</dc:creator>
      <dc:date>2019-05-03T22:05:51Z</dc:date>
    </item>
    <item>
      <title>Re: Access to Stream by having an app  with access in it</title>
      <link>https://community.qlik.com/t5/Management-Governance/Access-to-Stream-by-having-an-app-with-access-in-it/m-p/1576612#M13479</link>
      <description>Iv'e Allocated the same Custom Propery to user and app and created a rule allows that.</description>
      <pubDate>Sat, 04 May 2019 18:46:03 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Management-Governance/Access-to-Stream-by-having-an-app-with-access-in-it/m-p/1576612#M13479</guid>
      <dc:creator>shaybitton</dc:creator>
      <dc:date>2019-05-04T18:46:03Z</dc:date>
    </item>
    <item>
      <title>Re: Access to Stream by having an app  with access in it</title>
      <link>https://community.qlik.com/t5/Management-Governance/Access-to-Stream-by-having-an-app-with-access-in-it/m-p/1577080#M13486</link>
      <description>&lt;P&gt;In the tutorial, access to the stream is granted by testing if (user.group = resource.name) or (user.role=resource.name).&amp;nbsp; Security is&amp;nbsp;&lt;A href="https://support.qlik.com/articles/000046126" target="_self"&gt;hierarchical&lt;/A&gt;, so I believe resrouce.App.HasPrivilege("read") is based on access to the stream.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If you wanted to grant access to the stream based on an app, you would need something like:&lt;/P&gt;&lt;P&gt;(resource.resourcetype="App" and !resource.@name.empty() and resource.@name = user.group)&lt;/P&gt;&lt;P&gt;basically see if the app custom property matches the user group.&amp;nbsp; You would also need an exception when the apps do not have a resource.name assigned.&lt;/P&gt;</description>
      <pubDate>Mon, 06 May 2019 18:20:25 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Management-Governance/Access-to-Stream-by-having-an-app-with-access-in-it/m-p/1577080#M13486</guid>
      <dc:creator>jwjackso</dc:creator>
      <dc:date>2019-05-06T18:20:25Z</dc:date>
    </item>
    <item>
      <title>Re: Access to Stream by having an app  with access in it</title>
      <link>https://community.qlik.com/t5/Management-Governance/Access-to-Stream-by-having-an-app-with-access-in-it/m-p/1577084#M13487</link>
      <description>&lt;P&gt;I know the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://support.qlik.com/articles/000046126?_ga=2.54143596.57475475.1557067293-1334112841.1544529386" target="_self" rel="nofollow noopener noreferrer"&gt;hierarchical&amp;nbsp;&lt;/A&gt;&amp;nbsp;principal and that's why I wondered how it was possible.&lt;/P&gt;&lt;P&gt;In the tutorial the access has granted by user role but also an app&amp;nbsp; read privilege, as in the image below.&lt;/P&gt;&lt;P&gt;correct me if i wrong,&amp;nbsp; the resource in the condition refers to the ReloadTask.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="555.png" style="width: 375px;"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/11510i00C8F6ABA3CC6A72/image-size/large?v=v2&amp;amp;px=999" role="button" title="555.png" alt="555.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Shay&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 06 May 2019 18:37:33 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Management-Governance/Access-to-Stream-by-having-an-app-with-access-in-it/m-p/1577084#M13487</guid>
      <dc:creator>shaybitton</dc:creator>
      <dc:date>2019-05-06T18:37:33Z</dc:date>
    </item>
    <item>
      <title>Re: Access to Stream by having an app  with access in it</title>
      <link>https://community.qlik.com/t5/Management-Governance/Access-to-Stream-by-having-an-app-with-access-in-it/m-p/1577094#M13488</link>
      <description>&lt;P&gt;If you have a stream security rule based on a custom property and the user matches that property, they will have access to the stream.&amp;nbsp; This would grant them access to the applications in the stream unless you also add a custom property to the application and create a security rule to define access to the app.&amp;nbsp; Once those 2 security rules are evaluated, then the reload task security rule can determine if the app has read privilege.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Below is what I have been testing:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;SchedulerQMCTasksMenu(only users with scheduler custom property can see the Tasks menu in QMC):&lt;/P&gt;&lt;P&gt;Resource filter: QmcSection_Task,QmcSection_ReloadTask,QmcSection_Event,QmcSection_SchemaEvent,QmcSection_CompositeEvent&lt;/P&gt;&lt;P&gt;Actions: Read&lt;/P&gt;&lt;P&gt;Conditions:!user.IsAnonymous() and ((user.@UserType="Scheduler"))&lt;/P&gt;&lt;P&gt;Context: Only in QMC&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Stream:&lt;/P&gt;&lt;P&gt;Resource filter: Stream_*&lt;/P&gt;&lt;P&gt;Actions: Read&lt;/P&gt;&lt;P&gt;Conditions:((resource.@ADGroup=user.@Developer))&lt;/P&gt;&lt;P&gt;Context: Only in QMC&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;ReloadTaskDefault (app does not have custom property assigned):&lt;/P&gt;&lt;P&gt;Resource filter:ReloadTask*,SchemaEvent*,CompositeEvent*,ExecutionResult*&lt;/P&gt;&lt;P&gt;Actions: Read,Update,Delete&lt;/P&gt;&lt;P&gt;Conditions:((user.@UserType="Scheduler"))&lt;BR /&gt;and&lt;BR /&gt;((resource.resourcetype="ReloadTask" and&lt;BR /&gt;resource.app.stream.@ADGroup=user.@Developer and&lt;BR /&gt;resource.app.@ADGroup.Empty())&lt;BR /&gt;or&lt;BR /&gt;(resource.resourcetype = "SchemaEvent"&lt;BR /&gt;or resource.resourcetype = "CompositeEvent"&lt;BR /&gt;))&lt;/P&gt;&lt;P&gt;Context: Only in QMC&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;ReloadTaskException (app has a custom property assigned):&lt;/P&gt;&lt;P&gt;Resource filter:ReloadTask*,SchemaEvent*,CompositeEvent*,ExecutionResult*&lt;/P&gt;&lt;P&gt;Actions: Read,Update,Delete&lt;/P&gt;&lt;P&gt;Conditons: ((user.@UserType="Scheduler"))&lt;BR /&gt;and&lt;BR /&gt;((resource.resourcetype="ReloadTask" and&lt;BR /&gt;resource.app.stream.@ADGroup=user.@Developer and&lt;BR /&gt;!resource.app.@ADGroup.Empty()&lt;BR /&gt;and resource.app.@ADGroup = user.@Developer)&lt;BR /&gt;or&lt;BR /&gt;(resource.resourcetype = "SchemaEvent"&lt;BR /&gt;or resource.resourcetype = "CompositeEvent"&lt;BR /&gt;))&lt;/P&gt;&lt;P&gt;Context: Only in QMC&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I've only disabled the delivered Stream security rule.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 06 May 2019 18:56:30 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Management-Governance/Access-to-Stream-by-having-an-app-with-access-in-it/m-p/1577094#M13488</guid>
      <dc:creator>jwjackso</dc:creator>
      <dc:date>2019-05-06T18:56:30Z</dc:date>
    </item>
    <item>
      <title>Re: Access to Stream by having an app  with access in it</title>
      <link>https://community.qlik.com/t5/Management-Governance/Access-to-Stream-by-having-an-app-with-access-in-it/m-p/1582741#M13672</link>
      <description>&lt;P&gt;Checking on this. I suspect not. I suspect it's a one-way hierarchy. I am also suspicious that the hierarchies are outlined in this API call (&lt;FONT face="courier new,courier"&gt;GET /qrs/about/api/relations&lt;/FONT&gt;). Example response from April 2019:&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;[
  "App.owner &amp;gt; User",
  "App.stream &amp;gt; Stream",
  "App.tags &amp;gt; Tag",
  "AppAvailability.app &amp;gt; App",
  "AppAvailability.appDataSegment &amp;gt; App.DataSegment",
  "AppAvailability.serverNodeConfiguration &amp;gt; ServerNodeConfiguration",
  "App.Content.app &amp;gt; App",
  "App.Content.references &amp;gt; StaticContentReference",
  "App.Content.whiteList &amp;gt; FileExtensionWhiteList",
  "App.DataSegment.app &amp;gt; App",
  "App.DataSegment.file &amp;gt; FileReference",
  "App.DataSegment.owner &amp;gt; User",
  "App.Internal.app &amp;gt; App",
  "App.Internal.file &amp;gt; FileReference",
  "App.Object.app &amp;gt; App",
  "App.Object.file &amp;gt; FileReference",
  "App.Object.owner &amp;gt; User",
  "App.Object.tags &amp;gt; Tag",
  "AppSeedInfo.app &amp;gt; App",
  "AppStatus.app &amp;gt; App",
  "CompositeEvent.externalProgramTask &amp;gt; ExternalProgramTask",
  "CompositeEvent.operational &amp;gt; CompositeEventOperational",
  "CompositeEvent.reloadTask &amp;gt; ReloadTask",
  "CompositeEvent.userSyncTask &amp;gt; UserSyncTask",
  "CompositeEvent.Rule.externalProgramTask &amp;gt; ExternalProgramTask",
  "CompositeEvent.Rule.operational &amp;gt; CompositeEventRuleOperational",
  "CompositeEvent.Rule.reloadTask &amp;gt; ReloadTask",
  "CompositeEvent.Rule.userSyncTask &amp;gt; UserSyncTask",
  "ContentLibrary.owner &amp;gt; User",
  "ContentLibrary.references &amp;gt; StaticContentReference",
  "ContentLibrary.tags &amp;gt; Tag",
  "ContentLibrary.whiteList &amp;gt; FileExtensionWhiteList",
  "CustomPropertyValue.definition &amp;gt; CustomPropertyDefinition",
  "DataConnection.owner &amp;gt; User",
  "DataConnection.tags &amp;gt; Tag",
  "EngineService.serverNodeConfiguration &amp;gt; ServerNodeConfiguration",
  "EngineService.tags &amp;gt; Tag",
  "ExecutionResult.details &amp;gt; ExecutionResult.Detail",
  "ExecutionSession.app &amp;gt; App",
  "ExecutionSession.executingNode &amp;gt; SchedulerService",
  "ExecutionSession.executionResult &amp;gt; ExecutionResult",
  "ExecutionSession.externalProgramTask &amp;gt; ExternalProgramTask",
  "ExecutionSession.reloadTask &amp;gt; ReloadTask",
  "ExecutionSession.userSyncTask &amp;gt; UserSyncTask",
  "Extension.owner &amp;gt; User",
  "Extension.references &amp;gt; StaticContentReference",
  "Extension.tags &amp;gt; Tag",
  "Extension.whiteList &amp;gt; FileExtensionWhiteList",
  "ExternalProgramTask.operational &amp;gt; ExternalProgramTaskOperational",
  "ExternalProgramTask.qlikUser &amp;gt; User",
  "ExternalProgramTask.tags &amp;gt; Tag",
  "ExternalProgramTaskOperational.lastExecutionResult &amp;gt; ExecutionResult",
  "FileExtension.mimeType &amp;gt; MimeType",
  "FileExtensionWhiteList.fileExtensions &amp;gt; FileExtension",
  "License.AnalyzerAccessType.user &amp;gt; User",
  "License.AnalyzerAccessUsage.analyzerAccessType &amp;gt; License.AnalyzerAccessType",
  "License.AnalyzerTimeAccessUsage.analyzerTimeAccessType &amp;gt; License.AnalyzerTimeAccessType",
  "License.AnalyzerTimeAccessUsage.user &amp;gt; User",
  "License.LoginAccessUsage.loginAccessType &amp;gt; License.LoginAccessType",
  "License.LoginAccessUsage.user &amp;gt; User",
  "License.ProfessionalAccessType.user &amp;gt; User",
  "License.ProfessionalAccessUsage.professionalAccessType &amp;gt; License.ProfessionalAccessType",
  "License.UserAccessType.user &amp;gt; User",
  "License.UserAccessUsage.userAccessType &amp;gt; License.UserAccessType",
  "OdagEngineGroup.owner &amp;gt; User",
  "OdagLink.modelGroups &amp;gt; OdagModelGroup",
  "OdagLink.owner &amp;gt; User",
  "OdagLink.templateApp &amp;gt; App",
  "OdagLinkUsage.link &amp;gt; OdagLink",
  "OdagLinkUsage.selectionApp &amp;gt; App",
  "OdagModelGroup.owner &amp;gt; User",
  "OdagRequest.engineGroup &amp;gt; OdagEngineGroup",
  "OdagRequest.generatedApp &amp;gt; App",
  "OdagRequest.link &amp;gt; OdagLink",
  "OdagRequest.owner &amp;gt; User",
  "OdagService.Settings.anonymousProxyUser &amp;gt; User",
  "PrintingService.serverNodeConfiguration &amp;gt; ServerNodeConfiguration",
  "PrintingService.tags &amp;gt; Tag",
  "ProxyService.serverNodeConfiguration &amp;gt; ServerNodeConfiguration",
  "ProxyService.tags &amp;gt; Tag",
  "ProxyServiceCertificate.proxyService &amp;gt; ProxyService",
  "ProxyService.Settings.virtualProxies &amp;gt; VirtualProxyConfig",
  "ReloadTask.app &amp;gt; App",
  "ReloadTask.operational &amp;gt; ReloadTaskOperational",
  "ReloadTask.tags &amp;gt; Tag",
  "ReloadTaskOperational.lastExecutionResult &amp;gt; ExecutionResult",
  "RepositoryService.serverNodeConfiguration &amp;gt; ServerNodeConfiguration",
  "RepositoryService.tags &amp;gt; Tag",
  "SchedulerService.serverNodeConfiguration &amp;gt; ServerNodeConfiguration",
  "SchedulerService.tags &amp;gt; Tag",
  "SchemaEvent.externalProgramTask &amp;gt; ExternalProgramTask",
  "SchemaEvent.operational &amp;gt; SchemaEventOperational",
  "SchemaEvent.reloadTask &amp;gt; ReloadTask",
  "SchemaEvent.userSyncTask &amp;gt; UserSyncTask",
  "ServerNodeConfiguration.roles &amp;gt; ServerNodeRole",
  "ServerNodeConfiguration.serviceCluster &amp;gt; ServiceCluster",
  "ServerNodeConfiguration.tags &amp;gt; Tag",
  "ServerNodeHeartbeat.serverNodeConfiguration &amp;gt; ServerNodeConfiguration",
  "ServiceStatus.serverNodeConfiguration &amp;gt; ServerNodeConfiguration",
  "SharedContent.owner &amp;gt; User",
  "SharedContent.references &amp;gt; StaticContentReference",
  "SharedContent.tags &amp;gt; Tag",
  "SharedContent.whiteList &amp;gt; FileExtensionWhiteList",
  "StaticContentReference.files &amp;gt; FileReference",
  "Stream.owner &amp;gt; User",
  "Stream.tags &amp;gt; Tag",
  "SyncSession.serverNodeConfiguration &amp;gt; ServerNodeConfiguration",
  "SystemRule.tags &amp;gt; Tag",
  "TempContent.owner &amp;gt; User",
  "TermsAcceptance.user &amp;gt; User",
  "User.tags &amp;gt; Tag",
  "UserDirectory.tags &amp;gt; Tag",
  "UserSyncTask.operational &amp;gt; UserSyncTaskOperational",
  "UserSyncTask.tags &amp;gt; Tag",
  "UserSyncTask.userDirectory &amp;gt; UserDirectory",
  "UserSyncTaskOperational.lastExecutionResult &amp;gt; ExecutionResult",
  "VirtualProxyConfig.loadBalancingServerNodes &amp;gt; ServerNodeConfiguration",
  "VirtualProxyConfig.tags &amp;gt; Tag",
  "WebExtensionLibrary.owner &amp;gt; User",
  "WebExtensionLibrary.tags &amp;gt; Tag",
  "Widget.extensionType &amp;gt; WebExtensionType",
  "Widget.library &amp;gt; WebExtensionLibrary",
  "Widget.owner &amp;gt; User",
  "Widget.tags &amp;gt; Tag"
]&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 21 May 2019 12:56:14 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Management-Governance/Access-to-Stream-by-having-an-app-with-access-in-it/m-p/1582741#M13672</guid>
      <dc:creator>Levi_Turner</dc:creator>
      <dc:date>2019-05-21T12:56:14Z</dc:date>
    </item>
  </channel>
</rss>

