SlideShare ist ein Scribd-Unternehmen logo
1 von 31
INTEGRATION PEER-LED STUDY
GROUP
MEETING 3: APRIL 30, 2018
FACILITATOR: NIKI VANKERK
AGENDA
• Quick round of intros – name/where you are/planned exam date
• Certificates and 2-way SSL (Niki)
• Security/Oauth (Edith)
• State Management Considerations (Susannah)
• Mashups & Canvas (Nadina)
• Choose next topics
INTROS
SSL / CERTIFICATES - Niki
CERTIFICATES AND 2-WAY SSL
• SSL (Secure Socket Layers) and TLS (Transport Layer Security) are protocols that provide
data encryption and authentication between applications and servers in scenarios where that
data is being sent across an insecure network
• SSL and TLS simply refer to the handshake that takes place between a client and a server.
The handshake doesn’t actually do any encryption itself, it just agrees on a shared secret
and type of encryption that is going to be used.
• TLS is the newer version of SSL but often used interchangeably
• Helps avoid Middleman attack or passively listening to communications
1-WAY vs 2-WAY SSL
Mutual Authentication: Read more
CERTIFICATES
• CA-Signed: Certificate Authority signed cert, available for cost from certain authorities that Salesforce recognizes
• Required for any external system coming into Salesforce (target host for outbound messages, delegated
authentication, apex callouts); Salesforce won’t accept self signed certs
• Self-signed: certificate is created in Salesforce and can be used for SSO with SAML (where Salesforce is the
Service Provider instead of the Identity provider) or applications within your network/firewall, or Apex callouts
depending on target
Master Encryption Keys:
- classic Encrypted data
types
- auto assigned when you
create them
- can archive/create new
keys here
- data starts using the new
key once you update/save
data record
API Client Certificate
- Used for outbound
messages, delegated auth,
SAML Assertions
- Apex callouts can select
the certificate to use
- Enforce SSL/TLS Mutual
Auth perm in profile
Expiring Certificate Notices: Help Article
CERTIFICATES - WHAT CREATES THEM
• My Domain: when enabled, Self Signed cert is created by SF to enable as Identity Provider
• Valid for 1 or 2 years (dev org 1yr)
• if not using Idp then no need to renew certificate
• Single Sign On: when configuring this, use Certificate in ‘Request Signing Certificate’ and also can upload the Identity
Provider Certificate with the certificate they issued to you
• Environment Hub: can be enabled for multi org or consulting or ISV partners to manage multiple orgs
• Master/Hub org needs My Domain
enabled
• It becomes the identity provider
for member orgs, allows SSO into
each member org as long as cert
is valid
• Adding a member org creates a new
Self signed certificate in that member
org, named after master org
• Creates a Service Provider listing in the
master org’s Identity Provider page
where Identity Provider is using the
valid certificate
SECURITY - Edith
SECURITY - Inbound connections
• Client applications are treated as users
• Standard Salesforce security mechanisms apply
• Authentication
• Restrict network and session security
• Data security
• Transport layer security (TLS protocol, https)
User authentication
• Username / password: login page, OAuth (username-password flow), API
• Single sign-on
• Additional criterion: security token, two-factor authentication
• Access to resources
• Profiles
• Permissions needed: API Enabled, API Only user, password never expires
Oauth (1)
• Open protocol, authorization
• Allows a user to authorize one site to access another site on behalf of the user
• APIs can use Oauth 2.0 to authorize access to Salesforce resources
• Advantages
• HTTP based
• Interfaces already exist
• Works great for mobile
• Reduces security and management issues
Oauth (2)
• Tokens: Authorization code, access
token (session ID), refresh token, ID
token
• Authentication flows: Web server
(code grant type), user-agent (implicit
grant type), JWT Bearer token,
Device authentication, Asset toke,
SAML Bearer Assertion, SAML
Assertion, Username and password
Setup OAuth
• Connected App
• Consumer key and consumer secret
• Security controls
• OAuth scope controls
• Policies user reconnects
• SAML service provider settings
STATE MANAGEMENT - Susannah
STATE MANAGEMENT:
Request and Reply
When integrating systems using request and reply, keys are important for ongoing state
tracking.
There are two options:
● Salesforce stores the remote system’s primary or unique surrogate key for the remote
record.
● The remote system stores the Salesforce unique record ID or some other unique surrogate
key.
How you handle the integration keys depends on which system contains the master record
A program is described as stateful if it is
designed to remember preceding events or
user interactions; the remembered information
is called the state of the system.
STATE MANAGEMENT:
Fire and Forget
The following table lists considerations for state management in the fire and forget pattern.
A program is described as stateful if it is
designed to remember preceding events or
user interactions; the remembered information
is called the state of the system.
STATE MANAGEMENT:
Remote Call-In
Similar to request/reply, keys are important for ongoing state tracking in the remote call-in
pattern.
For example, if a record gets created in the remote system, in order to support ongoing updates
to that record. There are two options:
● Salesforce stores the remote system’s primary or unique surrogate key for the remote
record.
● The remote system stores the Salesforce unique record ID or some other unique
surrogate key.
There are specific considerations for handling integration keys in this synchronous
pattern.
A program is described as stateful if it is
designed to remember preceding events or
user interactions; the remembered information
is called the state of the system.
STATE MANAGEMENT:
Batch Data Synchronization
You can implement state management by using surrogate keys between the two systems. If you need any type of
transaction management across Salesforce entities, we recommend that you use the Remote Call-In pattern using Apex.
Standard optimistic record locking occurs on the platform, and any updates made using the API require the user, who is
editing the record, to refresh the record and initiate their transaction. In the context of the Salesforce API, optimistic locking
refers to a process where:
● Salesforce doesn’t maintain the state of a record being edited by a specific user.
● Upon read, it records the time when the data was extracted.
● If the user updates the record and saves it, Salesforce checks to see if another user has updated the record in the
interim.
● If the record has been updated, the system notifies the user that an update was made and the user should retrieve
the latest version of the record before proceeding with their updates.
A program is described as stateful if it is
designed to remember preceding events or
user interactions; the remembered information
is called the state of the system.
MASHUPS / CANVAS - Nadina
Mashups
● Definition
○ A web page or application that seamlessly combines data or functionality from two or more different
sources(systems) on a User Interface Level to create a new service.
● Two Forms: Links and iFrame
● Benefits
○ Low Cost
○ Reusability
● Caveats
○ External Mashups may impose api call limitations
○ Terms of use may limit from a data security standpoint
○ Stability in the API being utilized.
Mashups: Link Summary
• Used to take users to external Systems
• Implemented in Salesforce via
• Buttons (standard or Custom)
• Custom Links
• Formula fields using Hyperlink/Image
• Visualforce tag
• Asynchronous Solutions
Mashups: iFrame Summary
• Markup of external systems brought into Salesforce
• Implemented in Salesforce via
• Web tab
• Visualforce iFrame tag
• Synchronous Solutions- user has to wait until the content is loaded
Canvas/Canvas App
● Definition
○ A framework for making external Web Applications accessible to selected users from within Salesforce.
● Uses
○ Within the Chatter tab
○ On a visualforce page
○ As a publisher action
○ In a Salesforce Console
○ In a page layout for a standard or custom object
○ As a feed item
○ Within Salesforce 1 as a navigation item
● Application access is controlled by Administrator
■ Signed request or OAuth policy
■ Permission sets
■ Session Level Security
Canvas- Same Origin policy
Definition:
● A Web standard practiced
to protect end user’s data
● Allows applications from
the same domain to
interact and exchange
data
Canvas Signed Request or OAuth
Canvas & Security
Resources
● Expiring Certificate Notices: Help Article
● Mutual Authentication: Read more
● Mashups:The What and Why
● Mashups and Visualforce
● Force.com Canvas
BRAINSTORM
TOPICS
MORE RESOURCES
• Integration Exam Resource Guide
• Integration Patterns Guide
• Trailmix for Integration Exam here
THANK YOU FOR COMING!
• Join our Trailblazer Community group – don’t forget to fill out your personal profile!
• Post your exam successes into the group
• If you tweet, use #LadiesBeArchitects
• Get Involved –
• Run a study group for us
• Speak at one of our Inspire meet-ups
• Blog / talk about us

