Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
This repository was archived by the owner on May 28, 2018. It is now read-only.

Latest commit

 

History

History
History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

README.MD

Outline

HTTPS Server Example - GlassFish

This example demonstrates how to develop secure RESTful "Hello world" web service with a Servlet 2.5 container.

Contents

The example consists of just one Java class:

org.glassfish.jersey.examples.https.glassfish.resources.HelloWorldResource

A resource class that produces a textual response to an HTTP GET request.

The mapping of the URI path space is presented in the following table:

URI path Resource class HTTP methods
/helloworld HelloWorldResource GET

Running the Example

Run the example as follows:

Create war package

mvn clean package

Setup GlassFish 4.0 (installed at AS_HOME=<install_dir>/glassfish4):

Add new security realm called "myRealm"

  • Start GlassFish using asadmin $AS_HOME/bin/asadmin start-domain
  • Access Admin console, assuming the use of default admin port, at http://localhost:4848
  • Navigate in Admin console to: Configurations -> server-config -> Security -> Realms, click on "New..."
  • Create user and set password for user myUser (click on "myRealm" -> "Manage Users" -> "New...");
    • Ensure "User ID:" set to "myUser" and "Group List:" set to "Users"
    • Enter password myPass in "New Password:" and "Confirm New Password:" text fields
  • Add one other user name joeUser (click on "myRealm" -> "Manage Users" -> "New...");
    • Ensure "User ID:" set to "joeUser" and "Group List:" set to "Users"
    • Enter password joePass in "New Password:" and "Confirm New Password:" text fields

Check web.xml and sun-web.xml to understand how role mappings are configured. This blog is also helpful in helping to clarify role mappings. Deploy https-server-glassfish.war as a Web Application

  • Admin console: select Applications, click on "Deploy...". Select file ./target/https-server-glassfish.war
  • or you can use command line: $AS_HOME/bin/asadmin deploy ./target/https-server-glassfish.war

From a web browser, visit:

  • https://localhost:8181/https-server-glassfish-webapp/helloworld
  • Enter either Username myUser and Password myPass or, Username joeUser and Password joePass
  • If entered Username myUser and Password myPass, verify that expected output: Sending "Hello World" to user "myUser" was displayed
  • If entered Username joeUser and Password joePass, verify that expected output: Sending "Hello World" to user "joeUser" was displayed

Running the Negative Example

Run the example as follows:

  1. Create war package

    mvn clean package
    
  2. setup GlassFish 4.0 (installed at AS_HOME=<install_dir>/glassfish4):

    • Follow the steps described in the "setup GlassFish 3.1" section from the previous chapter "Running the Example" but instead of adding the user "joeUser" to the "Group List:" of "Users" set "Group List:" for this user to "OtherUsers"
  3. From a web browser, visit:

Morty Proxy This is a proxified and sanitized view of the page, visit original site.