Nerd @ Work

When Salesforce is life!

Working with SSO in Salesforce

This contributed articole if written by Gilad David Maayan is a technology writer who has worked with over 150 technology companies including SAP, Imperva, Samsung NEXT, NetApp and Check Point, producing technical and thought leadership content that elucidates technical solutions for developers and IT leadership. Today he heads Agile SEO, the leading marketing agency in the technology industry.


What Is Single Sign-On (SSO) and Why Is It Important? 

Single Sign-On (SSO) is a user authentication process that allows a user to access multiple applications or systems with one set of credentials. This means that after logging in once, the user can access all associated systems without needing to log in again for each one. SSO is crucial for enhancing user experience by reducing password fatigue—the need to remember and enter different passwords for various services. Additionally, it improves security by minimizing the chances of password theft, as users are less likely to reuse or write down passwords.

From an administrative perspective, SSO authentication simplifies management of user accounts and permissions. It allows IT departments to manage access to all services through a single interface, making it easier to revoke access when an employee leaves the company or changes roles. Furthermore, SSO can help organizations meet compliance requirements by providing centralized audit trails of user access and activities across multiple systems. Implementing SSO can lead to increased productivity, as users spend less time logging in and more time focusing on their work tasks.

Options for SSO in Salesforce 

There are three main options for setting up SSO in Salesforce:

1. Salesforce as the Service Provider or Relying Party

In this setup, Salesforce acts as the service provider, meaning that it relies on an external identity provider (IdP) to authenticate users. For instance, if your organization uses Google Workspace, you could set up Google as the IdP, and Salesforce would trust the authentication from Google. This means that users can sign in to Google and then access Salesforce without having to log in again.

2. Salesforce as the Identity Provider or OpenID Connect Provider

Conversely, Salesforce can also act as the IdP itself. In this scenario, Salesforce authenticates the user and provides identity services to other applications. This means that a user could log in to Salesforce and then access other applications (that trust Salesforce as the IdP) without having to log in again. It’s a powerful feature that can make Salesforce the hub of your organization’s digital workspace.

3. Salesforce as Both Service and Identity Provider

In some cases, Salesforce can take on both roles – acting as both the service provider and the IdP. This is particularly useful in scenarios where an organization uses multiple Salesforce instances. One instance can act as the IdP, and the others as service providers, creating a seamless user experience across all instances.

4. Salesforce and Delegated Authentication

Finally, Salesforce also supports delegated authentication, where Salesforce can delegate the authentication process to your organization’s authentication system. This means that Salesforce calls a web service hosted by your organization each time a user tries to log in, and the web service determines whether the user is allowed access.

Example: Configure SSO from Salesforce to Amazon Web Services 

Here is an example of how to set up single sign-on across Salesforce and AWS.

Get a SAML IdP Certificate

The first step in this process is to get a SAML Identity Provider (IdP) certificate. The SAML IdP certificate is used to establish trust between Salesforce and AWS. It’s similar to an SSL certificate, proving the identity of the server and encrypting communication between the server and the client.

You can generate a self-signed SAML IdP certificate or receive one from a certificate authority. The certificate should be saved on a local machine.

Download the Metadata Document

The metadata document is an XML file that contains the information AWS needs to trust Salesforce as an IdP. It includes details such as the Entity ID, which is a unique identifier for the IdP, and the location of the SSO service.

To download the metadata document, navigate to the Identity Provider setup page in Salesforce and click on the Download Metadata button. This will generate an XML file that you need to save on your local machine. You will upload this file to AWS in the next step.

Create a SAML Provider on AWS

Now, in AWS Console, you need to create a new SAML provider and upload the Metadata Document you downloaded from Salesforce.

In the AWS Management Console, navigate to the IAM dashboard and click on Identity Providers. Follow the instructions for creating a SAML provider. These include uploading the metadata document, creating roles with user policies, including a role for identity provider access, and granting WebSSO access to the SAML provider. 

AWS will generate an ARN (Amazon resource number). Save this ARN for future reference.

Create and Configure a Connected Application on Salesforce

A connected app is a framework that allows external applications to integrate with Salesforce using APIs and standard protocols.

If using Salesforce Classic, go to Setup and search for the Apps page, then click on New under Connected Apps

If using Salesforce Lightning Experience, navigate to the App Manager and click on New Connected App. Here, you need to provide the necessary details for your app. Make sure to enable SAML in the Web App Settings and configure it using the details from the AWS SAML provider you created earlier.

On successful configuration, Salesforce will provide an SSO URL that you can use to log in to AWS through Salesforce.

Conclusion

In conclusion, Salesforce Single Sign-On (SSO) offers a robust and flexible solution for managing user access across a wide range of applications and services. By allowing users to authenticate once and gain access to multiple systems, Salesforce SSO enhances both user experience and security. Organizations can leverage Salesforce as a Service Provider, an Identity Provider, or even both, depending on their specific needs. Additionally, the option for delegated authentication further extends the versatility of Salesforce SSO, enabling seamless integration with external authentication systems.

Through the example of configuring SSO from Salesforce to AWS, we’ve seen the practical steps involved in establishing a trust relationship between Salesforce and external services. Consult Salesforce’s documentation to learn how to integrate Salesforce SSO with a wide range of services beyond AWS, to use Salesforce as a centralized hub for digital identity management.

Continuous Delivery in Salesforce Development

This contributed articole if written by Gilad David Maayan is a technology writer who has worked with over 150 technology companies including SAP, Imperva, Samsung NEXT, NetApp and Check Point, producing technical and thought leadership content that elucidates technical solutions for developers and IT leadership. Today he heads Agile SEO, the leading marketing agency in the technology industry.


What Is Continuous Delivery? 