Weitere ähnliche Inhalte

Was ist angesagt?

Salesforce Integration
Salesforce IntegrationSalesforce Integration
Salesforce IntegrationJoshua Hoskins
 
Salesforce Streaming event - PushTopic and Generic Events
Salesforce Streaming event - PushTopic and Generic EventsSalesforce Streaming event - PushTopic and Generic Events
Salesforce Streaming event - PushTopic and Generic EventsDhanik Sahni
 
OAuth with Salesforce - Demystified
OAuth with Salesforce - DemystifiedOAuth with Salesforce - Demystified
OAuth with Salesforce - DemystifiedCalvin Noronha
 
Salesforce Identity Management
Salesforce Identity ManagementSalesforce Identity Management
Salesforce Identity ManagementJayant Jindal
 
Salesforce admin training 1
Salesforce admin training 1Salesforce admin training 1
Salesforce admin training 1HungPham381
 
Customer engagement solution architecture and Dynamics 365 Portals
Customer engagement solution architecture and Dynamics 365 PortalsCustomer engagement solution architecture and Dynamics 365 Portals
Customer engagement solution architecture and Dynamics 365 PortalsDigital Illustrated
 
Azure Logic Apps
Azure Logic AppsAzure Logic Apps
Azure Logic AppsBizTalk360
 
Introduction to the Salesforce Security Model
Introduction to the Salesforce Security ModelIntroduction to the Salesforce Security Model
Introduction to the Salesforce Security ModelSalesforce Developers
 
Profiles and permission sets in salesforce
Profiles and permission sets in salesforceProfiles and permission sets in salesforce
Profiles and permission sets in salesforceSunil kumar
 
Integrating with salesforce using platform events
Integrating with salesforce using platform eventsIntegrating with salesforce using platform events
Integrating with salesforce using platform eventsAmit Chaudhary
 
Planning Your Migration to the Lightning Experience
Planning Your Migration to the Lightning ExperiencePlanning Your Migration to the Lightning Experience
Planning Your Migration to the Lightning ExperienceShell Black
 
