Salesforce Password keeps expiring

Problem

I keep seeing the following error frequently. After resetting Salesforce password, integration works for a month and I have to do the same thing again.

Solution

Salesforce by default required you to reset your password every 30 days. When a password expires, you must set the new password and update your security token. If you are tired resetting the password so frequently, you can follow the steps below to create a permanent password for your integration.

In Salesforce, navigate to:
  1. Setup > Administration Setup > Manage Users > Permission Sets
  2. Click the "New" button
    1. Label: Permanent Password
    2. Description: Prevent password from expiring
    3. User License: none
  3. On a new page where you can specify / customize permissions, find "System" Block and click on "System Permissions"
  4. When the page loads, click the "Edit" button
  5. Check the checkbox next to "Password Never Expires"
  6. Save the permission set

Final part is to assign this set to a User in Salesforce

  1. Setup > Administration Setup > Manage Users > Users
  2. Find the User which Magento uses to communicate with Salesforce and click on the name of the user (DON'T click "edit", click on the name)
  3. On the next page, find "Permission Set Assignments" section and click on "Edit Assignments" button
  4. Move the "Permanent Password" item from the left box to the right box and Save.