This is the top-level repository for the Whydah components.
- For a high-level feature description, see http://getwhydah.com
- Change / Release-log https://wiki.cantara.no/display/whydah/Whydah+2.6+-+Release+Log
For status of the different modules
- Overview (Not really maintained and updated)
- Installation, Architecture and Development
- Source Code
- See https://wiki.cantara.no/display/whydah/Whydah+Releases
- Whydah 2.13 (2022-08) released
- - - https://github.com/Cantara/Whydah-SSOLoginWebApp
- - - https://github.com/Cantara/Whydah-SecurityTokenService
- - - https://github.com/Cantara/Whydah-UserAdminService
- - - https://github.com/Cantara/Whydah-UserIdentityBackend
- - - https://github.com/Cantara/Whydah-UserAdminWebApp
- - - https://github.com/Cantara/Whydah-Admin-SDK
- - - https://github.com/Cantara/Whydah-Java-SDK
- - - https://github.com/Cantara/Whydah-TypeLib
- - - https://github.com/Cantara/Whydah-CRMService
- - - https://github.com/Cantara/Whydah-StatisticsService
- - - https://github.com/Cantara/Whydah-OAuth2Service
- - - https://github.com/Cantara/Whydah-SPAProxyService
wget -qO- https://get.docker.com/ | sh
sudo docker pull whydah/whydah-all-in-one-image
sudo docker run -it -p 80:9999 -p 9990:9990 -p 9992:9992 -p 9995:9995 -p 9996:9996 -p 9997:9997 -p 9998:9998 whydah/whydah-all-in-one-image
## Start and debug whydah
sudo docker run -it -p 80:9999 -p 9990:9990 -p 9992:9992 -p 9995:9995 -p 9996:9996 -p 9997:9997 -p 9998:9998 whydah/whydah-all-in-one-image /bin/bash
# run ./start_whydah.sh in image
wget -qO- http://localhost:9998/tokenservice/health
wget -qO- http://localhost:9997/sso/health
wget -qO- http://localhost:9992/useradminservice/health
wget -qO- http://localhost:9996/useradmin/health
sudo docker pull whydah/java9-whydah-all-in-one
sudo docker run -it -p 80:9999 -p 9990:9990 -p 9992:9992 -p 9995:9995 -p 9996:9996 -p 9997:9997 -p 9998:9998 whydah/java9-whydah-all-in-one
- Go to Whydah http://localhost:9997/sso/welcome (admin/whydahadmin)
Some ready-built docker images
- Docker hub [https://registry.hub.docker.com/repos/cantara/]
WhydahApplicationSession applicationSession = new WhydahApplicationSssion(stsURL, appCtedential);
WhydahUserSession uSession = new WhydahUserSession(applicationSession,userCredential);
if (userSession.hasRole("MyAppRole"){
// do admin privilege operation
}
// Execute a POST to authenticate my application
String applicationTokenXMlString = Request.Post("https://sso.whydah.net/sso/logon")
.bodyForm(Form.form().add("applicationcredential", myAppCred).build())
.execute().returnContent().asBytes();
// authenticate with username and password (UserCredential)
String userTokenXMlString = Request.Post("https://sso.whydah.net/sso/user/"+appTokenID+"/"+"/usertoken/")
.bodyForm(Form.form().add("apptoken", aToken)
.add("usercredential", new UserCredential(username,password).toXML()).build())
.execute().returnContent().asBytes();
// That's all you need to get a full user database, IAM/SSO, Facebook/OAUTH support ++
boolean hasEmployeeRoleInMyApp = $(usertoken)
.xpath("/usertoken/application[@ID="+myApplicationId+"]/role[@name=\"Employee\"");
We plan to build a software-defined network application to control and handle various configuration of Whydah production setups. As they are developed they will arrive and be listed and documented here.
To make it easy to adopt and evolve Whydah components, we'll make ready-to use Docker containers of all the Whydah modules, both as Docker images and the corresponding Dockerfile-configurations to make it easy to just grab a complete component or adjust and build your own.
- OpenLdap ansible configuration
- OpenLdap dockerfile
- UIB all-in-one image
- UIB all-in-one dockerfile
- UAS Dockerfile
- STS Dockerfile
- SSOLWA Dockerfile
- UAWA Dockerfile
For those who prefer using Ansible to provision solutions, we suggest that you fork our general ansible provisioning repository on github and adjust it according to youur needs