Salesforce Integration Pattern Overview
Salesforce Integration Pattern OverviewSalesforce Integration Pattern Overview
Salesforce Integration Pattern OverviewDhanik Sahni
 
モダンなイベント駆動型システム連携を学ぼう〜Platform Events 入門
モダンなイベント駆動型システム連携を学ぼう〜Platform Events 入門モダンなイベント駆動型システム連携を学ぼう〜Platform Events 入門
モダンなイベント駆動型システム連携を学ぼう〜Platform Events 入門Salesforce Developers Japan
 
データ連携の新しいカタチ - 変更データキャプチャ/プラットフォームイベントを MuleSoft Anypoint Platform と組み合わせて試してみよう
データ連携の新しいカタチ - 変更データキャプチャ/プラットフォームイベントを MuleSoft Anypoint Platform と組み合わせて試してみようデータ連携の新しいカタチ - 変更データキャプチャ/プラットフォームイベントを MuleSoft Anypoint Platform と組み合わせて試してみよう
データ連携の新しいカタチ - 変更データキャプチャ/プラットフォームイベントを MuleSoft Anypoint Platform と組み合わせて試してみようSalesforce Developers Japan
 
Salesforce Tutorial for Beginners: Basic Salesforce Introduction
Salesforce Tutorial for Beginners: Basic Salesforce IntroductionSalesforce Tutorial for Beginners: Basic Salesforce Introduction
Salesforce Tutorial for Beginners: Basic Salesforce IntroductionHabilelabs
 
Secure Salesforce: External App Integrations
Secure Salesforce: External App IntegrationsSecure Salesforce: External App Integrations
Secure Salesforce: External App IntegrationsSalesforce Developers
 
Classic vs. lightning
Classic vs. lightningClassic vs. lightning
Classic vs. lightningGaurav Kumar
 
Integrating with salesforce
Integrating with salesforceIntegrating with salesforce
Integrating with salesforceMark Adcock
 
Overview of API Management Architectures
Overview of API Management ArchitecturesOverview of API Management Architectures
Overview of API Management ArchitecturesNordic APIs
 
Salesforce Security Best Practices for Every Admin
Salesforce Security Best Practices for Every AdminSalesforce Security Best Practices for Every Admin
Salesforce Security Best Practices for Every AdminCloud Analogy
 

Was ist angesagt? (20)

Salesforce Integration
Salesforce IntegrationSalesforce Integration
Salesforce Integration
 
Salesforce Streaming event - PushTopic and Generic Events
Salesforce Streaming event - PushTopic and Generic EventsSalesforce Streaming event - PushTopic and Generic Events
Salesforce Streaming event - PushTopic and Generic Events
 
OAuth with Salesforce - Demystified
OAuth with Salesforce - DemystifiedOAuth with Salesforce - Demystified
OAuth with Salesforce - Demystified
 
Salesforce Identity Management
Salesforce Identity ManagementSalesforce Identity Management
Salesforce Identity Management
 
Salesforce admin training 1
Salesforce admin training 1Salesforce admin training 1
Salesforce admin training 1
 
Customer engagement solution architecture and Dynamics 365 Portals
Customer engagement solution architecture and Dynamics 365 PortalsCustomer engagement solution architecture and Dynamics 365 Portals
Customer engagement solution architecture and Dynamics 365 Portals
 
Azure Logic Apps
Azure Logic AppsAzure Logic Apps
Azure Logic Apps
 
Introduction to the Salesforce Security Model
Introduction to the Salesforce Security ModelIntroduction to the Salesforce Security Model
Introduction to the Salesforce Security Model
 
Profiles and permission sets in salesforce
Profiles and permission sets in salesforceProfiles and permission sets in salesforce
Profiles and permission sets in salesforce
 
Integrating with salesforce using platform events
Integrating with salesforce using platform eventsIntegrating with salesforce using platform events
Integrating with salesforce using platform events
 
Planning Your Migration to the Lightning Experience
Planning Your Migration to the Lightning ExperiencePlanning Your Migration to the Lightning Experience
Planning Your Migration to the Lightning Experience
 
Salesforce Integration Pattern Overview
Salesforce Integration Pattern OverviewSalesforce Integration Pattern Overview
Salesforce Integration Pattern Overview
 
モダンなイベント駆動型システム連携を学ぼう〜Platform Events 入門
モダンなイベント駆動型システム連携を学ぼう〜Platform Events 入門モダンなイベント駆動型システム連携を学ぼう〜Platform Events 入門
モダンなイベント駆動型システム連携を学ぼう〜Platform Events 入門
 
データ連携の新しいカタチ - 変更データキャプチャ/プラットフォームイベントを MuleSoft Anypoint Platform と組み合わせて試してみよう
データ連携の新しいカタチ - 変更データキャプチャ/プラットフォームイベントを MuleSoft Anypoint Platform と組み合わせて試してみようデータ連携の新しいカタチ - 変更データキャプチャ/プラットフォームイベントを MuleSoft Anypoint Platform と組み合わせて試してみよう
データ連携の新しいカタチ - 変更データキャプチャ/プラットフォームイベントを MuleSoft Anypoint Platform と組み合わせて試してみよう
 
