I spoke with one of the sales engineers who gave me a work around to this issue.
If you explicitly change the permissions on the dashboard in question in the $SPLUNK_HOME/etc/apps/your-app/metadata/local.meta directory, you can get it to work.
Add the access line to the object and give write access to the custom role.
Change the ownership of the object to the role rather than the user that created the dashboard.
FROM:
[views/sample_dashboard]
owner = user1 version = 4.2.1
TO:
[views/sample_dashboard]
access = read : [ * ], write : [ admin, power, CUSTOM ROLE] owner = CUSTOM ROLE version = 4.2.1
http://www.splunk.com/base/Documentation/latest/Developer/Step5SetPermissions
This works without the need to give admin_all_objects to the role. However, this is a bit of overhead as the admin will still need to get involved whenever new objects are created that need to be shared within the App. Avoiding this necessity was one of the main goals of creating the custom role. I don't think this is the way the functionality was intended to work unless I am missing something.
... View more