Rails + Angular . Seguretat?

16 views
Skip to first unread message

Victor Manuel Martin-Romo

unread,
Mar 11, 2016, 6:30:09 PM3/11/16
to Gironaonrails
Bones,

Fa un dies que estic buscant info sobre la integració, o bé, sobre la
correcta integració de Rails i AngularJS, amb l'objectiu de valorar la
dificultat d'aquesta integració i/o poder-se anticipar a possibles
problemes.

No se si estic equivocat, però veig que la problemàtica mes típica es a
nivell de seguretat (o el tema del asset pipe line i routing, que per el
que veig ja hi ha gems o llibreries que ho solucionen).

La veritat, es que ja he llegit tant info que tinc el cap fet un
"bombo".

Es per això que agrairé que si algú ha tingut la ocasió de treballar en
alguna aplicació backend Rails+AngularJs em comentes per sobre quins
serien els punts a tenir en compte, o bé, em donés la valoració de la
seva experiència.

En principi, hauria d'estar tot sota el mateix domini amb el que crec
que ja es solucionen problemàtiques.

Merci !
VM

Emili Parreño

unread,
Mar 15, 2016, 8:00:21 AM3/15/16
to gironaonrails
Jo estic treballant en una app que te el frontend an Angular, suposo
que ets refereixes a CORS i els problemes quan les apps estan a
diferents dominis.
Si el que vols es fer un client totalment independent i que la app
Rails sigui una api, amb Angular vas be, si els vols integrar per
fer-lo servir a les vistes per posar JS crec que no es una bona idea,
per aixo hi ha solucions mes simples.
> --
> Has recibido este mensaje porque estás suscrito al grupo "Girona on Rails"
> de Grupos de Google.
> Para anular la suscripción a este grupo y dejar de recibir sus mensajes,
> envía un correo electrónico a gironaonrail...@googlegroups.com.
> Para publicar una entrada en este grupo, envía un correo electrónico a
> girona...@googlegroups.com.
> Visita este grupo en https://groups.google.com/group/gironaonrails.
> Para obtener más opciones, visita https://groups.google.com/d/optout.



--
Emili Parreño
www.eparreno.com

David Ramirez

unread,
Mar 15, 2016, 8:12:57 AM3/15/16
to girona...@googlegroups.com
+1 Emili

Si el que vols es fer una solució Angular pel front + una Rails API pots mirar-te aquesta gema: https://github.com/lynndylanhurley/devise_token_auth

Hi he l’equivalent per la part d’Angular: https://github.com/lynndylanhurley/ng-token-auth

Pel tema del CORS hi ha rack-cors que ben configurat hauria de ser suficient.

S’integren mol bé. Jo l’he fet servir en un parell de projectes simples i de moment em dona bon resultat.

Salut!

david ramirez
--------------------------------------------
freelance ruby on rails developer

Victor Manuel Martin-Romo

unread,
Mar 15, 2016, 2:41:49 PM3/15/16
to girona...@googlegroups.com
Be,

Certament el que voldria fer es fer-ho tot dins la mateixa "App" rails,
però sense fer barreges, és a dir, que la part del frontend tiri 100% de
una Api rest. I que aquest frontend no deixin de ser "estàtics".

Entenc que d'alguna forma ja es el que m'esteu comentant. Tot i això no
descarto, si ha de simplificar el desenvolupament i/o integració, fer
que la part de frontend estigui servida per un Apache com a contingut
estic en un altre domini o subdomini.

Aleshores dels vostres comentaris, dedueixo que he de tenir en compte
els següents punts:

1. Mirar-me el tema de l'autenticació via token de devise
2. Mirar-me el tema de l'autenticació via token al client.
3. Si finalment es munta en dominis diferents, tenir en compte de
activar el tema del CORS.
4. Descartar totalment fer-lo servir a mitges tintes (com si fos un
JQuery).

Perfecte, pues ale, vaig a mirar el que cometeu i a veure que tal.

Moltes gracies!

Victor M.