Salesforce Tutorial for Beginners: Basic Salesforce Introduction
Salesforce Tutorial for Beginners: Basic Salesforce IntroductionSalesforce Tutorial for Beginners: Basic Salesforce Introduction
Salesforce Tutorial for Beginners: Basic Salesforce Introduction
 
Secure Salesforce: External App Integrations
Secure Salesforce: External App IntegrationsSecure Salesforce: External App Integrations
Secure Salesforce: External App Integrations
 
Classic vs. lightning
Classic vs. lightningClassic vs. lightning
Classic vs. lightning
 
Integrating with salesforce
Integrating with salesforceIntegrating with salesforce
Integrating with salesforce
 
Overview of API Management Architectures
Overview of API Management ArchitecturesOverview of API Management Architectures
Overview of API Management Architectures
 
Salesforce Security Best Practices for Every Admin
Salesforce Security Best Practices for Every AdminSalesforce Security Best Practices for Every Admin
Salesforce Security Best Practices for Every Admin
 

Ähnlich wie Integration Peer-Led Study Group Meeting 3: April 30, 2018

Secure Development on the Salesforce Platform - Part 3
Secure Development on the Salesforce Platform - Part 3Secure Development on the Salesforce Platform - Part 3
Secure Development on the Salesforce Platform - Part 3Mark Adcock
 
Introduccion a la seguridad Windows 7
Introduccion a la seguridad Windows 7Introduccion a la seguridad Windows 7
Introduccion a la seguridad Windows 7EAE
 
Cache Security- Adding Security to Non-Secure Applications
Cache Security- Adding Security to Non-Secure ApplicationsCache Security- Adding Security to Non-Secure Applications
Cache Security- Adding Security to Non-Secure ApplicationsInterSystems Corporation
 
Ladies Be Architects - Study Group III: OAuth 2.0 (Ep 1)
Ladies Be Architects - Study Group III: OAuth 2.0 (Ep 1)Ladies Be Architects - Study Group III: OAuth 2.0 (Ep 1)
Ladies Be Architects - Study Group III: OAuth 2.0 (Ep 1)gemziebeth
 
Implementing Microservices Security Patterns & Protocols with Spring
Implementing Microservices Security Patterns & Protocols with SpringImplementing Microservices Security Patterns & Protocols with Spring
Implementing Microservices Security Patterns & Protocols with SpringVMware Tanzu
 
BeyondCorp and Zero Trust
BeyondCorp and Zero TrustBeyondCorp and Zero Trust
BeyondCorp and Zero TrustIvan Dwyer
 
Security concerns in web erp
Security concerns in web erpSecurity concerns in web erp
Security concerns in web erpManoj Jhawar
 
Choosing the Best Business Intelligence Security Model for Your App
Choosing the Best Business Intelligence Security Model for Your AppChoosing the Best Business Intelligence Security Model for Your App
Choosing the Best Business Intelligence Security Model for Your AppLogi Analytics
 
Information Security Whitepaper
Information Security WhitepaperInformation Security Whitepaper
Information Security Whitepaperrun_frictionless
 
11 palo alto user-id concepts
11 palo alto user-id concepts11 palo alto user-id concepts
11 palo alto user-id conceptsMostafa El Lathy
 
SSO IN/With Drupal and Identitiy Management
SSO IN/With Drupal and Identitiy ManagementSSO IN/With Drupal and Identitiy Management
SSO IN/With Drupal and Identitiy ManagementManish Harsh
 
Microsoft Sync Framework (part 2) ABTO Software Lecture Garntsarik
Microsoft Sync Framework (part 2) ABTO Software Lecture GarntsarikMicrosoft Sync Framework (part 2) ABTO Software Lecture Garntsarik
Microsoft Sync Framework (part 2) ABTO Software Lecture GarntsarikABTO Software
 
(SEC310) Keeping Developers and Auditors Happy in the Cloud
(SEC310) Keeping Developers and Auditors Happy in the Cloud(SEC310) Keeping Developers and Auditors Happy in the Cloud
(SEC310) Keeping Developers and Auditors Happy in the CloudAmazon Web Services
 
Security asp.net application
Security asp.net applicationSecurity asp.net application
Security asp.net applicationZAIYAUL HAQUE
 

Ähnlich wie Integration Peer-Led Study Group Meeting 3: April 30, 2018 (20)

Secure Development on the Salesforce Platform - Part 3
Secure Development on the Salesforce Platform - Part 3Secure Development on the Salesforce Platform - Part 3
Secure Development on the Salesforce Platform - Part 3
 
Introduccion a la seguridad Windows 7
Introduccion a la seguridad Windows 7Introduccion a la seguridad Windows 7
Introduccion a la seguridad Windows 7
 
Avanan Platform.pdf
Avanan Platform.pdfAvanan Platform.pdf
Avanan Platform.pdf
 
Cache Security- Adding Security to Non-Secure Applications
Cache Security- Adding Security to Non-Secure ApplicationsCache Security- Adding Security to Non-Secure Applications
Cache Security- Adding Security to Non-Secure Applications
 