Continuous delivery is a software development practice where code changes are built, tested, and prepared for release to production in a rapid, consistent manner. It aims to make deployments—whether of a large-scale distributed system, a complex production environment, an embedded system, or an app—predictable and routine affairs that can be performed at any time on demand.

In the context of Salesforce development, continuous delivery ensures that the code and configuration changes made in Salesforce are always in a releasable state. This means that whenever a change is made, it is immediately tested and prepared for deployment. The continuous delivery approach reduces the lead time for changes, minimizes the risk of deployment failures, and provides quick feedback to the development team.

Continuous delivery in Salesforce development is all about automation. Every stage of the development process—from code creation to testing to deployment—is automated. This eliminates manual errors, accelerates the development process, and ensures that every change is immediately ready for production. It’s about making sure that any version of the software, from any point in its lifecycle, can be reliably and rapidly released.

Benefits of Salesforce Continuous Delivery 

Here are a few of the reasons forward-looking organizations developing code for Salesforce are transitioning to continuous delivery:

Faster Time to Market

CI/CD ensures that every change is immediately ready for deployment, which drastically reduces the lead time for changes. This means that new features and improvements can be delivered to customers more quickly, which can provide a competitive advantage.

Moreover, continuous delivery facilitates a culture of experimentation. Because it’s easy and safe to release changes, you can experiment with new features and improvements more frequently. This can lead to innovative solutions that meet customer needs more effectively and quickly.

Lower Development Costs

By automating the development process, you eliminate the need for manual testing and deployment, which can be time-consuming and expensive. Automation also reduces the risk of human error in deployments, which can lead to costly mistakes and rework.

Furthermore, continuous delivery promotes a “fail fast” mentality. Because changes are released quickly, problems are identified and addressed sooner, which can save significant time and resources in the long run.

Low Risk Releases

When practicing continuous delivery in Salesforce development, every change is immediately tested and prepared for deployment, so the risk of deployment failures is minimized. This means you can release changes with confidence, knowing that they have been thoroughly tested and are ready for production.

Moreover, continuous delivery allows for more frequent releases, which means smaller, more manageable changes. This reduces the risk associated with large, infrequent releases, which can be challenging to manage and troubleshoot.

Setting up the Salesforce Development Environment for Continuous Delivery 

Set Up Version Control

The first step in setting up the Salesforce Development Environment for continuous delivery is setting up version control. Version control systems are essential tools for any software development project, and Salesforce development is no exception. They allow developers to keep track of changes made to the source code, making it easier to collaborate and manage changes. A common choice is Git, a distributed version control system that is widely used in the software development industry.

Setting up version control in Salesforce can be done using Salesforce CLI. After installing Salesforce CLI, you can create a new Git repository in your Salesforce project directory. Then, you can commit and push changes to the repository using Git commands. This process allows you to keep a historical record of your project’s development and facilitates collaboration among team members.

Leverage Salesforce DX

Salesforce DX (Salesforce Developer Experience), is a suite of tools and features that allow developers to build and manage Salesforce apps throughout the entire software development lifecycle.

Salesforce DX provides a modern and integrated development environment, supports team collaboration, and simplifies the process of building and deploying apps. Moreover, Salesforce DX is built around the concept of “source-driven development”, which aligns with the idea of continuous delivery.

To leverage Salesforce DX, you need to install it on your machine and set up a Salesforce DX project. The project will serve as your main workspace, where you can develop, test, and deploy your Salesforce apps. Salesforce DX also integrates with version control systems like Git, making it even more convenient for continuous delivery.

Automate Builds and Testing

Automation is a key component of continuous delivery, as it eliminates the need for manual intervention in the software delivery process.

In Salesforce, you can automate builds using scripts and Salesforce CLI commands. These scripts can be run automatically whenever a change is pushed to the version control system, ensuring that the latest version of the software is always available for testing.

Automating testing is also essential. Salesforce provides several tools for automated testing, including Apex testing and Lightning testing. These tools allow you to write test cases for your Salesforce apps and run them automatically. By automating testing, you can ensure that all changes to the software are thoroughly tested before they are delivered.

Utilize Salesforce’s Package Management Capabilities

Salesforce packages are containers for something as small as an individual component or as large as a set of related apps. After the package is created, it’s easy to distribute to other orgs and even list on the AppExchange.

Packages are particularly useful in managing customizations and extending Salesforce. By grouping related items into packages, you can track and manage them as a unit, making it easier to deploy changes and roll them back if necessary. This feature ties in well with continuous delivery, where changes are continuously integrated and deployed.

Salesforce provides two types of packages: unmanaged and managed. Unmanaged packages are typically used for distributing open-source projects or templates, while managed packages are used for full-scale app distribution. For continuous delivery it is recommended to use managed packages as they offer more features and control over the package lifecycle.

Scan Code for Security Vulnerabilities

Finally, it’s crucial to consider security. One of the tools you can use for this purpose is Salesforce’s Security Source Scanner. This tool automatically scans code for security vulnerabilities, helping ensure that the software is secure before it’s delivered.

The Security Source Scanner checks your Salesforce code against a set of security rules. If it finds any violations, it reports them so you can fix them before delivery. This tool is especially useful in a continuous delivery setup, where changes are delivered frequently and there’s a high risk of introducing security vulnerabilities.

In conclusion, setting up a Salesforce development environment for continuous delivery involves several steps, each of which plays a crucial role in ensuring a smooth and efficient software delivery process. By following these steps, you can streamline your Salesforce development process, improve collaboration among your team, and deliver high-quality Salesforce developments consistently and efficiently.

[MadeInItaly] Unleash your Salesforce power from anywhere with the ForceDev App 👨‍💻✨

