<?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 Full access only on specific streams for developers in Management &amp; Governance</title>
    <link>https://community.qlik.com/t5/Management-Governance/Full-access-only-on-specific-streams-for-developers/m-p/1202748#M7645</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want to be able to have a "Publish Admin" role, where the developers can only publish new versions of apps they are allowed to develop on. There are other apps which they can see, but shouldn't be able to duplicate. Any idea how to do this?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;User: .\test1&lt;/P&gt;&lt;P&gt;Streams: Newstream, Secondstream&lt;/P&gt;&lt;P&gt;Read, Publish-rights on both streams.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;First a custom property:&lt;/P&gt;&lt;P&gt;Name: CanPublish&lt;/P&gt;&lt;P&gt;Resource types: Users, Streams&lt;/P&gt;&lt;P&gt;Values: [e.g.stream name - doesn't have to be identical to the actual stream name, as long as the value is identical on user and stream], ex. Newss&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We add this custom property on:&lt;/P&gt;&lt;P&gt;User: ”test1” with value ”Newss”&lt;/P&gt;&lt;P&gt;Stream: ”NewStream” with value ”Newss”&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Two rules is needed:&lt;/P&gt;&lt;P&gt;One for what you can see in the QMC&lt;/P&gt;&lt;P&gt;Name: _LocalAdmin QMC&lt;/P&gt;&lt;P&gt;Resource filter: QmcSection_App&lt;/P&gt;&lt;P&gt;Actions: Read&lt;/P&gt;&lt;P&gt;Conditions: user.roles="LocalAdmin"&lt;/P&gt;&lt;P&gt;Context: Only in QMC&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;One for what you should be able to do with the apps:&lt;/P&gt;&lt;P&gt;Name: _LocalAdmin apps&lt;/P&gt;&lt;P&gt;Resource filter: Stream_*,App_*,App.Object_*,Tag_*&lt;/P&gt;&lt;P&gt;Actions: all&lt;/P&gt;&lt;P&gt;Conditions: user.roles="LocalAdmin" and&amp;nbsp; (&lt;/P&gt;&lt;P&gt;(resource.resourcetype="App" or resource.resourcetype="App.Object" or resource.resourcetype="Stream" or resource.resourcetype="Tag") and&lt;/P&gt;&lt;P&gt;(resource.stream.@CanPublish=user.@CanPublish or resource.app.stream.@CanPublish=user.@CanPublish ) or&lt;/P&gt;&lt;P&gt;(resource.IsOwned()&amp;nbsp; and resource.owner = user)&lt;/P&gt;&lt;P&gt;)&lt;/P&gt;&lt;P&gt;Context: Only in QMC&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;First question:&lt;/P&gt;&lt;P&gt;The result is that users can duplicate all apps he can see, and he can replace all apps in streams where both he and the stream has the same custom property value on "CanPublish" (see attached yes.png). How can I deny him access on "SecondStream" (see attached no.png) ?&lt;/P&gt;&lt;P&gt;Without the (resource.IsOwned()&amp;nbsp; and resource.owner = user) the user can't duplicate his own apps, nor duplicate or replace apps that are present in the streams he should be "LocalAdmin" to.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Second question:&lt;/P&gt;&lt;P&gt;With these added conditions (+ QMC sections rules), he can add tasks under the QMC sections, but for some reason the "Create new reload task" under the Apps section of QMC is grayed out. Any idea how to allow this directly under Apps section of QMC?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Resource filter: Stream_*,App_*,App.Object_*,Tag_*, ReloadTask_*,SchemaEvent_*,CompositeEvent_*&lt;/P&gt;&lt;P&gt;Actions: all&lt;/P&gt;&lt;P&gt;Conditions: user.roles="LocalAdmin" and (&lt;/P&gt;&lt;P&gt;(resource.resourcetype="App" or resource.resourcetype="App.Object" or resource.resourcetype="Stream" or resource.resourcetype="ReloadTask" or resource.resourcetype="SchemaEvent" or resource.resourcetype="CompositeEvent" or resource.resourcetype="Tag")&amp;nbsp; and&lt;/P&gt;&lt;P&gt;(resource.stream.@CanPublish=user.@CanPublish or resource.app.stream.@CanPublish=user.@CanPublish) or&lt;/P&gt;&lt;P&gt;(resource.IsOwned()&amp;nbsp; and resource.owner = user)&lt;/P&gt;&lt;P&gt;)&lt;/P&gt;&lt;P&gt;Context: Only in QMC&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 05 Oct 2016 13:28:39 GMT</pubDate>
    <dc:creator>ergustafsson</dc:creator>
    <dc:date>2016-10-05T13:28:39Z</dc:date>
    <item>
      <title>Full access only on specific streams for developers</title>
      <link>https://community.qlik.com/t5/Management-Governance/Full-access-only-on-specific-streams-for-developers/m-p/1202748#M7645</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want to be able to have a "Publish Admin" role, where the developers can only publish new versions of apps they are allowed to develop on. There are other apps which they can see, but shouldn't be able to duplicate. Any idea how to do this?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;User: .\test1&lt;/P&gt;&lt;P&gt;Streams: Newstream, Secondstream&lt;/P&gt;&lt;P&gt;Read, Publish-rights on both streams.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;First a custom property:&lt;/P&gt;&lt;P&gt;Name: CanPublish&lt;/P&gt;&lt;P&gt;Resource types: Users, Streams&lt;/P&gt;&lt;P&gt;Values: [e.g.stream name - doesn't have to be identical to the actual stream name, as long as the value is identical on user and stream], ex. Newss&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We add this custom property on:&lt;/P&gt;&lt;P&gt;User: ”test1” with value ”Newss”&lt;/P&gt;&lt;P&gt;Stream: ”NewStream” with value ”Newss”&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Two rules is needed:&lt;/P&gt;&lt;P&gt;One for what you can see in the QMC&lt;/P&gt;&lt;P&gt;Name: _LocalAdmin QMC&lt;/P&gt;&lt;P&gt;Resource filter: QmcSection_App&lt;/P&gt;&lt;P&gt;Actions: Read&lt;/P&gt;&lt;P&gt;Conditions: user.roles="LocalAdmin"&lt;/P&gt;&lt;P&gt;Context: Only in QMC&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;One for what you should be able to do with the apps:&lt;/P&gt;&lt;P&gt;Name: _LocalAdmin apps&lt;/P&gt;&lt;P&gt;Resource filter: Stream_*,App_*,App.Object_*,Tag_*&lt;/P&gt;&lt;P&gt;Actions: all&lt;/P&gt;&lt;P&gt;Conditions: user.roles="LocalAdmin" and&amp;nbsp; (&lt;/P&gt;&lt;P&gt;(resource.resourcetype="App" or resource.resourcetype="App.Object" or resource.resourcetype="Stream" or resource.resourcetype="Tag") and&lt;/P&gt;&lt;P&gt;(resource.stream.@CanPublish=user.@CanPublish or resource.app.stream.@CanPublish=user.@CanPublish ) or&lt;/P&gt;&lt;P&gt;(resource.IsOwned()&amp;nbsp; and resource.owner = user)&lt;/P&gt;&lt;P&gt;)&lt;/P&gt;&lt;P&gt;Context: Only in QMC&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;First question:&lt;/P&gt;&lt;P&gt;The result is that users can duplicate all apps he can see, and he can replace all apps in streams where both he and the stream has the same custom property value on "CanPublish" (see attached yes.png). How can I deny him access on "SecondStream" (see attached no.png) ?&lt;/P&gt;&lt;P&gt;Without the (resource.IsOwned()&amp;nbsp; and resource.owner = user) the user can't duplicate his own apps, nor duplicate or replace apps that are present in the streams he should be "LocalAdmin" to.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Second question:&lt;/P&gt;&lt;P&gt;With these added conditions (+ QMC sections rules), he can add tasks under the QMC sections, but for some reason the "Create new reload task" under the Apps section of QMC is grayed out. Any idea how to allow this directly under Apps section of QMC?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Resource filter: Stream_*,App_*,App.Object_*,Tag_*, ReloadTask_*,SchemaEvent_*,CompositeEvent_*&lt;/P&gt;&lt;P&gt;Actions: all&lt;/P&gt;&lt;P&gt;Conditions: user.roles="LocalAdmin" and (&lt;/P&gt;&lt;P&gt;(resource.resourcetype="App" or resource.resourcetype="App.Object" or resource.resourcetype="Stream" or resource.resourcetype="ReloadTask" or resource.resourcetype="SchemaEvent" or resource.resourcetype="CompositeEvent" or resource.resourcetype="Tag")&amp;nbsp; and&lt;/P&gt;&lt;P&gt;(resource.stream.@CanPublish=user.@CanPublish or resource.app.stream.@CanPublish=user.@CanPublish) or&lt;/P&gt;&lt;P&gt;(resource.IsOwned()&amp;nbsp; and resource.owner = user)&lt;/P&gt;&lt;P&gt;)&lt;/P&gt;&lt;P&gt;Context: Only in QMC&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Oct 2016 13:28:39 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Management-Governance/Full-access-only-on-specific-streams-for-developers/m-p/1202748#M7645</guid>
      <dc:creator>ergustafsson</dc:creator>
      <dc:date>2016-10-05T13:28:39Z</dc:date>
    </item>
  </channel>
</rss>