OWASP Top 10 Proactive Control 2016 (C5-C10)
OWASP Top 10 Proactive Control 2016 (C5-C10)OWASP Top 10 Proactive Control 2016 (C5-C10)
OWASP Top 10 Proactive Control 2016 (C5-C10)
 
Ladies Be Architects - Study Group III: OAuth 2.0 (Ep 1)
Ladies Be Architects - Study Group III: OAuth 2.0 (Ep 1)Ladies Be Architects - Study Group III: OAuth 2.0 (Ep 1)
Ladies Be Architects - Study Group III: OAuth 2.0 (Ep 1)
 
Cloud Identity Management
Cloud Identity ManagementCloud Identity Management
Cloud Identity Management
 
presentation_finals
presentation_finalspresentation_finals
presentation_finals
 
Implementing Microservices Security Patterns & Protocols with Spring
Implementing Microservices Security Patterns & Protocols with SpringImplementing Microservices Security Patterns & Protocols with Spring
Implementing Microservices Security Patterns & Protocols with Spring
 
BeyondCorp and Zero Trust
BeyondCorp and Zero TrustBeyondCorp and Zero Trust
BeyondCorp and Zero Trust
 
Security concerns in web erp
Security concerns in web erpSecurity concerns in web erp
Security concerns in web erp
 
Choosing the Best Business Intelligence Security Model for Your App
Choosing the Best Business Intelligence Security Model for Your AppChoosing the Best Business Intelligence Security Model for Your App
Choosing the Best Business Intelligence Security Model for Your App
 
Information Security Whitepaper
Information Security WhitepaperInformation Security Whitepaper
Information Security Whitepaper
 
11 palo alto user-id concepts
11 palo alto user-id concepts11 palo alto user-id concepts
11 palo alto user-id concepts
 
SSO IN/With Drupal and Identitiy Management
SSO IN/With Drupal and Identitiy ManagementSSO IN/With Drupal and Identitiy Management
SSO IN/With Drupal and Identitiy Management
 
Microsoft Sync Framework (part 2) ABTO Software Lecture Garntsarik
Microsoft Sync Framework (part 2) ABTO Software Lecture GarntsarikMicrosoft Sync Framework (part 2) ABTO Software Lecture Garntsarik
Microsoft Sync Framework (part 2) ABTO Software Lecture Garntsarik
 
Null talk
Null talkNull talk
Null talk
 
(SEC310) Keeping Developers and Auditors Happy in the Cloud
(SEC310) Keeping Developers and Auditors Happy in the Cloud(SEC310) Keeping Developers and Auditors Happy in the Cloud
(SEC310) Keeping Developers and Auditors Happy in the Cloud
 
Tableau Security Model.pptx
Tableau Security Model.pptxTableau Security Model.pptx
Tableau Security Model.pptx
 
Security asp.net application
Security asp.net applicationSecurity asp.net application
Security asp.net application
 

Mehr von gemziebeth

Salesforce Backup, Restore & Archiving- Adam Best, Senior Program Architect
Salesforce Backup, Restore & Archiving- Adam Best, Senior Program ArchitectSalesforce Backup, Restore & Archiving- Adam Best, Senior Program Architect
Salesforce Backup, Restore & Archiving- Adam Best, Senior Program Architectgemziebeth
 
Mobile Strategy with Charly Aug 2018
Mobile Strategy with Charly Aug 2018Mobile Strategy with Charly Aug 2018
Mobile Strategy with Charly Aug 2018gemziebeth
 
Universal digital - Vedran's slides for mock review board
Universal digital - Vedran's slides for mock review boardUniversal digital - Vedran's slides for mock review board
Universal digital - Vedran's slides for mock review boardgemziebeth
 
Ladies Be Architects - Salesforce Community Cloud Security
Ladies Be Architects - Salesforce Community Cloud SecurityLadies Be Architects - Salesforce Community Cloud Security
Ladies Be Architects - Salesforce Community Cloud Securitygemziebeth
 
Ladies Be Architects - Apex Basics
Ladies Be Architects - Apex BasicsLadies Be Architects - Apex Basics
Ladies Be Architects - Apex Basicsgemziebeth
 
Equality - Salesforce Certified Technical Architect
Equality - Salesforce Certified Technical ArchitectEquality - Salesforce Certified Technical Architect
Equality - Salesforce Certified Technical Architectgemziebeth
 
Ladies Be Architects - Integration - Multi-Org, Security, JSON, Backup & Restore
Ladies Be Architects - Integration - Multi-Org, Security, JSON, Backup & RestoreLadies Be Architects - Integration - Multi-Org, Security, JSON, Backup & Restore
Ladies Be Architects - Integration - Multi-Org, Security, JSON, Backup & Restoregemziebeth
 
Ladies Be Architects: Study Group IV: Project and System Governance
Ladies Be Architects: Study Group IV: Project and System GovernanceLadies Be Architects: Study Group IV: Project and System Governance
Ladies Be Architects: Study Group IV: Project and System Governancegemziebeth
 
Ladies Be Architects: Integration Study Group: Kick Off Slides
Ladies Be Architects: Integration Study Group: Kick Off SlidesLadies Be Architects: Integration Study Group: Kick Off Slides
Ladies Be Architects: Integration Study Group: Kick Off Slidesgemziebeth
 