For the #MadeInItaly series where I want to showcase amazing artisanal Italian products from our incredible Italian Ohana, today’s guest post is delivered by Luca Daneluzzo is a senior Salesforce developer with a broad consulting experience, ranging from industrial production to fashion industry, all within the Salesforce domain. Two years ago, he chose to work as a freelancer, allowing him to focus on personal Salesforce projects and provide exclusive attention to his customers. Luca has gained a strong reputation among businesses that rely on Salesforce as their operational tool. He delivers high-quality work, ensures customer satisfaction and he provides innovative solutions with a customer-centered approach.


Salesforce developers, rejoice! The era of tethering yourself to a desk for coding is over. 👋

Introducing the ForceDev App, the ultimate mobile toolkit that empowers you to manage your Salesforce organizations with finesse, all from the palm of your hand. 📱💯

ForceDev is the indispensable companion for the modern Salesforce Developer / Administrator, seamlessly blending mobility and productivity. 🏃‍♀️🚀

Download ForceDev today and experience the freedom to code, monitor, and optimize your Salesforce org from wherever inspiration strikes. 💡🌍

Available on Google Play Store and Apple Store!

ForceDev: safety first 🔐

ForceDev is a secure app and does not communicate with any external server outside of Salesforce (using only cutting-edge communication protocols).

It only saves data within the used device, therefore it does not communicate private or sensitive data to third parties in any way.

ForceDev: features

Execute Anonymous 💻

With ForceDev you can run Apex code directly from your mobile device.

ForceDev allows you to run Apex code without having to access your computer. You can use the fields’ search to quickly find the fields you need and save your snippets for future use.

Perform Query 💡

With ForceDev you can run queries across your Salesforce orgs. This feature is perfect for Salesforce admins and developers who want to quickly retrieve information. Save your queries and reuse them in the future.

REST Explorer 🛠️

With ForceDev you can invoke Salesforce APIs with few simple clicks. This feature is perfect for Salesforce developers who want to test integrations with external systems or simply take advantage of the most powerful features of the Salesforce system (naturally, you can also save your favorite configurations so you can reuse them in the future).

View Logs 📃

With ForceDev you can view, analyze and filter system logs generated by any user of any Salesforce Org in real time; this will allow you to save time by starting a log monitoring session in 2 simple clicks.

Custom Labels 🏷️

With ForceDev you can easily search for all the labels available in an org. Search for labels by simply typing their name, translation or technical API name.

This feature is perfect for Salesforce developers who want to avoid creating duplicate labels and therefore save time in their developments.

Code Coverage 🔬

With ForceDev you can view real-time code coverage for each Apex class as well as overall coverage across your entire Salesforce organization. How many times did you need to launch a complete execution of all test classes in order to check their coverage? As you might already know, this is an operation that can take a long time: why not monitoring it directly from your mobile phone without any worries? Use ForceDev, take it easy!

View Job Errors 🙈

With ForceDev you can monitor all “Scheduled Apex”, “Queueable” and “Batch Apex” jobs that failed in the last 7 days. Be the first to report any system errors using our application!

Health Check 🩺

With ForceDev you can view the health status of your Org and suggest useful actions to improve its security. Here you will find a list of operations that you can perform in order to make your Salesforce organization increasingly safe and efficient.

ORGanizer for Salesforce – New Release

Dear ORGanusers 💙,

in the next release, currently under testing 🤖, an important update will impact the License Verification procedure that you can achieve from the “Options” page on the “PRO” tab, only if you are on paid tier.

You won’t be required to have a synced user on your browser or use Google Authentication to validate your email address anymore, but you’ll simply be required to input your email address and license key to start the validation process: this is a more reliable and easy way to handle your licenses, making the process absolutely smooth! 😎

🚨⚠ Once the release will be live you’ll be required to remove your current license and validate it again ⚠ 🚨

So don’t panic if you’ll temporary see your ORGanizer unlicensed! 😱

NOTE: this update won’t be available to Firefox users at this moment, sorry guys but Firefox has so many problems that its version will stay behind for a while 🦊

📜 The golden rules 👑

  1. You need to validate your license on each browser or browser’s profile you use the license with (if you use Chrome and Edge, you need to validate both, if you use Chrome with many profiles, you need to validate each profile, more or less the same happens now)
  2. The validation process sends a validation email to your licensed email, so you need to have access to your email address and use the provided code to activate your client (you better check your spam folder)
  3. There is a limit on the number of active clients that you can activate with a license (this number depends on the license type, details will be given shortly), but you can deactivate a client to make room for your new client (that’s why you’ll be able to add a Client Name to each client so to point the right client in deactivation)
  4. There is a cooldown for client deactivation (whose duration depends on license type as well) that prevents you from deactivating clients like a crazy 😵

This is how things will change 🤯

The “PRO” tab in the “Options” page (right click on ORGanizer icon and select “Options”) will show new fields:

  1. Client ID (identifies your client, i.e. each browser and browser’s profile you have ORGanizer installed will have its own ID, you cannot change it and please don’t try to do it, it will simply invalidate your client license) and Client Name (as said, you can update this value to clearly identify a client)
  2. Licensing section where you have to set license key and email address as delivered by Gumroad licensing service (your purchase confirmation email, as usual)

When you start a new validation process, you’ll receive the following message:

This is the email you’ll receive (again, check on your SPAM folder):

Now you need to simply copy/paste this code on the activation code on the “Activation Code” field that pops up:

If you reach the max number of active clients you’ll be shown a popup with the details and the list of currently active clients (you decide which one to deactivate, considering the cooldown period):

If you need more details send me a message using the support form.

Have a great day pals!

With 💙

Enrico

