User Provisioning for
Connected Apps
May 14, 2015
#forcewebinar
Speakers
Vikas Jain
Product Management
Director
@vikasjaintweet
Pat Patterson
Developer Evangelist
Architect
@metadaddy
#forcewebinar
Safe Harbor
Safe harbor statement under the Private Securities Litigation Reform Act of 1995:
This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the
assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we
make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber
growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any
statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services.
The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new
products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in
our Web hosting, breach of our security measures, the outcome of intellectual property and other litigation, risks associated with possible mergers and acquisitions,
the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth,
new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger
enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-
Q for the most recent fiscal quarter ended July 31, 2012. This documents and others containing important disclosures are available on the SEC Filings section of the
Investor Information section of our Web site.
Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered
on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc.
assumes no obligation and does not intend to update these forward-looking statements.
#forcewebinar
Go Social!
Salesforce Developers
+Salesforce Developers
Salesforce Developers
Salesforce Developers The video will be posted to
YouTube & the webinar recap
page (same URL as registration).
This webinar is being recorded!
@salesforcedevs / #forcewebinar
#forcewebinar
▪ Don’t wait until the end to ask your question!
– Technical support will answer questions starting now.
▪ Respect Q&A etiquette
– Please don’t repeat questions. The support team is working
their way down the queue.
▪ Stick around for live Q&A at the end
– Speakers will tackle more questions at the end, time-allowing.
▪ Head to Success Community
– More questions? Visit the Success - Salesforce Identity group
Have Questions?
#forcewebinar
Agenda
1. What is User Provisioning?
2. Benefits
3. Demo
4. How does it work?
5. Standards
#forcewebinar
User Provisioning – Managing the User Lifecycle
Create,
Update, Delete
Users
#forcewebinar
Managing Users in Multiple Salesforce orgs
Create,
Update, Delete
Users
Org1
Org2
Org3
#forcewebinar
Works with Other User Repositories Too
Create, Update,
Delete Users
On Premise
Benefits
#forcewebinar
Benefits for Employee Use Cases
Security
Audit & Compliance
IT Productivity
User
Termination
Who has access
to what?
Automated account
creation & deletion
#forcewebinar
Benefits for Customer and Partner Use Cases
User Onboarding
Keep User Info in
Sync
Self Service
Provision user into
multiple web properties
Update email change
across all apps
Access request
with Approvals
#forcewebinar
Benefits for ISV Use Cases
Faster Setup
SSO User Linking
Package It!
Onboard users and
grant licenses
Setup Federation Identifier
with External UserId
Add User Provisioning
to your package
Demo
How Does It Work?
#forcewebinar
User Provisioning Standard Objects
• Operation
• UserId
• State
• ApprovalStatus
• …
UserProvisioningRequest (UPR)
• UserProvisionin
gRequestId
• Status
• Details
• …
UserProvisioningLog
• SalesforceUserId
• ExternalUserId
• LinkState
• …
UserProvAccount
• SalesforceUserId
• ExternalUserId
• LinkState
• …
UserProvAccountStaging
Temp
object
used
during
collection
User as
listed in 3rd
party
system
Main
Object
Audit &
Debugging
#forcewebinar
Runtime Flow Diagram
Users
Profile
Perm.
Sets
API
Create,
update,
delete
Assign,
unassign
Assign,
unassign
Code
UPR
User
Provisioning
Platform
Flow
Events
Connector
3rd
party
app
* UPR = UserProvisioningRequest
API
Process UPR
#forcewebinar
Create Apex Plugins
Extend UserProvisioningPlugin class
global class GoogleCollectUsersPlugin extends UserProvisioning.UserProvisioningPlugin {
global override Process.PluginDescribeResult buildDescribeCall() {
...
}
global override Process.PluginResult invoke(
Process.PluginRequest request) {
...
}
}
#forcewebinar
Create a Flow of Type User Provisioning Flow
Standards
#forcewebinar
 Simple Cloud Identity Management
 http://www.simplecloud.info/
 SCIM 1.0 released in 2011
 SCIM 1.1 released in 2012
 IETF working on SCIM 2.0
 System for Cross-domain Identity Management
#forcewebinar
SCIM Use Cases
 Provision and de-provision user accounts
 Update attributes on user accounts
 Synchronize accounts across services
 Manage group membership
#forcewebinar
SCIM Basics
 Application-level, REST protocol
 OAuth recommended for authentication/authorization
 Create, modify, retrieve, discover users and groups
 Common user schema
 Extensible
#forcewebinar
SCIM Schema
 Core schema
– name, userName, emails etc
 Enterprise extension
– employeeNumber, department, manager etc
 Salesforce Org extension
