IdentityServer4 SAML Single sign-on (SSO) is an authentication method that enables IdentityServer4 users to access multiple Joomla applications with one login and one set of credentials.
What is SSO ?
SAML allows exchanging of information betweenService ProviderandIdentity provider, SAML isintegration between SP and IDP. When a user tries to log in, your identity provider sends SAML assertions containing facts about the user to Identity Provider. Identity Provider receives the assertion, validates it against your Identity Provider configuration, and allows the user to access your org.
Our plugin is compatible with Joomla 4 as well as with all the SAML 2.0 compliant Identity Providers. Here we will go through a step-by-step guide to configure SAML SSO login between Joomla site and IdentityServer4 by considering IdentityServer4 as IdP (Identity Provider & Joomla as SP (Service Provider).
If you want support in configuring the plugin, or to integrate IdentityServer4 with Joomla, click on Free Configuration Setup button.
We provide a 7 day full feature trial wherein you can fully test out all the features of the plugin, click on Free Business Trial button.
Note: To add SAML IDP functionality you would require modifications in the Startup.cs file.
services.AddIdentityServer()
// the rest of registrations (clients, resources, users, etc)
.AddSigningCredential(new X509Certificate2(/*your cert*/))
.AddSamlPlugin(options => {
options.Licensee = "/*your license key org name*/";
options.LicenseKey = "/*your license key*/";
})
.AddInMemoryServiceProviders(new List());
app.UseIdentityServer()
.UseIdentityServerSamlPlugin();
Configure IdentityServer4 as Service Provider
new Client {
ClientId = "http://localhost:5001/saml",
ClientName = "RSK SAML2P Test Client",
ProtocolType = IdentityServerConstants.ProtocolTypes.Saml2p,
AllowedScopes = { "openid", "profile" }
}
ClientId | Provide clientId from Service Provider Metadata tab |
ClientName | Provide Service Provider name |
ProtocolType | IdentityServerConstants.ProtocolTypes.Saml2p |
AllowedScopes | openid, profile |
new ServiceProvider {
EntityId = "http://localhost:5001/saml",
SigningCertificates = {new X509Certificate2("TestClient.cer")},/*Enter the certificate name*/
AssertionConsumerServices = { new Service(SamlConstants.BindingTypes.HttpPost, "http://localhost:5001/signin-saml") }
};
Entity-Id | Provide Entity-Id from Service Provider Metadata tab |
Signing Certificates | Download the Certificate from Service Provider Metadata tab of the plugin and enter Certificate name |
Assertion Consumer Service URL | Provide the required Binding type followed by the ACS URL:
Http Post method: SamlConstants.BindingTypes.HttpPost Http Redirect method: SamlConstants.BindingTypes.HttpRedirect ACS URL: Provide ACS URL from Service Provider Metadata Tab |
You have successfully configured IdentityServer4 as SAML IDP ( Identity Provider) for achieving IdentityServer4 SSO login into your joomla Site.
IdP Entity ID or Issuer | SAML Entity ID in the Federation Metadata document |
Single Sign-On Service URL | SAML Single-Sign-On Endpoint URL in the Federation Metadata document |
X.509 Certificate | x.509 Certificate in the Federation Metadata document |
IdP Entity ID or Issuer | SAML Entity ID in the Federation Metadata document |
Single Sign-On Service URL | SAML Single-Sign-On Endpoint URL in the Federation Metadata document |
X.509 Certificate | x.509 Certificate in the Federation Metadata document |
Username: | Name of the username attribute from IdP (Keep NameID by default) |
Email: | Name of the email attribute from IdP (Keep NameID by default) |
Group/Role: | Name of the Role attribute from Identity Provider(IdP) |
You have successfully completed your miniOrange SAML 2.0 SP configurations. Still, if you are facing any difficulty please mail us on joomlasupport@xecurify.com .
Synchronize users, groups & directory with SCIM & REST APIs for Server.
Page Restriction plugin restricts Joomla pages (Articles) based on User Roles and User's Login Status.
Using this Add-on you would be mapping the user details into the CB's comprofilers fields table which contains the values.
If you want Business Trial for FREE Click Here
If you don't find what you are looking for, please contact us at joomlasupport@xecurify.com or call us at +1 978 658 9387.
Need Help? We are right here!
Thanks for your inquiry.
If you dont hear from us within 24 hours, please feel free to send a follow up email to info@xecurify.com