[MadeInItaly] Move-QCP: a Salesforce CLI plugin to manage the Salesforce CPQ (SteelBrick) QCP

For the #MadeInItaly series where I want to showcase amazing artisanal Italian products from our incredible Italian Ohana, today’s guest post is delivered by Raffaele Preziosi, a certified Salesforce Developer and Application Architect who was born in Naples (Italy). He is passionate about the Salesforce platform, JavaScript, and DevOps. Currently, he works as a consultant at Accenture Nordics in Copenhagen, where he continues to innovate and develop solutions for clients in the Salesforce ecosystem.


The Javascript Quote Calculator Plugin (QCP) of SteelBrick CPQ is a tool that allows users to enhance the functionality of the quote line editor within Salesforce.

By utilizing JavaScript, users can implement custom logic to manipulate quotes and quote lines both before and after pricing rules are calculated.

This customization extends to managing the visibility and editability of the fields displayed in the quote process.

The Challenge: Managing QCP Code within Salesforce

Unfortunately, the javascript QCP code must be stored as data within Salesforce (in the field SBQQ__Code__c of the object SBQQ__CustomScript__c) making it difficult to manage and track changes effectively.
As developer you would like to manage that code in your IDE alongside other metadata within your version control system.

The move-qcp sf CLI plugin can address this issue. This tool allows you to efficiently organize the QCP code, and automate the its deployment.

The  move-qcp plugin changes the way you develop and deploy QCP by allowing you to:

  • Versioning QCP Code: Your code is securely stored, easily accessible, and conveniently managed alongside your other version-controlled assets. This ensures that you have complete control over your qcp code and can effectively track and review changes.
  • Automated Deployment: The plugin automatically deploys the QCP to the target org, avoiding the need to manually copy and paste the code into Salesforce.
  • Modularization: Take advantage of modularization by utilizing modules to split the QCP code into multiple files. By splitting your QCP code into multiple files using modules, you can enhance readability, maintainability, and collaboration among your development team.
  • Code Minification: The plugin automatically minifies the code before deploying it to the target org. This optimization step helps avoid reaching the maximum character limit of the textarea field.

How to Get Started

  1. Open your terminal and run the command (Salesforce CLI is necessary):
    sf plugins install move-qcp
  2. Within your repository, create a dedicated folder for your QCP using the create command. This is where you’ll organize your QCP-related files. Replace “MyQCP” with your desired custom script name, which will also be the folder name.
    sf cpq qcp create -n MyQCP

    The command will create separate files for each method of the quote calculator plugin.
    The main.js file will import modules from other files, enhancing code organization.
    The config.json file can include additional fields for your quote calculator plugin.
    Main.js and config.json are the only required files, the other ones can be deleted/replaced.

3. When your changes are ready run the following command to insert/update your QCP in the Org. Replace “orgAlias” with the authenticated org alias/username and ./QCP with the directory of your QCP
sf cpq qcp deploy -u orgAlias -d ./MyQCP

If the command succeeds, it will print the Id of the custom script:

While you can add multiple custom scripts to your repository, it’s important to note that Salesforce CPQ currently allows only one active script at a time.

You can streamline your deployment process, integrating the command into your CI/CD pipeline!

Salesforce Sidekicks Podcast: a new journey for 2024!


I want to thank Pietro Piga for involving me in this new (crazy) initiative. 🤪

We have launched a podcast 🎙 titled “Salesforce Sidekicks” (whose temporary home is this blog, click on PODCAST: Salesforce Sidekicks 🇮🇹 ) with the goal of sharing our (completely off-the-cuff) conversations about the Salesforce world, in an informal 😎, if possible, humorous 🤡, and above all, in Italian. 💙

We would like to attempt to restart ▶ that fantastic “Italia Ohana Community” 🌈🤙 that we tried to kick off some time ago with Nino Guarnacci and the support of Salesforce ☁, aiming to share our passion 💘 for the Salesforce world and, why not, receive feedback and opinions to be shared in other episodes. 🗣

So, we kick off 2024 with the first episode “Salesforce and AI” 🚀
Happy listening! 👂

Creating Customer Portals with a Salesforce-Integrated Platform

This guest post has been delivered by Nikita R., media-savvy content creator, with a curiosity for all Salesforce experiences.


A customer portal is a quick way to improve customer experiences when interacting with your business. They are often used to create a central location that customers can visit to read up on any of your announcements, shop for products and services, or even log calls for assistance with their previous purchases.

Continue reading our blog to find out more about customer portals built with Titan Web that can connect to Salesforce seamlessly and bi-directionally. But we first start with the basics…

What’s a Customer Portal?

Customer portals are platforms or digital spaces used to showcase business content, documentation, and announcements to customers in a central location. But more importantly, it’s a space where customers get to interact with self-service options, like logging tickets or watching tutorial videos.

Customer portals are also good tools to alleviate pressure on sales and customer service agents as these platforms let visitors independently edit and track their personal details, account information, and payment options.

Add Inspiring UX Features

Are you ready to rush off and start building your latest web project? Well, make sure to add the following features to your customer portal. Each one will bring a breath of fresh air to your user experiences and keep your visitors returning to your portal every time.

The first feature we need to discuss is a way for your customers to manage and edit their account information on a customer portal. This independence and freedom will free up a lot of your customer service agents time which they can use to spend on higher-priority tasks. And while you’re adding this feature request, make sure to also provide options for logged in visitors that want to create user profiles and configure personal preferences on the customer portal.

The next feature is essential for those businesses who sell products online. You can use your customer portal to track orders efficiently so make sure to add this feature to yours. For instance, customers can log into the portal to check their order status and previous purchases. You could take it a step further and raise your customer expectations by sending alerts to them when their order has been scheduled and is out for delivery.