Integration study group 2: Patterns
Integration study group 2: PatternsIntegration study group 2: Patterns
Integration study group 2: Patternsgemziebeth
 
Certifiably Insane: The Inspiration Behind 14 Certs in 5 months
Certifiably Insane: The Inspiration Behind 14 Certs in 5 monthsCertifiably Insane: The Inspiration Behind 14 Certs in 5 months
Certifiably Insane: The Inspiration Behind 14 Certs in 5 monthsgemziebeth
 
Ladies Be Architects - Study Group II: Data Governance
Ladies Be Architects - Study Group II: Data GovernanceLadies Be Architects - Study Group II: Data Governance
Ladies Be Architects - Study Group II: Data Governancegemziebeth
 

Mehr von gemziebeth (12)

Salesforce Backup, Restore & Archiving- Adam Best, Senior Program Architect
Salesforce Backup, Restore & Archiving- Adam Best, Senior Program ArchitectSalesforce Backup, Restore & Archiving- Adam Best, Senior Program Architect
Salesforce Backup, Restore & Archiving- Adam Best, Senior Program Architect
 
Mobile Strategy with Charly Aug 2018
Mobile Strategy with Charly Aug 2018Mobile Strategy with Charly Aug 2018
Mobile Strategy with Charly Aug 2018
 
Universal digital - Vedran's slides for mock review board
Universal digital - Vedran's slides for mock review boardUniversal digital - Vedran's slides for mock review board
Universal digital - Vedran's slides for mock review board
 
Ladies Be Architects - Salesforce Community Cloud Security
Ladies Be Architects - Salesforce Community Cloud SecurityLadies Be Architects - Salesforce Community Cloud Security
Ladies Be Architects - Salesforce Community Cloud Security
 
Ladies Be Architects - Apex Basics
Ladies Be Architects - Apex BasicsLadies Be Architects - Apex Basics
Ladies Be Architects - Apex Basics
 
Equality - Salesforce Certified Technical Architect
Equality - Salesforce Certified Technical ArchitectEquality - Salesforce Certified Technical Architect
Equality - Salesforce Certified Technical Architect
 
Ladies Be Architects - Integration - Multi-Org, Security, JSON, Backup & Restore
Ladies Be Architects - Integration - Multi-Org, Security, JSON, Backup & RestoreLadies Be Architects - Integration - Multi-Org, Security, JSON, Backup & Restore
Ladies Be Architects - Integration - Multi-Org, Security, JSON, Backup & Restore
 
Ladies Be Architects: Study Group IV: Project and System Governance
Ladies Be Architects: Study Group IV: Project and System GovernanceLadies Be Architects: Study Group IV: Project and System Governance
Ladies Be Architects: Study Group IV: Project and System Governance
 
Ladies Be Architects: Integration Study Group: Kick Off Slides
Ladies Be Architects: Integration Study Group: Kick Off SlidesLadies Be Architects: Integration Study Group: Kick Off Slides
Ladies Be Architects: Integration Study Group: Kick Off Slides
 
Integration study group 2: Patterns
Integration study group 2: PatternsIntegration study group 2: Patterns
Integration study group 2: Patterns
 
Certifiably Insane: The Inspiration Behind 14 Certs in 5 months
Certifiably Insane: The Inspiration Behind 14 Certs in 5 monthsCertifiably Insane: The Inspiration Behind 14 Certs in 5 months
Certifiably Insane: The Inspiration Behind 14 Certs in 5 months
 
Ladies Be Architects - Study Group II: Data Governance
Ladies Be Architects - Study Group II: Data GovernanceLadies Be Architects - Study Group II: Data Governance
Ladies Be Architects - Study Group II: Data Governance
 

Kürzlich hochgeladen

How to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 DatabaseHow to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 DatabaseCeline George
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptxmary850239
 
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...Nguyen Thanh Tu Collection
 
Mental Health Awareness - a toolkit for supporting young minds
Mental Health Awareness - a toolkit for supporting young mindsMental Health Awareness - a toolkit for supporting young minds
Mental Health Awareness - a toolkit for supporting young mindsPooky Knightsmith
 
Using Grammatical Signals Suitable to Patterns of Idea Development
Using Grammatical Signals Suitable to Patterns of Idea DevelopmentUsing Grammatical Signals Suitable to Patterns of Idea Development
Using Grammatical Signals Suitable to Patterns of Idea Developmentchesterberbo7
 
ROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxVanesaIglesias10
 
Multi Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP ModuleMulti Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP ModuleCeline George
 
Active Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfActive Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfPatidar M
 
Mythology Quiz-4th April 2024, Quiz Club NITW
Mythology Quiz-4th April 2024, Quiz Club NITWMythology Quiz-4th April 2024, Quiz Club NITW
Mythology Quiz-4th April 2024, Quiz Club NITWQuiz Club NITW
 
Scientific Writing :Research Discourse
Scientific  Writing :Research  DiscourseScientific  Writing :Research  Discourse
Scientific Writing :Research DiscourseAnita GoswamiGiri
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSMae Pangan
 
Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfPrerana Jadhav
 
