cas-mfa | CAS server overlay with support for multifactor | Authentication library
kandi X-RAY | cas-mfa Summary
kandi X-RAY | cas-mfa Summary
This is a project to develop free and open source compatibly licensed extensions for the CAS server v4.1.x product implementing.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
- Resolves the authentication method for the given authentication service
- Gets the mfa request context
- Lookup the mfa data for a specific service
- Returns true if the value matches the specified attribute pattern
- Attempts to extract multifactor authentication method
- Checks for mfa - role attributes
- Determine the default authentication method
- Encodes the given byte buffer to the given output buffer
- Encodes the given raw ByteBuffer to the given character buffer
- Perform the actual execution
- Gets the primary principal
- Check whether there are more than the requested authentication method
- Add the ticket to the flow scope
- Generate the MFA event
- Extracts the service for the given request
- Create ticket granting ticket
- Submit the request
- Returns true if the specified service is equal
- Verify a signature response
- Build an event from the context
- Resolve mfa roles
- Get person to greet
- Handles authentication
- Validates the authentication method for this validation request
- Initializes the framework properties
- Generate a signed request
cas-mfa Key Features
cas-mfa Examples and Code Snippets
{
"@class" : "org.jasig.cas.services.RegexRegisteredService",
"serviceId" : "^https://.*",
"properties" : {
"@class" : "java.util.HashMap",
"authn_method" : {
"@class" : "org.jasig.cas.services.DefaultRegisteredServiceProperty",
# Multifactor Authentication Messages
UNACCEPTABLE_AUTHENTICATION_METHOD=Ticket ''{0}'' did not fulfill the required authentication method ''{1}''.
UNRECOGNIZED_AUTHENTICATION_METHOD=This CAS server does not recognize the authentication method [''{0}
{
"@class" : "org.jasig.cas.services.RegexRegisteredService",
"serviceId" : "^https://.*",
"properties" : {
"@class" : "java.util.HashMap",
"authn_method" : {
"@class" : "org.jasig.cas.services.DefaultRegisteredServiceProperty",
Community Discussions
Trending Discussions on cas-mfa
QUESTION
I have CAS 6.2.x running in Kubernetes building the image from this repo. I am passing in the cas.properties
file via configmap.I have it wired up against Active Directory and am able to login with the Username/Password. I am now working to enable MFA with the Google Authenticator plugin. I have this working as well if I force the flow globally with the following:
cas.authn.mfa.global-provider-id=mfa-gauth
When I try to use the values described here for Multifactor Authentication: Principal Attribute Trigger it doesn't send me to the MFA flow. These are the settings that I have set:
cas.authn.ldap[0].principalAttributeList=userPrincipalName,cn,givenName,sAMAccountName,memberOf
cas.authn.mfa.global-principal-attribute-name-triggers=memberOf
cas.authn.mfa.global-principal-attribute-value-regex=ForceMfa
When I log in these are the values returned back for memberOf
:
memberOf
[CN=Group2,OU=MyOu,DC=subdomain,DC=domain,DC=local, CN=Group1,OU=MyOu,DC=subdomain,DC=domain,DC=local, CN=ForceMfa,OU=MyOu,DC=subdomain,DC=domain,DC=local]
Principal
I used Misagh blog post as a guide.
If I change the trigger and regex to sAMAccountName
and my username it then works as expected. Not sure if I need to change the regex format to find the group name or if I just have something else wrong. It just seems like the regex is not finding a match for some reason as the settings seem to be working for me, just not with memberOf
.
Thank you
...ANSWER
Answered 2020-Jul-20 at 14:52Consider switching this to:
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install cas-mfa
You can use cas-mfa like any standard Java library. Please include the the jar files in your classpath. You can also use any IDE and you can run and debug the cas-mfa component as you would do with any other Java program. Best practice is to use a build tool that supports dependency management such as Maven or Gradle. For Maven installation, please refer maven.apache.org. For Gradle installation, please refer gradle.org .
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page