The last feature we would like to discuss, although there are plenty more, is a knowledge base. It’s an extremely helpful feature to add to your customer portal. The knowledge base is a dedicated space that displays videos and articles on how to troubleshoot products that are broken. Its purpose is to give customers a way to find information quickly to resolve issues without the need to wait for a technician or a customer service agent. It’s a wise decision to also add a frequently asked questions page to impart wisdom and solutions to common problems that may exist.

Why do I need a Platform that integrates with Salesforce?

As we are all aware, Salesforce is the world’s leading customer relationship management (CRM) platform. So, it will come as no surprise to us that you are also using it to streamline sales, marketing, and customer service tasks. If this is you, why not take full advantage of all that Salesforce has to offer. It’s easy when you integrate your customer portal and Salesforce.

The first advantage you will get for your teams when you integrate Salesforce with a customer portal, is a complete 360° view of your customer data. If Salesforce is your main database for storing all customer details, you can go ahead and easily track transactions, interactions, and any other data collected from your customer portal.

Additionally, if you install smart software such as Titan Web, you can sync your Salesforce data to and from your customer portal in real-time.

Essentially all of these points show that integrating Salesforce with a customer portal lets your teams collect detailed information to understand customers on a deeper level. After analyzing the data, you can then create custom marketing and sales strategies to keep and nurture customer relationships.

Who can Give me Portal Services?

If you are looking for a third-party app that can provide you the power to build customer portals, websites, forms, and surveys without any coding skills, then we suggest getting Titan Web.

It’s a powerful tool that creates any web project on its single Salesforce-integrated platform. It is considered to be the complete solution to support any business process. Here are a few examples of other portals that your teams can easily create with no code when using Titan:

  • Customer Service Portals
  • Customer Support Portals
  • Customer Engagement Portals
  • Customer Self-Service Portals
  • Client Portals

Try Titan Web for Customer Portal Software

With Titan Web, businesses certainly get more for less. For starters, Titan Web’s drag-and-drop builder is user-friendly and fully accessible to create the specific portal that you need. And once your customer portal is up and running, you know that you are going to start collecting vast amounts of private information. For this reason, Titan Web ensures that its apps are secure and compliant with HIPAA, SOC 2, ISO, GDPR, and other leading frameworks.

Titan Web can extend your Salesforce capabilities with its host of robust tools. Take a look at some of the best features you gain access to when using Titan Web.

  • Titan Web integrates directly into Salesforce with 3 simple steps!
  • When you integrate Titan Web with Salesforce, you get to push and pull data between the two platforms in real-time.
  • You have the option to choose to work with Titan Web as a powerful alternative to Experience Cloud.
  • Go ahead and build branded web apps and portals to suit any use case you can imagine with zero coding skills.
  • With Titan Web, you get full design and customization options to brand your web projects the way you want.
  • Your web projects can have responsive designs to work on multiple devices.
  • Get access to a variety of engaging elements to add to your web projects, like maps or schedulers.
  • Create more than just websites and portals. You can use Titan Web to generate documents, build surveys, and design forms, which all push and pull data from Salesforce.
  • Titan Web helps you perform your business processes from start to finish, such as generating and signing dynamic documents that are pre-filled with Salesforce data.
  • You get Salesforce automation that can be configured with no code to support your complex approval flows.
  • All your web projects have access to advanced 2FA security with Titan Web.
  • Easily create progress reports with your Salesforce data to support business decisions.
  • You can secure your web projects with Titan Web’s multi-user permission options.

A Salesforce & Titan Web Integration for the Best User Experiences

Thanks for reading our article on Salesforce and Titan Web, our client portal software of choice for creating customer portals, and more. We hope we have shed some light on how you can use the powerful Salesforce-integrated platform to obtain the best user experiences tailor-made to your business requirements. Good Luck!

Integrating SalesForce with AWS

This guest post is presented by Gilad David Maayan is a technology writer who has worked with over 150 technology companies including SAP, Imperva, Samsung NEXT, NetApp and Check Point, producing technical and thought leadership content that elucidates technical solutions for developers and IT leadership. Today he heads Agile SEO, the leading marketing agency in the technology industry.


In today’s data-driven business environment, the integration of Salesforce with AWS allows organizations to improve customer relationship management and operational efficiency. This article explores benefits and capabilities that businesses can harness by integrating their Salesforce instance with AWS’s native services, such as Redshift, Lambda, and Amazon Connect, as well as third party services hosted on AWS, such as Tableau and MuleSoft.

How AWS Native Services Can Benefit SalesForce Users 

Here are the key capabilities SalesForce users can derive from integrating their SalesForce instance with AWS.

Enhanced Data Storage and Querying

AWS offers a range of powerful data storage and querying services, including AWS database services like Amazon RDS, NoSQL options like Amazon DynamoDB, and Amazon Redshift.

When integrated with Salesforce, these services allow for efficient storage and querying of customer data. This can greatly improve the speed and accuracy of customer insights, enabling businesses to make more informed decisions and improve their customer relationships.

Furthermore, AWS’s advanced analytics services, such as Amazon QuickSight, can provide deep insights into customer behavior and trends. These insights can be used to drive strategic business decisions and improve overall business performance.

Amazon Redshift and Einstein Analytics

Amazon Redshift and Einstein Analytics are two powerful tools that can be leveraged when integrating Salesforce with AWS. Amazon Redshift is a fast, scalable data warehouse that makes it simple and cost-effective to analyze all your data using standard SQL and your existing Business Intelligence (BI) tools.

On the other hand, Einstein Analytics is Salesforce’s native analytics tool, providing AI-powered business intelligence. When used in conjunction with Amazon Redshift, businesses can leverage the high-speed analysis and data visualization capabilities of Einstein Analytics on the comprehensive data stored in Amazon Redshift.