week 1 cookery 8 fourth - quarter .pptx
week 1 cookery 8  fourth  -  quarter .pptxweek 1 cookery 8  fourth  -  quarter .pptx
week 1 cookery 8 fourth - quarter .pptxJonalynLegaspi2
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxDhatriParmar
 
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
Unraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptxUnraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptx
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptxDhatriParmar
 
Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1GloryAnnCastre1
 
4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptx4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptxmary850239
 
Q-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITWQ-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITWQuiz Club NITW
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfVanessa Camilleri
 

Kürzlich hochgeladen (20)

How to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 DatabaseHow to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 Database
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx
 
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
 
Mental Health Awareness - a toolkit for supporting young minds
Mental Health Awareness - a toolkit for supporting young mindsMental Health Awareness - a toolkit for supporting young minds
Mental Health Awareness - a toolkit for supporting young minds
 
Using Grammatical Signals Suitable to Patterns of Idea Development
Using Grammatical Signals Suitable to Patterns of Idea DevelopmentUsing Grammatical Signals Suitable to Patterns of Idea Development
Using Grammatical Signals Suitable to Patterns of Idea Development
 
ROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptx
 
Multi Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP ModuleMulti Domain Alias In the Odoo 17 ERP Module
Multi Domain Alias In the Odoo 17 ERP Module
 
prashanth updated resume 2024 for Teaching Profession
prashanth updated resume 2024 for Teaching Professionprashanth updated resume 2024 for Teaching Profession
prashanth updated resume 2024 for Teaching Profession
 
Active Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfActive Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdf
 
Mythology Quiz-4th April 2024, Quiz Club NITW
Mythology Quiz-4th April 2024, Quiz Club NITWMythology Quiz-4th April 2024, Quiz Club NITW
Mythology Quiz-4th April 2024, Quiz Club NITW
 
Scientific Writing :Research Discourse
Scientific  Writing :Research  DiscourseScientific  Writing :Research  Discourse
Scientific Writing :Research Discourse
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHS
 
Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdf
 
week 1 cookery 8 fourth - quarter .pptx
week 1 cookery 8  fourth  -  quarter .pptxweek 1 cookery 8  fourth  -  quarter .pptx
week 1 cookery 8 fourth - quarter .pptx
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
 
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
Unraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptxUnraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptx
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
 
Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1
 
4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptx4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptx
 
Q-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITWQ-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITW
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdf
 

