Showing posts with label java. Show all posts
Showing posts with label java. Show all posts

Monday, June 13, 2016

Java video finish Funspots Excel formatting activity

This video explains what Java is:


After watching the video you will have the rest of the hour to work on completing the Funspots formatting activity in Excel.  Once you complete the activity look to see if you have any missing assignments, and if you do get those completed and handed in.

If you have everything done you can either go to the practice websites, work on homework from another class, or read.
Read More..

Sunday, March 13, 2016

Vocab week 10 Java video Practice and timed writing

This is the last week of vocab (try to contain your excitement), so for anyone who is responsible for this weeks vocab definitions they need to be completed by tomorrow night. Well begin today with the following video on Java:


After watching the video we are going to go to one of the practice websites and practice.  Then, well take another speed test today to see how you are doing speed-wise.  At this point many of you will notice that you are reaching the apex of your ability - in other words youll probably recognize that it is getting more difficult to improve your speed.  Thats normal.  In fact, at this point, any improvement will likely be small (in other words if your speed does improve it may only be by one or two words per minute).  Complete 3 of the timed writings and write your best one on the sheet on the wall.




Read More..

Saturday, July 19, 2014

Java Security Interview Questions and Answers Single Sign On i e SSO with Spring 3 Security



Q. Can you provide a high level overview of the "access control security" in a recent application you had worked?
A. As shown below, SiteMinder is configured to intercept the calls to authenticate the user. Once the user is authenticated, a HTTP header "SM_USER" is added with the authenticated user name. For example "123". The user header is passed to Spring 3 security. The "Security.jar" is a custom component that knows how to retrieve user roles for a given user like 123 from a database or LDAP server. This custom component is responsible for creating a UserDetails Spring object that contains the roles as authorities. Once you have the authorities or roles for a given user, you can restrict your application URLs and functions to provide proper access control.







Q. What is SSO (i.e. Single Sign-ON)?
A. Single sign-on (SSO) is a session/user authentication process that permits a user to enter one name and password in order to access multiple applications. The process authenticates the user for all the applications they have been given rights to and eliminates further prompts when they switch applications during a particular session. For example, SiteMinder, TivoliAccessManager (i.e. TAM), etc provides SSO. As shown in the diagram above SiteMinder authenticates the user and adds the SM_USER HTTP header to the application. It removes all the "SM" headers and add them after authenticating the user. This prevents amy malicious headers being injected via the browser with plugins like "Firefox Modify headers".


Q. How will you go about implementing authentication and authorization in a web application?
A. Use SSO application like SIteminder or Tivoli Access Manager to authenticate users, and Spring security 3 for authorization as described in the following Spring 3 security tutorials. Spring security pre-authentication scenario assumes that a valid authenticated user is available via  either Single Sign On (SSO) applications like Siteminder, Tivoli, etc or a X509 certification based authentication. The Spring security in this scenario will only be used for authorization. The links to the tutorials below demonstrates this with code.


Q. Can you describe your understanding of SSL, key stores, and trust stores?
A.  SSL, key stores and trust stores


Q. What tools do you use to test your application for security holes?
A. These tests are known as PEN (i.e. penetration) testing or security vulnerability testing. There are tools like
  • SkipFish (web application security scanner) from Google.
  • Tamper data from Firefox. 

Q. What is a two factor authentication?
A. Two-factor authentication is a security process in which the user provides two means of identification. This includes
  • something you have and something you know. For example, a bank card is which something you have and a PIN (i.e. Personal Identification Number) is something you know.
  • two forms of identification like password and a biometric data like finger print or voice print. Some security procedures now require three-factor authentication, which involves possession of a physical token and a password, used in conjunction with biometric data. 
Q. What are the different layers of security?
A.

Application-Layer Security: For example, Spring 3 Security, JAAS (Java Authentication and Authorization) that provides a set of APIs to provide authentication and authorization (aka access control), etc. JAAS provides pluggable and extendable  framework for programmatic user authentication and authorization at the JSE level (NOT JEE level). JAAS provides security at the JVM level (e.g. classes, resources). JAAS is the the core underlying technology for JEE Security. Spring security tackles security at the JEE level (e.g. URLs, Controller methods, service methods, etc)

Transport-Layer Security: Java Secure Sockets Extension (JSSE) provides a framework and an implementation for a Java version of the Secure Sockets Layer (SSL) and Transport Layer Security (TLS) protocols and includes functionality for data encryption, server authentication, message integrity, and optional client authentication to enable secure Internet communications. (TLS) 1.0 / (SSL) 3.0, is the mechanism to provide private, secured and reliable communication over the internet between the client and the server. It is the most widely used protocol that provides HTTPS for internet communications between the client (web browsers) and web servers.