Serverless Function Execution with AWS Lambda

AWS offers scalable, serverless function execution for complex operations, a feature that is particularly beneficial when integrated with Salesforce. With AWS Lambda, you can run your code without provisioning or managing servers.

When integrated with Salesforce, this serverless architecture allows for the execution of complex operations without the need to manage or scale servers. This can greatly simplify the management of complex operations, increase operational efficiency, and reduce costs.

Amazon Connect and Salesforce Service Cloud Voice

Amazon Connect is an easy-to-use omnichannel cloud contact center that helps businesses provide superior customer service at a lower cost. When integrated with Salesforce Service Cloud Voice, it brings together voice, digital channels, and CRM data in real-time.

This integration allows for a unified agent and manager experience within Salesforce, enabling businesses to deliver more personalized and effective customer service. It also provides valuable insights into customer interactions, which can be used to improve service quality and drive customer satisfaction.

Integrating SalesForce with Third-Party Services on AWS

Tableau on AWS

Another powerful AWS service that can be integrated with Salesforce is Tableau. Tableau is a powerful data visualization tool that can transform raw data into understandable and actionable insights. When hosted on AWS, Tableau can leverage the scalability, reliability, and security of the AWS cloud.

By integrating Tableau with Salesforce, businesses can visualize their Salesforce data in real-time, enabling them to make faster, data-driven decisions. This integration can also streamline data analysis and reporting processes, saving time, and improving overall business efficiency.

MuleSoft on AWS

MuleSoft, an integration platform for SOA, SaaS, and APIs, is a Salesforce company that provides a seamless way to connect applications, data, and devices. With MuleSoft on AWS, you have the power to unlock your data, integrate your systems, and innovate faster.

With MuleSoft, you can create a connected experience by integrating Salesforce with any system, application, or data source, whether on-premises or in the cloud. You can also expose data as APIs, making it readily accessible for your developers and partners. Moreover, MuleSoft’s Anypoint Platform simplifies the design, deployment, and management of APIs, delivering speed and agility to your business.

Slack on AWS

Slack, a business communication platform, is another Salesforce service that runs on AWS. It offers a myriad of features, such as channels, direct messaging, voice and video calls, file sharing, and integrations with other software. With Slack on AWS, organizations can improve team collaboration, streamline workflows, and ultimately enhance productivity.

By integrating Slack with Salesforce, you can automate routine tasks, get real-time updates on your Salesforce records, and even converse with Salesforce’s intelligent assistant, Einstein, directly in Slack. This integration not only helps in keeping your team informed but also saves valuable time, enabling your team to focus on what matters the most – serving your customers better.

Example Integration Flow: How to Setup Application Integration for Salesforce with Amazon Connect 

Amazon Connect is a cloud-based contact center service offered by AWS, which can be integrated with Salesforce to deliver improved customer experience. Here’s a quick guide on how to set up application integration for Salesforce with Amazon Connect.

Set Up an Amazon Create Instance

The first step in integrating Salesforce with Amazon Connect is to create an Amazon Connect instance. Log into your AWS Management Console and navigate to the Amazon Connect service. Click on ‘Create an instance’ and follow the prompts.

You’ll need to provide a name for your instance and choose settings for data storage, telephony, and data streaming. You can also select optional settings such as contact flow logs, contact lens for Amazon Connect, and hours of operation. Once you’ve configured the settings, click on ‘Create’ to get your instance up and running.

Install the Amazon Connect CTI Adapter

The next step is to install the Amazon Connect CTI (Computer Telephony Integration) Adapter in your Salesforce organization. This adapter enables your Salesforce users to handle Amazon Connect voice and chat contacts directly in Salesforce.

To install the adapter, log into your Salesforce org and navigate to the AppExchange. Search for ‘Amazon Connect CTI Adapter’ and click on ‘Get It Now’. Follow the installation prompts and choose the users who should have access to the adapter. After the installation is complete, the Amazon Connect CTI Adapter will be available in your Salesforce org.

Configure your Salesforce Call Centre

The final step is to configure your Salesforce Call Centre to use the Amazon Connect CTI Adapter. In your Salesforce org, go to ‘App Manager’ and click on ‘New Connected App’. Provide a name for your app, enable OAuth settings, and add the necessary scopes.

Next, navigate to ‘Call Centers’ in Salesforce and click on ‘Import’. Choose the Amazon Connect CTI Adapter file and click on ‘Import’. You can then add users to your call center and assign them the necessary permissions. With this, your Salesforce Call Centre is all set to handle Amazon Connect contacts.

Conclusion

Tools such as Amazon Redshift, AWS Lambda, and Amazon Connect, when combined with Salesforce, empower businesses to operate more effectively and make data-driven decisions swiftly. Additionally, the integration with third-party services like Tableau, MuleSoft, and Slack on AWS further extends the functionality and efficiency of Salesforce. The process of setting up these integrations, as illustrated with the example of Amazon Connect, is straightforward, enabling businesses to quickly reap the benefits of the integration.

5 Tips for Managing Salesforce Cloud Costs

This guest post is presented by Gilad David Maayan is a technology writer who has worked with over 150 technology companies including SAP, Imperva, Samsung NEXT, NetApp and Check Point, producing technical and thought leadership content that elucidates technical solutions for developers and IT leadership. Today he heads Agile SEO, the leading marketing agency in the technology industry.


Understanding and effectively managing Salesforce cloud costs can significantly impact a company’s bottom line. Salesforce, as a leading CRM platform, offers diverse functionality that cater to diverse business needs. However, the more of this functionality a business uses, the higher the ongoing cost of the platform. 

