GPL e regole aziendali riservate in un'applicazione a singola pagina

1

Sto progettando un'applicazione web per un cliente che vuole mantenere private alcune delle sue regole aziendali, abbiamo una NDA. In poche parole, i clienti utilizzano l'app per prenotare un servizio e i dipendenti lo utilizzano per tenere traccia delle prenotazioni. Dal momento che il front end è pubblico (e non affidabile), tutte le decisioni determinate dalle regole aziendali devono avvenire sul server.

Ora, se utilizzo un modulo GPLv3 con licenza molto buono, allora quel SPA deve essere concesso in licenza con una licenza compatibile, come il MIT, perché l'app (incluso il modulo) viene distribuita a chiunque visiti il sito. Va bene, non è possibile nascondere nulla sul front end comunque. Non contribuisco abbastanza alla comunità, e mi piacerebbe pubblicare un esempio di SPA di produzione come open source. Sarebbe un ottimo modo per iniziare un blog.

Il server implementerebbe un'API definita pubblicamente e il front end funzionerebbe con qualsiasi server che implementa l'API. Includerei un semplice server con l'app con licenza GPL in modo che possa essere eseguito da chiunque. Il server non dipende dal client, perché potrebbe essere sostituito con curl.

Quello che mi chiedo è, in questo scenario, potrei mantenere private le regole aziendali uniche del mio cliente in un'app server senza violare le regole o le intenzioni della GPL?

    
posta Dan Ross 17.01.2014 - 17:25
fonte

2 risposte

5

Sì, puoi mantenere le regole aziendali del cliente private e no, non è necessario distribuire il codice lato server.

Se i servizi lato server utilizzavano la libreria GPL, verrebbe a cadere in una particolare eccezione che non considera l'hosting di un servizio Web come distribuzione.
Inizia con questa domanda dalle Domande frequenti sulla FSF.

A company is running a modified version of a GPL'ed program on a web site. Does the GPL say they must release their modified sources?
The GPL permits anyone to make a modified version and use it without ever distributing it to others. What this company is doing is a special case of that. Therefore, the company does not have to release the modified sources.

enfasi aggiunta

Se si tratta dell'app Web (la SPA in questo caso) che include la libreria GPL, è importante ricordare che l'app Web ha una licenza separata dai servizi Web forniti. Poiché tutte le regole aziendali riservate sono sul server, non vi è alcun rischio di divulgazione tramite GPL. La licenza del client non si riferisce necessariamente alla licenza del server.

Nulla nello spirito della GPL imporrebbe la licenza GPL sul server solo perché un client è GPL'd.

Infine, se sei preoccupato che l'API offerta attraverso i servizi possa rivelare qualcosa di riservato, allora avvolgi quei servizi con una facciata che offusca ciò che sta realmente accadendo.

    
risposta data 17.01.2014 - 17:38
fonte
1

È possibile esportare tutte le regole aziendali riservate in un file di configurazione interpretato dal framework lato server. In questo modo è possibile ottenere la licenza del framework in GPL, mentre le regole aziendali possono essere mantenute riservate. Le regole di business probabilmente si applicano solo al tuo unico cliente e chiunque vorrà probabilmente sostituirle con le proprie regole di business, quindi le stai facendo un favore dando loro un posto ovvio per farlo.

Ma tieni presente che ciò renderà il tuo software molto più complesso rispetto alle regole aziendali. Si potrebbe obiettare che ciò si ripagherà semplificando la manutenzione, ma a seconda di quanto siano complesse le regole aziendali, potrebbe essere il contrario a causa del inner plattform effect .

    
risposta data 17.01.2014 - 18:22
fonte

Leggi altre domande sui tag