Entity ID: salesforce
[show metadata]
Clicking on [show metadata] gave me the fields I think I am interested in for salesforce.
The second section "simpleSAMLphp flat file format" was easiest to read and is where I obtained $metadata value referenced below
So off to salesforce go to Setup > Security Controls > Single Sign On Settings.
Tick the box to 'Enable SAML'
This gave me the following fields which I completed as follows
Issuer: X
Identity Provider Certificate: uploaded file I had previously created
Identity Provider Login URL: $metadata['salesforce']['SingleSignOnService']
Identity Provider Logout URL: $metadata['salesforce']['SingleLogoutService']
Custom Error URL: [cheers Tom Scavo but I couldnt find this]
SAML User ID Type: chose: "Assertion contains the Federation ID from the User object"
SAML User ID Location: chose: "User ID is in an Attribute element"
This last option gave me 2 more fields:
Attribute Name: Here I entered the necessary lable taken from the page I mentioned above at [ref#1]
Name ID Format: $metadata['salesforce']['NameIDFormat']
Click save et viola.
Salesforce then give you a bunch of urls and some metadata.xml file you can access.
Download the xml file then go to: http://my.domain.com/simplesamlphp/admin/metadata-converter.php.
I copied the results from this page into saml20-sp-remote.php, as I believe I need to tell my idp about sp's that will be using it.
Bakc on my salesforce page I have a url for "Salesforce.com Login URL".
I've been to the provided url and entered my username and password but with no success.
And sadly now I am stumped again - I dont know whats failing as I cannot see any logs anywhere on salesforce.
One thing it does provide is a "SAML Assertion validator". with the following description:
"Enter your SAML response in base64-encoded, deflated and base64-encoded, or plain xml format into the field below, and click Validate.
The response will be validated against the values configured in the Single Sign-On Settings page.
The validator will try to continue validation even if it finds an error. However, the validator cannot recover from some errors. More errors may be revealed after you fix the initial problem. Additionally, errors not related to the assertion itself will not be detected by this validator. Please refer to the login history for more information on such failures.
Your organization is configured to use SAML Version 2.0"
There is then a "SAML Response" header and a textarea input.
Hi All,
First of all, thanks for what I think will be the perfect opes source solution for my problems.
However second, I've been battling away at this for a few days now and am completely lost in terminology and files, and havent got a clue how to achieve what I want any more.
The problem:
I need to link my salesforce to my mysql db of users.
I have downloaded simplesamlphp 1.8.2 (ubuntu package) and installed, configured apache and can do the admin login on the pages provided.
I have also edited the authsources.php config file, setting up own slq authentication source and linking in my tables. I have alos been able to verify this works by logging in via the simplesamlphp web pages.
What I am absolutely flummoxed about though is where to get the necessary fields for the salesforce side of things, or how to set up the necessary attributes that they appear to require.
The fields they are asking for are:
Issuer
Identity Provider Certificate
Identity Provider Login URL
Identity Provider Logout URL
Custom Error URL
SAML User ID Type
- Assertion contains User's salesforce.com username
- Assertion contains the Federation ID from the User object
SAML User ID Location
- User ID is in the NameIdentifier element of the Subject statement
- User ID is in an Attribute element
Can anyone assist in helping me determine how I get these values.
The Issuer I guess is the value I enter for idp in the authsources.php file?
The urls I think come from saml20-sp-remote.php - something like http://www.test.org/saml/module.php/saml2/sp/metadata.php/XXX - but its beyond me what they should actually be and every combination I've tried hasnt worked.
Then finally theres the additional metadata which I havent even tried to consider yet.
Anyone who could help me out I would very much appreciate it.
Equally I'd be more than happy to contribute back my learning for a salesforce integration tutorial if anyone thingks that might help?
Cheers
Mark