Message-Layer Security: In message-layer security, security information is contained within the SOAP message and/or SOAP message attachment, which allows security information to travel along with the message or attachment. For example, the credit card number is signed by a sender and encrypted for a particular receiver to decrypt. Java Generic Security Services (Java GSS-API) is a token-based API used to securely exchange messages between communicating applications. The GSS-API offers application programmers uniform access to security services on top of a variety of underlying security mechanisms, including Kerberos. The advantage of this over point to point transport layer security is that the security stays with the message over all hops and after the message arrives at its destination. So, it can be used with intermidiaries over multiple hops and protocols (e.g. HTTP, JMS, etc). The major disadvantage is that it is more complex to implement and requires more processing.

Note: Simple Authentication and Security Layer (SASL) is a framework for authentication and data security in Internet protocols.  SASL is an Application-Layer security that supports TLS to compliment the services offered SASL.

Note: The Java security API is complicated and Spring security as demonstrated via the above tutorials might be a better alternative.

    Read More..

    Saturday, May 24, 2014

    Java J2EE CV or Resume tips





    A CV or a Resume is an essential marketing tool in your job search or career progression. When writing a CV look at it from your employers point of view in order to stand out against the competition (i.e. other candidates). Preparing effective CV presents a real challenge due to length, which can make them boring and result in important information being buried or lost in a long document. As a result your CV should be concise, your top skills and experience should be prioritized in the first or upper most section of your CV, well organized with the following sections: Profile, Achievements, Experience & Skills and last but not least your CV should be nicely formatted. Refer sample Java/J2EE Resume PDF download.



    Profile: Convey your technical expertise in Java/J2EE . Dont list all the skills here (you can include the rest in the skills section).Just pick your major strengths like design experience, team lead experience, mentoring experience etc and highly sought after and relevant experience like Spring, Hibernate, EJB, JSF etc. Also can mention the relevant industry experience like finance, insurance, telecommunications, software house etc.


    • 4 years of experience in design/development of Java/J2EE (Sockets, EJB, RMI,Servlets, JSP,JMS,JDBC,JNDI etc) based systems.
    • 3 year experience in financial sector and 1 year in insurance sector.
    • 2 year working experience and excellent knowledge in Spring, Hibernate and JSF.
    • Experience in Websphere, MQSeries, and JBoss
    • Solid background in Object-Oriented analysis and design.Good at various design patterns (GoF, J2EE patterns etc) and UML.
    • Excellent knowledge of XML, SQL, XSL and Web Service.
    • Experience in Test Drive Development (TDD) and agile methodology.

    Achievements:
    Convey your achievements in Java/J2EE, which had benefited the application, department or organization. In addition to technical skills bring your personal qualities like passion, ability to communicate effectively with technical staff as well as business users (i.e non-technical), problem solving skills, ability to think in high level as well as drill down to detail, ability to handle pressure, ability to recognize and respond to objectives of an organization, ability to work in a team as well as independently etc. You can also mention your teams achievements in addition to your specific contribution.

    • Migrated a poorly performing and outdated application to Spring, Hibernate, JMS and JSF based system for MQR Banking Ltd.
    • Identified and fixed performance and transactional issues for Fine Australia Technology.
    • Reduced the monthly commission Java based batch runs from 75 hours to 18 hours at Sure Insurance Corporation .
    • Mentored junior developers, provided technical guidance and motivated them to meet the tight deadlines at Online Banking Ltd.

    Experience:
    List your current and previous posts (Most recent first) and how you applied some of the major strengths and highly sought after skills in Java/J2EE. List all the major projects you have worked on and your specific contribution. Also mention where you applied some of the key areas like design, fixing performance issues, concurrency issues, transactional issues, memory leaks etc. Also be aware not to turn this section into only technical stuff. In addition to technical areas mention any team lead experience or mentoring junior developers, how you managed to meet a tight deadline?, how you worked well with the business users? how well you applied your knowledge? etc.


    IT Skills: List all your current & relevant Java/J2EE related skills. This section is not only vital for the employer but also for the employment agency to match your skills with the employer requirements.

    Finally never settle with the first draft and always find ways to keep improving your CV. Spending enough time in your key marketing tool is definitely worth it.
    Read More..