j2ee security with apache shiro

24
Webinar J2EE Security with Apache SHIRO 16 th April, 2013

Upload: cygnet-infotech

Post on 10-May-2015

3.470 views

Category:

Technology


0 download

DESCRIPTION

In this webinar, we focus specifically on how Apache SHIRO can help developers in providing better security architecture. You will also learn the following Application security is gaining critical attention due to increase in cyber-attacks and risks of business and financial losses. In the context of J2EE development and Java web application development, security concerns are addressed through multiple means. This informative 45 min session to understand approaches and strategies for building secure web applications. - Planning for Security: Authentication, Authorization, Session Management and Cryptography - Comparing Different Approaches for Security: JAAS, Spring, Grails - How to use the simplified universal approach of Apache SHIRO - A LIVE DEMO on using SHIRO to secure web applications If you have any query please write to us at [email protected]

TRANSCRIPT

Page 1: J2EE Security with Apache SHIRO

WebinarJ2EE Security with Apache SHIRO

16th April, 2013

Page 2: J2EE Security with Apache SHIRO

Agenda

Authentication, Authorization, Session Management and Cryptography

Introduction on market trending security framework

Discussion on market trending security framework

Grails inbuilt security

Live Demo on integrating shiro security with grails web application

Conclusion

Q&A

Page 3: J2EE Security with Apache SHIRO

Agenda

Authentication, Authorization, Session Management and Cryptography

Introduction on market trending security framework

Discussion on market trending security framework

Grails inbuilt security

Live Demo on integrating shiro security with grails web application

Conclusion

Q&A

Page 4: J2EE Security with Apache SHIRO

What is Authentication, Authorization & Session Mgmt.?

Authentication: prove genuineness

Authorization: process of granting approval or permission onresources.

Session Management: Session management means authenticateonce and confirms on every action that the user is the one whoprovided the original credentials.

Key cornerstones in the security of a system.

Authentication and authorization are two very related, and yetseparate, concepts.

Where Authentication deals with identifying a user, the Authorizationdetermines what a user is allowed to do.

Page 5: J2EE Security with Apache SHIRO

What is Authentication, Authorization & Session Mgmt.?

Designers and developers should leverage authorization, authentication and session

management capabilities as much as possible.

Page 6: J2EE Security with Apache SHIRO

Agenda

Authentication, Authorization, Session Management and Cryptography

Introduction on market trending security framework

Discussion on market trending security framework

Grails inbuilt security

Live Demo on integrating shiro security with grails web application

Conclusion

Q&A

Page 7: J2EE Security with Apache SHIRO

Introduction on market trending security framework

Java Authentication and Authorization Service or JAAS

Apache Shiro Security

Spring Security

Page 8: J2EE Security with Apache SHIRO

Agenda

Authentication, Authorization, Session Management and Cryptography

Introduction on market trending security framework

Discussion on market trending security framework

Grails inbuilt security

Live Demo on integrating shiro security with grails web application

Conclusion

Q&A

Page 9: J2EE Security with Apache SHIRO

1 Javax.security to be imported.

Discussion on market trending security framework

JAAS Security Configuration Steps:

2 Implement LoginModule Interface

3 Override methods like initialize, login, commit, abort, logout.

4 Implement call back handlers

5 Implement privilege action

6 Configure jaas policy files

7 Implement Filters

Page 10: J2EE Security with Apache SHIRO

Discussion on market trending security framework

Spring Security Configuration Steps:

2 Install spring security libraries

3 Create & Configure spring-security.xml file in class path.

4 Provide @secured annotation above methods based on the privileges

Install spring core libraries1

Page 11: J2EE Security with Apache SHIRO

Discussion on market trending security framework

Shiro Security Configuration Steps:

2 Create and configure shiro.ini file in class path

3 Provide roles and privileges in shiro.ini

Install shiro libraries and required libraries to project1

Page 12: J2EE Security with Apache SHIRO

Discussion on market trending security framework

Shiro Spring Security JAAS

Simplicity Bit Complicated (Not easily

fathomable)

More complicated.

Enterprise session management is

supported

Not Supported Not supported

Better cryptography simplified cryptography

Grails plugin available Grails plugin available Grails plugin is not available

Work and Gel with every

environment Spring is not

mandatory

Dependent on Spring core libraries Part of Java and can work and

get with every environment

Page 13: J2EE Security with Apache SHIRO

Agenda

Authentication, Authorization, Session Management and Cryptography

Introduction on market trending security framework

Discussion on market trending security framework

Grails inbuilt security

Live Demo on integrating shiro security with grails web application

Conclusion

Q&A

Page 14: J2EE Security with Apache SHIRO

Grails inbuilt security

GORM - SQL escaped to prevent SQL injection attacks

The default scaffolding templates HTML escape all data fields when displayed

Link creating tags use appropriate escaping mechanisms to prevent code injection

Codecs to prevent injection attacks.

Page 15: J2EE Security with Apache SHIRO

Grails inbuilt security

class SecurityFilters {

def filters = {

loginCheck(controller: '*', action: '*') {

before = {

if (!session.user && actionName != "login") {

redirect(controller: "user", action: "login")

return false

}

}

}

}

}

Page 16: J2EE Security with Apache SHIRO

Agenda

Authentication, Authorization, Session Management and Cryptography

Introduction on market trending security framework

Discussion on market trending security framework

Grails inbuilt security

Live Demo on integrating shiro security with grails web application

Conclusion

Q&A

Page 17: J2EE Security with Apache SHIRO

Integrating shiro security with existing application

Application Diagram without SHIRO

Page 18: J2EE Security with Apache SHIRO

Integrating shiro security with existing application

Page 19: J2EE Security with Apache SHIRO

Agenda

Authentication, Authorization, Session Management and Cryptography

Introduction on market trending security framework

Discussion on market trending security framework

Grails inbuilt security

Live Demo on integrating shiro security with grails web application

Conclusion

Q&A

Page 20: J2EE Security with Apache SHIRO

Conclusion

With shiro it is quite easy to configure security, shiro takes care of most of the issues

through its default settings, existing Java security mechanisms like JAAS, Spring security

are too confusing, complex etc.

Page 21: J2EE Security with Apache SHIRO

Agenda

Authentication, Authorization, Session Management and Cryptography

Introduction on market trending security framework

Discussion on market trending security framework

Grails inbuilt security

Live Demo on integrating shiro security with grails web application

Conclusion

Q&A

Page 22: J2EE Security with Apache SHIRO

Questions and Answers

Page 23: J2EE Security with Apache SHIRO

Write us on [email protected] to get a free demo Session

Free Consultation

Page 24: J2EE Security with Apache SHIRO

Contact Us

Email: [email protected]

Website: www.cygnet-infotech.com

Facebook

LinkedIn

Twitter - @CygnetInfotech

Skype – cygnet-infotech-pvt-ltd

IndiaCygnet Infotech Pvt Ltd. 2A, Manikyam, Opp. Samudra Annexe, Nr. Shilp Cross Roads, Off. C. G. Road, Navrangpura, Ahmedabad, Gujarat, India. Tel: +91-79-30487400; Fax: +91-79-30487422

USACygnet Infotech LLC. Mack-Cali Centre III, 140 E, Ridgewood Avenue, Suite 415 ST, Paramus, NJ 07652.Tel: +1-201-995-7444; Fax : +1-201-221-8516