– urn:salesforce:schemas:extension:18CHARORGID
– Custom fields
SCIM in Action
#forcewebinar
SCIM Implementations
#forcewebinar
May 21, 2015
Register Now!
https://developer.salesforce.com/events/webinars/Apex_Testing
10 Principles of Apex Testing
Upcoming Webinar
#forcewebinar
Q & A
Vikas Jain
Product Management
Director
@vikasjaintweet
Pat Patterson
Developer Evangelist
Architect
@metadaddy
Thank You

Summer '15: User Provisioning for Connected Apps

  • 1.
  • 2.
  • 3.
    #forcewebinar Safe Harbor Safe harborstatement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of intellectual property and other litigation, risks associated with possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10- Q for the most recent fiscal quarter ended July 31, 2012. This documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site. Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
  • 4.
    #forcewebinar Go Social! Salesforce Developers +SalesforceDevelopers Salesforce Developers Salesforce Developers The video will be posted to YouTube & the webinar recap page (same URL as registration). This webinar is being recorded! @salesforcedevs / #forcewebinar
  • 5.
    #forcewebinar ▪ Don’t waituntil the end to ask your question! – Technical support will answer questions starting now. ▪ Respect Q&A etiquette – Please don’t repeat questions. The support team is working their way down the queue. ▪ Stick around for live Q&A at the end – Speakers will tackle more questions at the end, time-allowing. ▪ Head to Success Community – More questions? Visit the Success - Salesforce Identity group Have Questions?
  • 6.
    #forcewebinar Agenda 1. What isUser Provisioning? 2. Benefits 3. Demo 4. How does it work? 5. Standards
  • 7.
    #forcewebinar User Provisioning –Managing the User Lifecycle Create, Update, Delete Users
  • 8.
    #forcewebinar Managing Users inMultiple Salesforce orgs Create, Update, Delete Users Org1 Org2 Org3
  • 9.
    #forcewebinar Works with OtherUser Repositories Too Create, Update, Delete Users On Premise
  • 10.
  • 11.
    #forcewebinar Benefits for EmployeeUse Cases Security Audit & Compliance IT Productivity User Termination Who has access to what? Automated account creation & deletion
  • 12.
    #forcewebinar Benefits for Customerand Partner Use Cases User Onboarding Keep User Info in Sync Self Service Provision user into multiple web properties Update email change across all apps Access request with Approvals
  • 13.
    #forcewebinar Benefits for ISVUse Cases Faster Setup SSO User Linking Package It! Onboard users and grant licenses Setup Federation Identifier with External UserId Add User Provisioning to your package
  • 14.
  • 15.
  • 16.
    #forcewebinar User Provisioning StandardObjects • Operation • UserId • State • ApprovalStatus • … UserProvisioningRequest (UPR) • UserProvisionin gRequestId • Status • Details • … UserProvisioningLog • SalesforceUserId • ExternalUserId • LinkState • … UserProvAccount • SalesforceUserId • ExternalUserId • LinkState • … UserProvAccountStaging Temp object used during collection User as listed in 3rd party system Main Object Audit & Debugging
  • 17.
  • 18.
    #forcewebinar Create Apex Plugins ExtendUserProvisioningPlugin class global class GoogleCollectUsersPlugin extends UserProvisioning.UserProvisioningPlugin { global override Process.PluginDescribeResult buildDescribeCall() { ... } global override Process.PluginResult invoke( Process.PluginRequest request) { ... } }
  • 19.
    #forcewebinar Create a Flowof Type User Provisioning Flow
  • 20.
  • 21.
    #forcewebinar  Simple CloudIdentity Management  http://www.simplecloud.info/  SCIM 1.0 released in 2011  SCIM 1.1 released in 2012  IETF working on SCIM 2.0  System for Cross-domain Identity Management
  • 22.
    #forcewebinar SCIM Use Cases Provision and de-provision user accounts  Update attributes on user accounts  Synchronize accounts across services  Manage group membership
  • 23.
    #forcewebinar SCIM Basics  Application-level,REST protocol  OAuth recommended for authentication/authorization  Create, modify, retrieve, discover users and groups  Common user schema  Extensible
  • 24.
    #forcewebinar SCIM Schema  Coreschema – name, userName, emails etc  Enterprise extension – employeeNumber, department, manager etc  Salesforce Org extension – urn:salesforce:schemas:extension:18CHARORGID – Custom fields
  • 25.
  • 26.
  • 27.
    #forcewebinar May 21, 2015 RegisterNow! https://developer.salesforce.com/events/webinars/Apex_Testing 10 Principles of Apex Testing Upcoming Webinar
  • 29.
    #forcewebinar Q & A VikasJain Product Management Director @vikasjaintweet Pat Patterson Developer Evangelist Architect @metadaddy
  • 30.