A 15.03.2016 13:12, David Ramirez escrigué:
> +1 Emili
>
> Si el que vols es fer una solució Angular pel front + una Rails API
> pots mirar-te aquesta gema:
> https://github.com/lynndylanhurley/devise_token_auth [4]
>
> Hi he l’equivalent per la part d’Angular:
> https://github.com/lynndylanhurley/ng-token-auth [5]
>
> Pel tema del CORS hi ha rack-cors que ben configurat hauria de ser
> suficient.
>
> S’integren mol bé. Jo l’he fet servir en un parell de projectes
> simples i de moment em dona bon resultat.
>
> Salut!
>
> DAVID RAMIREZ
>>> [1].
>>> Para obtener más opciones, visita
>>> https://groups.google.com/d/optout [2].
>>
>> --
>> Emili Parreño
>> www.eparreno.com [3]
>>
>> --
>> Has recibido este mensaje porque estás suscrito al grupo "Girona on
>> Rails" de Grupos de Google.
>> Para anular la suscripción a este grupo y dejar de recibir sus
>> mensajes, envía un correo electrónico a
>> gironaonrail...@googlegroups.com.
>> Para publicar una entrada en este grupo, envía un correo electrónico
>> a girona...@googlegroups.com.
>> Visita este grupo en https://groups.google.com/group/gironaonrails.
>> Para obtener más opciones, visita
>> https://groups.google.com/d/optout.
>
> --
> Has recibido este mensaje porque estás suscrito al grupo "Girona on
> Rails" de Grupos de Google.
> Para anular la suscripción a este grupo y dejar de recibir sus
> mensajes, envía un correo electrónico a
> gironaonrail...@googlegroups.com.
> Para publicar en este grupo, envía un correo electrónico a
> [1].
> Para acceder a más opciones, visita
> https://groups.google.com/d/optout [2].
>
>
> Links:
> ------
> [1] https://groups.google.com/group/gironaonrails
> [2] https://groups.google.com/d/optout
> [3] http://www.eparreno.com
> [4] https://github.com/lynndylanhurley/devise_token_auth
> [5] https://github.com/lynndylanhurley/ng-token-auth

Victor Manuel Martin-Romo

unread,
Mar 15, 2016, 6:00:06 PM3/15/16
to girona...@googlegroups.com
David,

Fins on jo sabia Device, tenia aquesta opció :token_authenticatable. És
historia ja això?

Per el que veig, la Gem que comentes tu "devise_token_auth", és una
altre Gem independent del Device. Que s'ha de muntar com un complement
al Device. Aleshores, dedueixo que no son incompatibles i que a més es
pot continuar mantenint els dos mètodes d'autentificació en funció de si
s'accedeix a l'API o a una part de l'aplicació que no sigui via API. Es
correcte això?

Ja em comentes,
Victor M.









A 15.03.2016 13:12, David Ramirez escrigué:
> +1 Emili
>
> Si el que vols es fer una solució Angular pel front + una Rails API
> pots mirar-te aquesta gema:
> https://github.com/lynndylanhurley/devise_token_auth [4]
>
> Hi he l’equivalent per la part d’Angular:
> https://github.com/lynndylanhurley/ng-token-auth [5]
>
> Pel tema del CORS hi ha rack-cors que ben configurat hauria de ser
> suficient.
>
> S’integren mol bé. Jo l’he fet servir en un parell de projectes
> simples i de moment em dona bon resultat.
>
> Salut!
>
> DAVID RAMIREZ
>>> [1].
>>> Para obtener más opciones, visita
>>> https://groups.google.com/d/optout [2].
>>
>> --
>> Emili Parreño
>> www.eparreno.com [3]
>>
>> --
>> Has recibido este mensaje porque estás suscrito al grupo "Girona on
>> Rails" de Grupos de Google.
>> Para anular la suscripción a este grupo y dejar de recibir sus
>> mensajes, envía un correo electrónico a
>> gironaonrail...@googlegroups.com.
>> Para publicar una entrada en este grupo, envía un correo electrónico
>> a girona...@googlegroups.com.
>> Visita este grupo en https://groups.google.com/group/gironaonrails.
>> Para obtener más opciones, visita
>> https://groups.google.com/d/optout.
>
> --
> Has recibido este mensaje porque estás suscrito al grupo "Girona on
> Rails" de Grupos de Google.
> Para anular la suscripción a este grupo y dejar de recibir sus
> mensajes, envía un correo electrónico a
> gironaonrail...@googlegroups.com.
> Para publicar en este grupo, envía un correo electrónico a
> girona...@googlegroups.com.

David Ramirez

unread,
Mar 16, 2016, 6:03:59 AM3/16/16
to girona...@googlegroups.com
Bones Victor,

Ara mateix no se dir-te si pots mantenir els dos sistema d’autentificació però diria que si. De fet, si no recordo malament, jo tinc alguna app petita amb devise-token-auth + activeadmin per separat. O sigui que d’alguna manera s’haurien de poder fer servir els 2 sistemes alhora.

Ja em diràs què tal!

david ramirez

--------------------------------------------
freelance ruby on rails developer

Victor Manuel Martin-Romo

unread,
Apr 12, 2016, 7:04:03 PM4/12/16
to girona...@googlegroups.com
Bones David,

Per fi he aconseguit muntar-ho tot plegat...

Ara que ja ho tinc tot organitzat, estructurat i funcionat... m'han
sorgit dos dubtes molt concrets:

1. Per tal de poder saber certa informació del usuari (rol i altres
coses) m'he guardat l'usuari al $rootScope després de realitzar el
login, però no ho veig del tot clar... ja que es podria modificar
fàcilment (deixant de banda que l'api faci les comprovacions
necessaries). Hi hauria alguna altre estratègia millor?

2. La llibreria ng-token-auth aporta moltes funcionalitats que no vull,
i tot i que devise permet "capar" quines funcionalitats aportes,
m'agradaria saber si es possible fer el mateix en la part del client. He
mirat la documentació i no m'ha semblat veure com configurar-ho. Pot ser
no es necessari?