Image Source

From user licenses to API calls, from data storage to custom developments, each element plays a role in the overall expense structure. To make the most of Salesforce without overspending, businesses must be proactive in their approach to cost management, as part of a holistic cloud cost management strategy. This article delves into the details of Salesforce cloud costs and provides actionable strategies to keep these costs under control.

Factors Affecting Salesforce Cloud Costs 

User Licenses

When it comes to Salesforce cloud costs, user licenses are one of the significant contributors. Salesforce offers different types of licenses, each with its own pricing. The more licenses you purchase, the higher your costs will be.

Note that some licenses offer more features and functionalities but come with a higher price tag. Pricing ranges from $25 / user / month for the Starter tier, all the way up to $500 / user / month for the Unlimited tier. Hence, you need to strike a balance between the number and type of licenses to manage your Salesforce costs effectively.

API Calls

Another factor affecting Salesforce cloud costs is API calls. Salesforce provides APIs to integrate with other systems and applications. However, each API call comes at a cost. The more API calls your business makes, the higher your costs will be.

By managing your API calls, you can control your Salesforce costs. You can identify and eliminate unnecessary API calls, optimize the usage of APIs, and align your API strategy with your business objectives.

Data Storage

Data storage is another factor that influences Salesforce cloud costs. Salesforce provides data storage for your records, files, and other data. However, the more data you store, the higher your costs will be.

By managing your data storage, you can reduce your Salesforce costs. You can identify and delete redundant or obsolete data, optimize your data management practices, and ensure that your data storage costs are in line with your business needs and budget.

Custom Development

The last factor affecting Salesforce cloud costs is custom development. Salesforce offers a highly customizable platform. You can develop custom apps, features, or integrations to meet your specific business needs. However, custom development comes with its costs.

By managing your custom development costs, you can control your Salesforce expenses. You can prioritize your development projects, leverage reusable components, and ensure that your custom development efforts are cost-effective and aligned with your business goals.

5 Tips for Managing Salesforce Cloud Costs 

Let’s dive into five actionable tips that can help you manage your Salesforce cloud costs effectively.

Regularly Review User Licenses

Your Salesforce subscription is primarily based on the number of user licenses. It’s essential to regularly review and adjust these licenses to ensure you’re not paying for more than you need.

Each user license equates to a seat in your Salesforce organization. You pay for these seats whether they are occupied or not. If you have unused licenses, you’re essentially wasting money. Regularly reviewing your user licenses and deactivating unused or unnecessary ones is a simple yet effective way to manage your Salesforce costs.

Also evaluate the types of licenses used by your users. Make sure you’re using the right type of license for each user. Don’t pay for high-end licenses for users who only need basic features.

Optimize Data Storage

Data storage is another significant factor in Salesforce cost. Salesforce provides a certain amount of data storage per user license, and once you exceed this, you need to pay extra. Therefore, optimizing your data storage can help manage your Salesforce costs:

  • Ensure you’re only storing necessary data: Regularly review your data and delete or archive anything that’s not needed.
  • Use efficient data structures: Salesforce has various types of data storage, each with its own storage limit. By using the right type of storage for each piece of data, you can optimize your storage usage.
  • External storage solutions: If you have large amounts of data that don’t need to be on Salesforce, moving them to an external storage solution can significantly reduce your Salesforce data storage costs.

Monitor API Calls

Salesforce limits the number of API calls you can make in a 24-hour period, based on your user licenses. Exceeding these limits can lead to additional costs. Therefore, monitoring your API calls is an important part of cost management.

  • Understand your API usage: Identify which processes generate the most API calls and determine if they are necessary. You may find that some processes can be optimized or eliminated to reduce API calls.
  • Consider using batch processes: Batch processes allow multiple records to be processed in a single API call, reducing the total number of API calls.

Utilize Native Features Before Third-Party Integrations

Salesforce offers a wide range of native features that can meet most business needs. Before resorting to third-party integrations, which can add to your costs, consider if you can achieve your goals using Salesforce’s native features.

Using native features can also improve your overall Salesforce experience. Native features are designed to work seamlessly with Salesforce, ensuring optimal performance and user experience.

Implement Governance Policies

Lastly, consider implementing governance policies to manage your Salesforce costs. Governance policies can help ensure your Salesforce usage aligns with your business goals and budget.

A good governance policy should cover usage guidelines, user licenses management, data storage optimization, API usage, and third-party integrations. It should also include regular reviews and audits to ensure compliance.

Implementing a governance policy may seem like a daunting task, but it’s an investment that can yield significant returns in terms of cost management.

Salesforce is a powerful platform that can drive your business success. However, without prudent cost management, it can become a costly endeavor. By regularly reviewing your user licenses, optimizing your data storage, monitoring your API calls, utilizing native features, and implementing governance policies, you can unlock the power of cost management using Salesforce.

Insider Threats in SalesForce: Understanding the Risk

This guest post is written by Gilad David Maayan, a technology writer who has worked with over 150 technology companies including SAP, Imperva, Samsung NEXT, NetApp and Check Point, producing technical and thought leadership content that elucidates technical solutions for developers and IT leadership. Today he heads Agile SEO, the leading marketing agency in the technology industry.


What Are Insider Threats? 

Insider threats are malicious activities that occur within an organization and are carried out by individuals who have inside information about the organization’s security practices, data, and computer systems. These individuals could be current or former employees, contractors, or business associates who have access to the network, system, or data.

The first significant thing to note about insider threats is that they’re not always intentional. Sometimes, well-meaning employees inadvertently become insider threats due to lack of proper training, ignorance, or negligence. On the other hand, there are scenarios where disgruntled employees or malicious insiders intentionally compromise the security of the organization, causing significant harm. Read this in-depth blog post for more background on insider threats.

