Is it possible to have authorization scopes, policies etc in keycloak with SAML? - authorization

I'm following the official documentation for keycloak Version 11.0.2 to enable authorization services for a client I have already created. The example focuses on openid-connect. Choosing openid-connect enables hidden items that allow you to enable authorization services. Choosing saml though this is not the case. Can anybody share some thoughts?
Is there a way to enable authorization services using SAML protocol in keycloak?

Related

Can we define auth scopes for SAML?

I know that you can define scopes for Google OAuth2, but can you define scopes for Google SAML?
I have read Google SAML docs and also some standard information about Google SAML, but wasn't able to get any info on it.
Short answer: No.
SAML is a different protocol where an identity provider grants access to a service. Since the SAML protocol only supports identity information it doesn't support OAuth 2.0 scopes, but SAML applications can request additional scopes through a regular consent screen after the user accesses the service.
Actually, OAuth is an authorization process where is mainly OAuth 2.0 is designed as an authorization protocol permitting a user to share access to specific resources with a service provider.
OAuth handles authorization, and SAML handles authentication.
On the other hand, SAML is typically used for SSO in government and enterprise applications (identity management) which does not require scopes because it is an authentication process.
Regardless, OAuth2 does not support SSO. And SAML tends to be specific to a user, while OAuth tends to be specific to an application.
Moreover, Google Cloud platform has the option to use OpenID connect where Google's OAuth 2.0 APIs can be used for both authentication and authorization.

Which Authentication Policy is Stronger in ADFS?

ADFS support below authentication policy
Windows based Authentication
Form Based Authentication
Certificate Based Authentication
Which Authentication Policy is Stronger in ADFS ?
If all policies are set which authentication will be given first priority ? Why ?
You tagged as ADFS 2.0 so I assume you are using that.
Good writeup here.
You can set the order in "localAuthenticationTypes".
By default, on the extranet (via WAP) it's Forms as it's non-domain joined so no WIA.
By default, on the intranet, it's WIA as it's domain-joined and providing the browser is configured to support WIA.

SSO: SAML vs LDAP?

I work for a healthcare SaaS company where all of our SSOs use SAML 2.0, and we cannot use LDAP. We have one particular client right now who wants to use ADFS to SSO from their intranet to our site and seem to act as though LDAP is the only option (and that they can't produce SAML assertions for our handshake).
What is the difference between SSO and SAML? What can one accomplish that the other one cannot? Why would my company require SAML over LDAP?
What I'm theorizing from research but am welcoming correction on:
-SAML is safer than LDAP because of authentication/encryption (but I don't know the specifics)
-LDAP is more widely used with companies but SAML is often used with enterprise clients
-LDAP can also be used to control users' access to other programs/sites they have access to (i.e. IT and revoking access to a terminated employee)
Thank you for your help!
Using LDAP for authentication requires disclosing the user's credentials at the application. If the application is running in a different administrative domain (i.e. a SaaS app) this is less preferred since the user's credentials end up in a 3rd-party domain.
OTOH SAML allows you to sign in to the application without disclosing the user's credentials to the application itself which offers increased security. It also increases convenience since the user only has to remember one credential.
LDAP is an Identity repository.
SAML is an Identity standard that could use LDAP as the repository. Or it could use something else like AD.
Just a correction - SAML does not use SOAP.
You can configure ADFS 4.0 (Server 2016) to authenticate against an LDAP and ADFS supports SAML.
If ADFS was configured that way, you would use SAML for SSO, authenticate against a LDAP and get a SAML token returned.

Alfresco Community SSO with SAML

My requirement is to Configure Alfresco for Single Sign On through SAML.
I found that there is no SAML support in Alfresco Community Edition. So I am planing to create custom Authentication Subsystem that can provide SAML SSO.
I have taken look at External Authentication Subsystem of Alfresco which provides SSO by fetching username from the request header.
So I am looking for the way to accept the response coming from SAML Identity Provider in custom Authentication Subsystem to validate identity of the user.
The easiest approach would be to have a proxy in front of Alfresco (apache httpd e.g.) that has a default saml module to validate the identity. SimpleSAML, Shibolleth, ...
You can than easily pass a header (or anything else for that matter) to Alfresco that will except the user.
I do not have an example of the exact configuration, but this will help you on the way: https://wiki.shibboleth.net/confluence/display/SHIB2/NativeSPApacheConfig

Can apache Shiro be used to build an Identity Provider?

I am looking with Apache shrio framework. Looking at it authentication and authorization features can i build Identity server provider using shrio framework.
Is it possible to have features like,
Single Sign On
SAML support
Federation based on attributes
Do we need to write everything from scratch or shrio has some API's to handle such kind of features.
I read the documentation where they say about having SSO features based on Sharing of user session with multiple organizations . But i did not see any direct support API's to handle this.
To act as an IDP what shrio gives and what it does not support?
Please suggest.
Thanks,
Sohan
Shiro is a security layer that sits in front of your application. It is a security framework for a (SP) Service Provider that will issue an Authentication Request to your IdP (Identity Provider).
Open source IdP implementations that support SAML:
http://www.gluu.org/docs/
https://shibboleth.net/
This Stack Overflow question covers a way to use SAML to authenticate your user before they reach the application and provide the user's credentials as part of a http header.
Integrating Java Web App with SAML SSO
An alternative to installing and maintaining your own IdP.
https://stormpath.com/
The cost of developing, securing, and maintaining your own identity provider are likely much higher than paying a monthly fee.