Backlog 1 - raisercostin/software-wiki GitHub Wiki
- programatically load/save users to ForgeRock in ForgeRockUsersDao class.
- choose json library/or manual
- choose http library
- read username and email columns
- read ignoring a header
- read with swapped columns but with same names: username, email, ...
- Import 100 users from a csv file ( http://edoceo.com/utilitas/csv-file-format )
- Project built with maven.
- Make a test with junit that checks user creation.
- Make test pass.
- csv library ~ stackoverflow.com > Questions > 10462507 > Any-good-library-to-read-and-write-csv-files
- read users from a file
- write users to a file
- Export 100 users to a csv file.
- Generate 100 users to a csv file.
- - add the project to
user/<username>
branch. The project means: pom.xml, java sources and java test sources. - - to read Chapter 2 from Test Driven Development
- - read csv files. Some advice: https://dzone.com/articles/how-to-read-csv-files-in-java
- configure Travis Continuous Integration Server
- CsvExporter and CsvExporter2 to merge (according to DRY)
- add headers with username/email to csv, to survive column addition/deletion/move
username,count,email,bla bla,dada a,1,ae,a,a b,2,be,b,b c,3,ce,c,c
- optional - try to merge after file/folder renames/movement.
- Comenzi:
cat c:\tools\cmder\config\.history
#git checkout -b user/andrei origin/user/costin
mvn eclipse:eclipse
git checkout origin/user/costindfsasdfas
git checkout -b user/andrei origin/user/costingdsfgfdsgd
git checkout master
git merge user/costin
git commit -am "refactored"
curl
curl -X GET --header 'Accept: application/json' --header 'X-Requested-With: Swagger-UI' 'http://dcs-xps:8080/openidm/managed/user?_queryId=query-all'
--header "X-OpenIDM-Username: openidm-admin" \
--header "X-OpenIDM-Password: openidm-admin"
mvn eclipse:eclipse -DdownloadSources
#git checkout -b user/andrei origin/user/costingdsfgfdsgd
#git checkout -b user/andrei origin/user/costingit pull
git add -A
git status
git commit -am "improve features"
git push
git pull
git branch -a
curl -X GET ^
curl -X PUT --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'If-None-Match: *' --header 'X-Requested-With: Swagger-UI' -d '{ \
"_id": "200", \
"mail": "raisercostin+dcsi3%40gmail.com", \
"userName": "costin3", \
"sn": "sn200", \
"givenName": "costin3name" \
---------------------------
cmd
- Go to the project path using:
cd %PATH%
- Be aware that the project was cleaned so you should compile it first.
mvn compile exec:java -Dexec.mainClass=ro.dcsi.internship.App
- Setup the project to work with your IDE. For eclipse, use:
mvn eclipse:eclipse
-
prereq
-
java installed
- to start idm server
-
maven installed
- to have a prj with maven
-
cmder installed for windows
- to be able to use curl like in bash
-
git installed
- to have curl
-
-
check server
-
install idm
-
check connection
- server
- user
- openidm-admin
- pass
- openidm-admin
-
-
What can be fixed from a security point of view?
- change the admin password
- change the admin username
- remove access via http
- use a secure connection
- add access via https
-
start a maven project
-
maven-archetype-quickstart
-
mvn archetype:generate
-
options
-
java8
- java8
- 7: remote -> org.spilth:java8-junit4-quickstart
- 2
-
quickstart
- maven-archetype-quickstart
-
-
config
- groupId: ro.roweb.dcsi
- artifactId: intern
- version: 1.0-SNAPSHOT
- package: ro.roweb.dcsi
-
-
choose the best generated one
- compare via totalcmd
- folders
- files
- change some
- compare via totalcmd
-
generate eclipse project for maven
-
import project in eclipse
-
stake on ide wars
- eclipse
- IntelliJ IDEA
- netbeans
-
start adding git versioning
-
Import 100 users from a csv file.
- Project built with maven.
- Make a test with junit that checks user creation.
- Make test pass.
- csv library
-
Export 100 users to a csv file.
-
What if we have 1 000 000 users?
-
Add cli client. A console with some parameters.
-
steps
-
GET http
- +HTTP
-
app security
- user
- identity
- authentication
- authorization
- user
-
infrastructure security
- PKI arhitecture
- SSL
- TLS
-
- +HTTP
-
GET REST json
- +JSON
- +REST
-
PUT/CREATE
- +refactor
-
CRUD SWAGGER
- YML
- as document
- as client
- as server
-
HATEOAS
-