Or do we have to do it manually for 60 users?
You can mass-assign Permission Sets and Licenses using Salesforce’s setup UI’s, from Manage Licenses and from a Permission Set’s View Users permission. This is your best bet if you’ve only got 60 users. See the Skuid tutorial “Granting other users access to Skuid” for more information — there’s also an Anonymous Apex script there for mass-assigning Permission Sets.
As of Salesforce’s Summer 14 release, it’s also now possible to programmatically assign Licenses via Triggers / Apex, using the UserPackageLicense object. The Anonymous Apex script mentioned above could be adapted to mass-create UserPackageLicense records as well as PermissionSetAssignment records — this just hasn’t been done yet. It’s on our road map to some built-in logic to Skuid to allow you to auto-assign and revoke Licenses / Permission Sets as Users are added / deactivated, but this is not current functionality.
However it is possible to build this functionality on your own. Essentially you just need to write an Apex Trigger on User after insert / update, that checks if the User is new or has been re-activated, and if so inserts new UserPackageLicense and/or PermissionSetAssignment records for the Skuid package / Skuid Page Viewer Permission Set , or if the User has been de-activated, finds and removes all UserPackageLicense records to the Skuid package and to the Skuid Page Viewer Permission Set.
Has anyone had success implementing this? If so, would you be willing to share the sample Apex trigger for the benefit of the Skuid community? Thanks!
Gary, we are working on implementing this functionality as a native part of Skuid, to be available in an upcoming point release of Skuid. Stay tuned.
Thanks Zach. In the meantime, is there any type of solution in the form of a special site license or anything like that? We are rolling out customer communities for the first time this month (which is a 100% Skuid environment) and this is an unexpected roadblock. Any guidance you could provide would be very helpful.
I’d love to hear about possible solutions for this scenario and any updates to including it in Skuid (including timeline as to when it could be available). Prototyping a community that would rely on Skuid for UI and it isn’t feasible to add licenses manually for each of the 300-500 people that sign up. Since the UI wouldn’t even be functional for them until they have the Skuid license, this is required functionality. Sure, it could be programmatically created, but I hate re-inventing the wheel and it sounds like you’re already working on something that would be supported by the package.
In the Skuid Superbank release, we added a new “User Licensing / Permissions” area to the “Skuid Settings” tab which lets you declaratively configure all of the following, at an Organization-wide level and/or at a per-Profile level:
Auto-** assign Licenses** to managed packages (e.g. Skuid, but you could also use this for assigning licenses to other packages as well) whenever a new User is created or is newly-activated (for pre-existing users)
Auto-** revoke **** Licenses** to managed packages whenever a User is de-activated
Auto-** assign Permission Sets** whenever a new User is created or is newly-activated (for pre-existing users)
Auto-revoke Permission Sets whenever a User is de-activated
So for instance, you can use this to do the following:
- Auto-assign / revoke a Skuid License, and a License to Conga, and the “Skuid Page Builder” Permission Set, as well as a Conga Permission Set, to/from all System Administrator users.
- Auto-assign / revoke a Skuid License and the Permission Sets “Skuid Page Viewer” (included with Skuid) as well as a custom “Use My Awesome Community” Permission Set to all Partner Community Users.
- Auto-assign / revoke a Skuid License and the Permission Sets “Skuid Page Viewer” and 4 other internal Permission Sets to all Users with the Profiles “Standard User”, “Marketing User”, etc.
Here are some screenshots of what this looks like:
Organization-default level
Profile-specific level
Has this been modified for mass assigning of licenses? I would like to see sample if I could.
See the official reply — this was made available in the Skuid Superbank release.
Patrick, in the Skuid Superbank release we added some functionality which should make it very easy to both initially mass-assign licenses to existing users, and to automatically assign licenses to new users added in the future.
See the official reply to this post for more details.
How about mass removal for existing de-activated users?
That’s available as well: from the Skuid Settings page and the User Licensing / Permissions tab, click the link called Assign / Remove user licenses to Skuid
We are thinking of purchasing skid to not only replace some of our need for VF, but to automate licenses for other managed packages we use as we are a pretty large org. I am not sure your above solution would work for that unless your tool can mass update already active users?
Patrick,
Salesforce has a built-in tool for mass-assigning or revoking licenses to existing users, to any managed package. So the link I pointed to you above simply dumps you into that, specifically for the Skuid app. But you can easily use this for any managed package.
What Skuid offers in addition to this, that Salesforce does NOT, is a tool for automatically adding / revoking licenses to packages for users as they are added / activated / deactivated on an ongoing basis, for instance in an org with Communities or a Portal, users are being activated / deactivated constantly, so it’s completely impractical to give Community/Portal users licenses to managed packages — UNLESS you have a tool like what Skuid provides that helps with that.
So between Salesforce’s built-in mass-license-assignment / mass-license-revocation tools, and Skuid’s automated license assignment/revocation tools, you can pretty much do whatever you need to do.
Zach
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.