Integration Peer-Led Study Group Meeting 3: April 30, 2018

  • 1. INTEGRATION PEER-LED STUDY GROUP MEETING 3: APRIL 30, 2018 FACILITATOR: NIKI VANKERK
  • 2. AGENDA • Quick round of intros – name/where you are/planned exam date • Certificates and 2-way SSL (Niki) • Security/Oauth (Edith) • State Management Considerations (Susannah) • Mashups & Canvas (Nadina) • Choose next topics
  • 5. CERTIFICATES AND 2-WAY SSL • SSL (Secure Socket Layers) and TLS (Transport Layer Security) are protocols that provide data encryption and authentication between applications and servers in scenarios where that data is being sent across an insecure network • SSL and TLS simply refer to the handshake that takes place between a client and a server. The handshake doesn’t actually do any encryption itself, it just agrees on a shared secret and type of encryption that is going to be used. • TLS is the newer version of SSL but often used interchangeably • Helps avoid Middleman attack or passively listening to communications
  • 6. 1-WAY vs 2-WAY SSL Mutual Authentication: Read more
  • 7. CERTIFICATES • CA-Signed: Certificate Authority signed cert, available for cost from certain authorities that Salesforce recognizes • Required for any external system coming into Salesforce (target host for outbound messages, delegated authentication, apex callouts); Salesforce won’t accept self signed certs • Self-signed: certificate is created in Salesforce and can be used for SSO with SAML (where Salesforce is the Service Provider instead of the Identity provider) or applications within your network/firewall, or Apex callouts depending on target Master Encryption Keys: - classic Encrypted data types - auto assigned when you create them - can archive/create new keys here - data starts using the new key once you update/save data record API Client Certificate - Used for outbound messages, delegated auth, SAML Assertions - Apex callouts can select the certificate to use - Enforce SSL/TLS Mutual Auth perm in profile Expiring Certificate Notices: Help Article
  • 8. CERTIFICATES - WHAT CREATES THEM • My Domain: when enabled, Self Signed cert is created by SF to enable as Identity Provider • Valid for 1 or 2 years (dev org 1yr) • if not using Idp then no need to renew certificate • Single Sign On: when configuring this, use Certificate in ‘Request Signing Certificate’ and also can upload the Identity Provider Certificate with the certificate they issued to you • Environment Hub: can be enabled for multi org or consulting or ISV partners to manage multiple orgs • Master/Hub org needs My Domain enabled • It becomes the identity provider for member orgs, allows SSO into each member org as long as cert is valid • Adding a member org creates a new Self signed certificate in that member org, named after master org • Creates a Service Provider listing in the master org’s Identity Provider page where Identity Provider is using the valid certificate
  • 10. SECURITY - Inbound connections • Client applications are treated as users • Standard Salesforce security mechanisms apply • Authentication • Restrict network and session security • Data security • Transport layer security (TLS protocol, https)
  • 11. User authentication • Username / password: login page, OAuth (username-password flow), API • Single sign-on • Additional criterion: security token, two-factor authentication • Access to resources • Profiles • Permissions needed: API Enabled, API Only user, password never expires
  • 12. Oauth (1) • Open protocol, authorization • Allows a user to authorize one site to access another site on behalf of the user • APIs can use Oauth 2.0 to authorize access to Salesforce resources • Advantages • HTTP based • Interfaces already exist • Works great for mobile • Reduces security and management issues
  • 13. Oauth (2) • Tokens: Authorization code, access token (session ID), refresh token, ID token • Authentication flows: Web server (code grant type), user-agent (implicit grant type), JWT Bearer token, Device authentication, Asset toke, SAML Bearer Assertion, SAML Assertion, Username and password
  • 14. Setup OAuth • Connected App • Consumer key and consumer secret • Security controls • OAuth scope controls • Policies user reconnects • SAML service provider settings
  • 15. STATE MANAGEMENT - Susannah
  • 16. STATE MANAGEMENT: Request and Reply When integrating systems using request and reply, keys are important for ongoing state tracking. There are two options: ● Salesforce stores the remote system’s primary or unique surrogate key for the remote record. ● The remote system stores the Salesforce unique record ID or some other unique surrogate key. How you handle the integration keys depends on which system contains the master record A program is described as stateful if it is designed to remember preceding events or user interactions; the remembered information is called the state of the system.
  • 17. STATE MANAGEMENT: Fire and Forget The following table lists considerations for state management in the fire and forget pattern. A program is described as stateful if it is designed to remember preceding events or user interactions; the remembered information is called the state of the system.
  • 18. STATE MANAGEMENT: Remote Call-In Similar to request/reply, keys are important for ongoing state tracking in the remote call-in pattern. For example, if a record gets created in the remote system, in order to support ongoing updates to that record. There are two options: ● Salesforce stores the remote system’s primary or unique surrogate key for the remote record. ● The remote system stores the Salesforce unique record ID or some other unique surrogate key. There are specific considerations for handling integration keys in this synchronous pattern. A program is described as stateful if it is designed to remember preceding events or user interactions; the remembered information is called the state of the system.
  • 19. STATE MANAGEMENT: Batch Data Synchronization You can implement state management by using surrogate keys between the two systems. If you need any type of transaction management across Salesforce entities, we recommend that you use the Remote Call-In pattern using Apex. Standard optimistic record locking occurs on the platform, and any updates made using the API require the user, who is editing the record, to refresh the record and initiate their transaction. In the context of the Salesforce API, optimistic locking refers to a process where: ● Salesforce doesn’t maintain the state of a record being edited by a specific user. ● Upon read, it records the time when the data was extracted. ● If the user updates the record and saves it, Salesforce checks to see if another user has updated the record in the interim. ● If the record has been updated, the system notifies the user that an update was made and the user should retrieve the latest version of the record before proceeding with their updates. A program is described as stateful if it is designed to remember preceding events or user interactions; the remembered information is called the state of the system.
  • 20. MASHUPS / CANVAS - Nadina
  • 21. Mashups ● Definition ○ A web page or application that seamlessly combines data or functionality from two or more different sources(systems) on a User Interface Level to create a new service. ● Two Forms: Links and iFrame ● Benefits ○ Low Cost ○ Reusability ● Caveats ○ External Mashups may impose api call limitations ○ Terms of use may limit from a data security standpoint ○ Stability in the API being utilized.
  • 22. Mashups: Link Summary • Used to take users to external Systems • Implemented in Salesforce via • Buttons (standard or Custom) • Custom Links • Formula fields using Hyperlink/Image • Visualforce tag • Asynchronous Solutions
  • 23. Mashups: iFrame Summary • Markup of external systems brought into Salesforce • Implemented in Salesforce via • Web tab • Visualforce iFrame tag • Synchronous Solutions- user has to wait until the content is loaded
  • 24. Canvas/Canvas App ● Definition ○ A framework for making external Web Applications accessible to selected users from within Salesforce. ● Uses ○ Within the Chatter tab ○ On a visualforce page ○ As a publisher action ○ In a Salesforce Console ○ In a page layout for a standard or custom object ○ As a feed item ○ Within Salesforce 1 as a navigation item ● Application access is controlled by Administrator ■ Signed request or OAuth policy ■ Permission sets ■ Session Level Security
  • 25. Canvas- Same Origin policy Definition: ● A Web standard practiced to protect end user’s data ● Allows applications from the same domain to interact and exchange data
  • 28. Resources ● Expiring Certificate Notices: Help Article ● Mutual Authentication: Read more ● Mashups:The What and Why ● Mashups and Visualforce ● Force.com Canvas
  • 30. MORE RESOURCES • Integration Exam Resource Guide • Integration Patterns Guide • Trailmix for Integration Exam here
  • 31. THANK YOU FOR COMING! • Join our Trailblazer Community group – don’t forget to fill out your personal profile! • Post your exam successes into the group • If you tweet, use #LadiesBeArchitects • Get Involved – • Run a study group for us • Speak at one of our Inspire meet-ups • Blog / talk about us