[SalesForce] Accessing a Lightning Component from Salesforce1 as a Community User

I have created the sample "Expenses" lightning component from the Lightning Components Developers Guide Quick Start (Winter 15 version), and it works fine. I created a Lightning Component Tab and enabled the app for use in Salesforce1, logged in as a Standard user, went to /one/one.app, and confirmed that a Standard user can access the Lightning Component via Salesforce1. So far so good.

Now I'd like to access the lightning component as an authenticated community user. (Aside: I've read this SFSE post and didn't find the answer conclusive, so I decided to experiment). I created a community in this dev org, cloned the community login user profile, gave the new profile full CRUD and FLS for the Expense sObject, plus access to ALL Apex classes and VF pages (just to eliminate as potential issues), assigned the Standard Expenses tab (not the lightning tab) to the community, created a community user, assigned the profile, and confirmed that an authenticated community user can view the standard expenses tab, view expenses, insert/update/etc.

I then added the standard Expenses tab to my SF1 config, and tried to access salesforce1 from the browser as the community user (e.g., mydevprefix-developer-edition.na16.force.com/zap/one/one.app, where /zap is my community prefix), and proved that the community user can access Salesforce1, and can interact with the standard expenses tab via salesforce1.

Finally, having already tested the lightning tab via SF1 as a standard user (see first paragraph), I tried the same as the Community User, via /zap/one/one.app. However, the lightning tab didn't appear in Salesforce1. I tried adding the Lightning App to the community (Community->Adminstration Settings->Tabs and Pages), but it still doesn't appear. At this point, I discovered something new: With the Lightning Tab added to the community, logging in to the community and going to the home page (/zap) shows the Lightning Tab among the available tabs, but clicking produces: "Insufficient Privileges: You do not have the level of access necessary to perform the operation you requested. Please contact the owner of the record or your administrator if access is necessary."

So, at this point, I'm stuck. It seems like there's another perms issue here, preventing an authenticated community user from accessing the Lightning Component , but I can't find any relevant permissions to change on the profile. I suspect that if I could address the reported perms issue and get the tab to work outside of SF1, it would appear in SF1 as well (and, knock on wood, work with a direct lightning url as hinted at here). Any suggestions?

Best Answer

Jason - Lightning Components for Community Cloud are coming (they will be GA...SAFE HARBOR APPLIES) in the Winter '16 release. You may have a prerelease org on hand, so the way you will build and surface them is slightly different than you may be used to:

  • Create a Lightning component and be sure it implements the forceCommunity:availableForAllPageTypes interface: <aura:component implements="forceCommunity:availableForAllPageTypes"/>
  • Get into the Community Builder and upgrade the template to Winter 16 under the settings pane.
  • Get into a template-driven community, open the Community Builder, and navigate to the page you want to edit (Winter 16 and above). Find your component in the left side palette and drag it onto the page. Publish.

So when you get your sandbox upgraded, or when you get the release, have at it!

Related Topic