[Fiware-developer-experience] Doubts about the architecture/application

Pablo Fernández Moniz pablofernandezmoniz at gmail.com
Wed Jul 15 19:04:26 CEST 2015


Hi!
 We have some development progress, and we want to share it and raise some
questions Architecture overview:

Actually we have an implementation like this.



   -

   Represented in white color we have the previous containers that were in
   the docker-compose.
   -

      mongodb: It stores the database of Orion. It has attached the
      mogodbdata volume.
      -

      orion: It has the Context Broker installed. It uses the mogodb image
      as database.
      -

      devguide: It has implemented the API for restaurant management. It
      interacts with orion and it acts like an abstraction layer.
      -

   Blue elements have been added to the docker compose by the ULPGC group.
   -

      idm: It runs an instance of the Identity Management. Users and roles
      must be stored here.
      -

      authzforce: Image needed by idm.
      -

   Finally, elements that have not been added yet to a container are in
   yellow.
   -

      initUsers.py: It is a python script that creates the first users and
      roles in Identity Manager.
      -

      flask server: It hosts the web and acts as intermediate layer between
      users and the Identity Manager.




[image: Captura de pantalla 2015-07-15 a las 13.07.42.png]

Doubts that have arisen

We need to initialize the IdM with default values ( for example roles ) so,
for the moment, we developed a small python script (initUsers.py) to do
that.

Due to cross domain restriction, we cannot perform petitions directly to
the IdM from the front end. We solved this using an intermediate layer in
the server that controls the user creation and the login . Another solution
could be to use a proxy.

Furthermore, in order to allow users to sign up, we need  an administrative
credential to create the new user entity. If this credential is used from
the front end, it could be a security risk. So, we think that the actual
approach of managing the operations related to the IdM from the server side
is correct.

On the other hand, we have started to make some development in the server
side. We are using python since we have experience with it and we have had
good results using it. We also have good feelings with other languages such
as PHP.


We don’t know which language are you using at this moment, but we think
that the less different languages we use the better for making an easy
guide.

Finally, we suggest that we should add a new image that contains the web
server.


What do you think?


KR, and sorry for the large email :)


ULPGC team


-- 

Pablo Fernández Moniz
GIT Analyst

Web <http://www.pablofm.com>    Linkedin
<http://www.linkedin.com/in/pablofernandezmoniz/>   Twitter
<http://www.twitter.com/monizpablo>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.fiware.org/private/fiware-developer-experience/attachments/20150715/54305340/attachment.html>


More information about the Fiware-developer-experience mailing list

You can get more information about our cookies and privacy policies clicking on the following links: Privacy policy   Cookies policy