Ja em comentes,

VM



A 16.03.2016 11:03, David Ramirez escrigué:
> Bones Victor,
>
> Ara mateix no se dir-te si pots mantenir els dos sistema
> d’autentificació però diria que si. De fet, si no recordo malament,
> jo
> tinc alguna app petita amb devise-token-auth + activeadmin per
> separat. O sigui que d’alguna manera s’haurien de poder fer servir
> els
> 2 sistemes alhora.
>
> Ja em diràs què tal!
>
> DAVID RAMIREZ
> --------------------------------------------
> freelance ruby on rails developer
>
>> On 15 Mar 2016, at 23:00, Victor Manuel Martin-Romo
>> <vma...@bibgirona.net> wrote:
>>
>> David,
>>
>> Fins on jo sabia Device, tenia aquesta opció :token_authenticatable.
>> És historia ja això?
>>
>> Per el que veig, la Gem que comentes tu "devise_token_auth", és una
>> altre Gem independent del Device. Que s'ha de muntar com un complement
>> al Device. Aleshores, dedueixo que no son incompatibles i que a més es
>> pot continuar mantenint els dos mètodes d'autentificació en funció de
>> si s'accedeix a l'API o a una part de l'aplicació que no sigui via
>> API. Es correcte això?
>>
>> Ja em comentes,
>> Victor M.
>>
>> A 15.03.2016 13:12, David Ramirez escrigué:
>>
>>> +1 Emili
>>>
>>> Si el que vols es fer una solució Angular pel front + una Rails API
>>> pots mirar-te aquesta gema:
>>> https://github.com/lynndylanhurley/devise_token_auth [4] [4]
>>>
>>> Hi he l’equivalent per la part d’Angular:
>>> https://github.com/lynndylanhurley/ng-token-auth [5] [5]
>>>>> https://groups.google.com/group/gironaonrails [1] [1].
>>>>> Para obtener más opciones, visita
>>>>> https://groups.google.com/d/optout [2] [2].
>>>>
>>>> --
>>>> Emili Parreño
>>>> www.eparreno.com [3] [3]
>>>>
>>>> --
>>>> Has recibido este mensaje porque estás suscrito al grupo "Girona
>>>> on Rails" de Grupos de Google.
>>>> Para anular la suscripción a este grupo y dejar de recibir sus
>>>> mensajes, envía un correo electrónico a
>>>> gironaonrail...@googlegroups.com.
>>>> Para publicar una entrada en este grupo, envía un correo
>>>> electrónico a girona...@googlegroups.com.
>>>> Visita este grupo en https://groups.google.com/group/gironaonrails
>>>> [1].
>>>> Para obtener más opciones, visita
>>>> https://groups.google.com/d/optout [2].
>>>
>>> --
>>> Has recibido este mensaje porque estás suscrito al grupo "Girona on
>>> Rails" de Grupos de Google.
>>> Para anular la suscripción a este grupo y dejar de recibir sus
>>> mensajes, envía un correo electrónico a
>>> gironaonrail...@googlegroups.com.
>>> Para publicar en este grupo, envía un correo electrónico a
>>> girona...@googlegroups.com.
>>> Visita este grupo en https://groups.google.com/group/gironaonrails
>>> [1] [1].
>>> Para acceder a más opciones, visita
>>> https://groups.google.com/d/optout [2] [2].
>>>
>>> Links:
>>> ------
>>> [1] https://groups.google.com/group/gironaonrails [1]
>>> [2] https://groups.google.com/d/optout [2]
>>> [3] http://www.eparreno.com [3]
>>> [4] https://github.com/lynndylanhurley/devise_token_auth [4]
>>> [5] https://github.com/lynndylanhurley/ng-token-auth [5]
>>
>> --
>> Has recibido este mensaje porque estás suscrito al grupo "Girona on
>> Rails" de Grupos de Google.
>> Para anular la suscripción a este grupo y dejar de recibir sus
>> mensajes, envía un correo electrónico a
>> gironaonrail...@googlegroups.com.
>> Para publicar una entrada en este grupo, envía un correo electrónico
>> a girona...@googlegroups.com.
>> Visita este grupo en https://groups.google.com/group/gironaonrails
>> [1].
>> Para obtener más opciones, visita https://groups.google.com/d/optout
>> [2].
>
> --

davidrv

unread,
Apr 14, 2016, 4:08:34 AM4/14/16
to Girona on Rails
Bones Victor!

Doncs em sap greu però no puc ajudar-te gaire en cap de les dues parts. Tot i que he remenat algunes coses de la part d'Angular en els projectes amb que m'he trobat, la part d'autentificació i ng-token-auth l'ha implementat sempre el tiu de fontend.

Em sap greu no poder-te ser més útil amb aquest tema!
Reply all
Reply to author
Forward
0 new messages