Why Salesforce is Vulnerable to Insider Threats 

Salesforce, with its extensive user access, sensitive data storage, and complex permission structures, is particularly susceptible to insider threats.

Extensive User Access

Salesforce instances tend to provide broad access, allowing employees across an organization to collaborate and share information seamlessly. However, this strength can also be a vulnerability. When a large number of users have access to Salesforce, there’s an increased risk of insider threats. This risk escalates when users have more access privileges than they need to perform their job functions.

Sensitive Business Data

Salesforce serves as a repository for vast amounts of sensitive data, including customer information, financial data, and strategic business information. This makes Salesforce a lucrative target for insider threats, as the data can be used maliciously for personal gain or to cause harm to the organization.

Complex Permission Structures

The permission structures in Salesforce can be quite complex, which can lead to users unintentionally having more access than they require. This complexity also makes it difficult for administrators to monitor user activities effectively, creating potential opportunities for insider threats.

Common Insider Threat Scenarios in Salesforce 

Let’s look at some common scenarios where insider threats can manifest in Salesforce.

Data Exfiltration

Data exfiltration refers to the unauthorized transfer of data from a computer or network. In Salesforce, this could occur when an employee exports large amounts of data to a personal device or sends it to an external email address. Such activities can lead to data breaches and significant financial and reputational damage for organizations.

Permission Elevation

Permission elevation, also known as privilege escalation, refers to the act of exploiting a bug, design flaw, or configuration oversight in an operating system or software application to gain elevated access to resources that are normally protected from an application or user. In the context of Salesforce, this could involve a user gaining access to functionalities or data that they are not supposed to have access to.

Business Espionage

Business espionage involves the use of covert methods to gather trade secrets or sensitive information from competitors. In the context of Salesforce, this could involve an insider leaking sensitive information to a competitor or using the platform to gather intelligence on competitors.

Mitigation Strategies for Insider Threats 

As a business owner or manager, it is crucial to stay proactive in protecting your organization from insider threats in Salesforce. This requires a combination of effective strategies that focus on technology, processes, and people.

Implement a Least Privilege Access Model

The principle of least privilege (PoLP) is a computer security concept in which a user is given the minimum levels of access necessary to complete his or her job functions. This approach can significantly reduce the risk of insider threats in Salesforce.

In practice, applying PoLP means carefully managing and regularly reviewing user permissions. Not every employee needs access to all data and functions within Salesforce. By limiting access rights, you can reduce the potential for damage if an account is compromised or misused.

This approach also includes segregating duties where necessary. For instance, an employee responsible for inputting data should not have the same access rights as someone who approves those inputs. This segregation of duties can prevent one individual from having too much control or access.

Conduct Regular Audits and Reviews

Regular audits and reviews are equally important in mitigating insider threats in Salesforce. This process involves regularly reviewing user activity and access rights within your Salesforce environment.

Audits can help detect any unusual or suspicious activity that might indicate an insider threat. This might include excessive data downloads, multiple login attempts, or changes to security settings.

Reviews, on the other hand, should focus on ensuring that the access rights of each user remain appropriate for their role. If an employee changes roles or leaves the company, their access rights should be updated or revoked accordingly. This can prevent any potential misuse of access rights.

Employ Monitoring and Alerting Tools

Monitoring and alerting tools form another essential layer of protection against insider threats in Salesforce. These tools can provide real-time visibility into user activity, helping you detect any signs of insider threats early.

Salesforce itself provides several built-in monitoring tools that can be effectively used for this purpose. For instance, Salesforce Shield offers event monitoring that can provide a detailed view of user activity data.

Alerting tools, on the other hand, can notify you in real-time if any suspicious activity is detected. This allows you to act swiftly and prevent any potential damage.

Data Loss Prevention (DLP)

Data Loss Prevention (DLP) is another crucial strategy in the fight against insider threats in Salesforce. DLP focuses on preventing the unauthorized access, use, or transfer of sensitive data.

DLP solutions work by identifying, monitoring, and protecting data in use (endpoint actions), data in motion (network traffic), and data at rest (data storage). In the context of Salesforce, this involves monitoring and controlling the data that users can access and share.

Implementing DLP can help prevent any sensitive data from falling into the wrong hands, whether due to malicious intent or accidental leakage.

Legal and Administrative Measures

While the above strategies focus mainly on technological and process-based measures, it’s equally important to consider legal and administrative measures to mitigate insider threats in Salesforce.

These can include policies and procedures that define acceptable use of Salesforce, non-disclosure agreements (NDAs), and other contractual measures. These measures provide a clear framework for what is considered acceptable behavior and the consequences of any violation.

Furthermore, disciplinary procedures should be in place and communicated to all users. Knowing that there are consequences for inappropriate actions can act as a deterrent for potential insider threats.

Employee Training and Awareness

Employee training and awareness play a crucial role in mitigating insider threats in Salesforce. After all, your employees can be your first line of defense against these threats.

Regular training can help employees understand the risks of insider threats and their role in preventing them. This can include training on good password practices, recognizing phishing attempts, and the importance of reporting suspicious activity.

Awareness campaigns can also help keep the issue of insider threats top of mind for employees. Regular reminders of the importance of data security can reinforce the training and help create a culture of security within your organization.

Conclusion

In conclusion, while insider threats in Salesforce can pose a significant risk to businesses, they can be effectively managed through a combination of technological, process-based, and people-focused strategies. By implementing these strategies, you can protect your valuable Salesforce data and ensure the ongoing security of your business.

Feature image designed by vectorjuice / Freepik

Page 2 of 26

Powered by WordPress & Theme by Anders Norén