Strumenti Utente

Strumenti Sito


documentazione_3di_riservata:extraway:extraway_server

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisioneRevisione precedente
Prossima revisione
Revisione precedente
documentazione_3di_riservata:extraway:extraway_server [2009/11/09 13:13] rtirabassidocumentazione_3di_riservata:extraway:extraway_server [Data sconosciuta] (versione attuale) – eliminata - modifica esterna (Data sconosciuta) 127.0.0.1
Linea 1: Linea 1:
-====== eXtraWay Server - Documentazione Riservata ====== 
-Le pagine presenti in questa sezione del manuale **non devono essere diffuse alla clientela per nessun motivo**((3D Informatica non ha reali //segreti industriali// che potrebbero essere svelati con questa documentazione, ma il rischio che si cela nella diffusione di queste informazioni è forse più serio: gli utenti con un minimo d'esperienza potrebbero decidere di intervenire autonomamente sui dati creando danni anche irreparabili o aggirando regole che renderebbero impossibile, ad esempio, ricostruire rigorosamente la cronistoria degli eventi occorsi)).\\  
-In esse sono presenti informazioni sulla struttura interna dei dati ed altri indicazioni su come fare uso degli strumenti o su come configurarli per aggirare limiti o regole di comportamento o per intervenire sui dati in modo //trasversale// al controllo su di essi esercitato dal server eXtraWay.\\  
-Non si tratta quindi di documentazione pensata per essere letta da personale non esperto e neppure da personale esperto nella configurazione di eXtraWay. 
- 
-La presente pagina è in allestimento. 
- 
-===== Manuale di Abilitazione eXtraWay ===== 
-==== Lo scopo dell'attivazione ==== 
-L'attivazione dei programmi eXtraWay viene eseguita per controllare che tali prodotti non vengano impropriamente utilizzati eludendo le licenze d'uso concordate con 3D Informatica. Oltre a questo naturale utilizzo, devono potersi realizzare applicazioni dimostrative o distribuibili in forma chiusa. 
- 
-Per ottenere quanto detto sono state generate alcune modalità di abilitazione, ereditando da //HighWay// le basi sulle quali poggiano gli strumenti per riconoscere la validità di un'installazione su una data postazione di lavoro. 
- 
-Tutte le chiavi di abilitazione sono criptate per mezzo dell'utility //key32// e possono quindi essere decriptate, per interpretarle ed eventualmente intervenire su di esse, per mezzo dell'utility //32key//. 
- 
-Ogni chiave di abilitazione è composta da 4 parti, accoppiate in coppie di valori sottoposte alla codifica e decodifica via //key32//. La prima delle quattro parti rappresenta **sempre** il numero di licenze abilitate. La seconda, terza e quarta parte assumono un diverso significato a seconda della piattaforma (Win32 o Unix nel caso dell'abilitazione standard) o del tipo di abilitazione da attivare. 
- 
-^Il codice corrispondente alle quattro parti indicate si trova nel file xw.ini (applicazioni eXtraWay) ovvero nel file highway.ini (applicazioni HighWay). Il primo si trova nella directory conf, parallela a quella degli eseguibili, il secondo nella directory stessa del server HighWay. La decodifica di quei valori si ottiene applicando l'anti-algoritmo noto come //32key.exe//, contrario appunto all'algoritmo //key32.exe// che si usa per codificare i valori^ 
- 
-==== Abilitazione Standard ==== 
- 
-L'Abilitazione Standard deve poter riconoscere esattamente la postazione sulla quale si trova. Per fare questo sono stati adottati due stili differenti sulle piattaforme Win32 e Unix. In origine il sistema prevedeva di valutare sempre l'Ip Address della postazione Server per determinare se esso fosse cambiato ma ciò è stato considerato fastidioso (commercialmente capitava troppo spesso e/o troppo facilmente di perdere l'abilitazione) quindi per Win32 si è adottato un metodo differente basato sul numero di serie del disco C della macchina sulla quale si compie l'installazione, il valore, per intenderci, che si ottiene con il comando DIR e che viene indicato come Numero di serie del volume. 
- 
-L'abilitazione standard viene effettuata direttamente dai server, richiedendo il numero di licenze da abilitare ed un codice di risposta che viene solitamente richiesto telefonicamente a 3D Informatica. Il codice si ottiene sottoponendo a key32 la chiave proposta dal server stesso. 
- 
-Per ottenere l'abilitazione ci sono metodi diversi a seconda della piattaforma 
- 
-^Windows |In Windows sarà sufficiente avviare, come servizio o manualmente il modulo xw (eXtraWay Server) e fare un semplice click sulla sua icona nella Tray Bar. Viene presentato un dialogo che mostra lo stato dell'installazione e presenta in esso un bottone Attiva Licenza ovvero Aggiorna Licenza a seconda che si tratti della prima abilitazione o di una successiva. Premere il bottone e seguire i passi successivi.| 
-^Linux/Unix |In Unix l'abilitazione del server si ottiene richiamando il modulo xw (eXtraWay Server) con parametro '-r' (registrazione). Prima di compiere una simile operazione si può verificare lo stato dell'abilitazione del server evocandolo con parametro '-v'. Seguire i passi successivi.| 
- 
-L'abilitazione, una volta entrati nella procedura, si effettua seguendo questi passi. 
-In primo luogo il server richiede il numero di licenze da abilitare. 
-Per le licenze illimitate inserire il valore 998. 
-^Attenzione: I sistemi Windows NT Wordstatoin, Windows 2000 Professional e Xp Home possono essere limitati, a seconda della versione del server, ad una sola connessione. In tal caso il server non richiede il numero di licenze ma passa direttamente al punto successivo. In questo caso il server va abilitato per una sola postazione poi, eventualmente, riabilitato per più posti intervenendo direttamente sul file di configurazione.^ 
-Le informazioni impostate verranno salvate in apposite voci della sezione [highway] del file di configurazione (come detto xw.ini per eXtraWay ed highway.ini per HighWay) e da lì possono essere modificate alla bisogna. 
-^Si noti che il codice riportato nella voce Config non ha attinenza con quanto impostato all'atto dell'abilitazione ma rappresenta una codifica, spiegata meglio nei paragrafi successivi, di come sia stato abilitato il server.^ 
- 
-==== Abilitazione Server Windows ==== 
- 
-L'abilitazione del server su piattaforma Win32 si compone con i seguenti 4 valori: 
- 
-  - Numero di licenze da abilitare 
-  - Prima metà del numero di serie del disco C 
-  - Seconda metà del numero di serie del disco C 
-  - Le 9 cifre meno significative del numero di serie del Server. 
- 
-==== Abilitazione Server Linux/Unix ==== 
- 
-L'abilitazione del server su piattaforma Unix si compone con i seguenti 4 valori: 
- 
-  - Numero di licenze da abilitare 
-  - Numero corrispondente alla parte alta dell'Ip Address (due cifre superiori) (ad esempio, partendo dall'indirizzo 194.243.52.20 esso corrisponde alla sequenza 0xC2, 0xF3, 0x34, 0x14, quindi le due cifre superiori sono 0xC2F3 pari a 49907) 
-  - Numero composto dalle ultime due cifre, espresse in 3 cifre, invertite e semplicemente accodate. Partendo dall'indirizzo dell'esempio precedente avremo 20052. 
-  - Numero calcolato parendo dal tempo di creazione, in secondi, della directory 'hw' che viene prodotta entro la directory 'conf'. Questo valore viene poi diviso per 100.000.000 e se ne assume il resto. 
- 
-==== Abilitazione Server Windows o Linux/Unix in Cluster ==== 
- 
-L'abilitazione in Cluster consta nel compiere un'abilitazione standard su uno dei due server che compongono il Cluster ed introdurre un'ulteriore chiave che indichi al server che, qualora ci si trovi sulla seconda macchina, la chiave di abilitazione valida per la prima deve essere considerata valida anche per la seconda. 
- 
-L'effetto desiderato si ottiene affiancando alla voce diconfigurazione Config una specifica voce Alias che deve essere composta con una coppia di valori estratti dagli Ip address delle due macchine (Caso Unix) o dai numeri di serie dei due dischi C (caso Win32). 
- 
-In tutti e due i casi, tanto l'Ip address quanto il numero di serie dell'uno e dell'altro disco, possono essere ricondotti ad un valore esadecimale pari ad un valore esprimibile in 4 bytes, eventualmente da rappresentare come valore negativo. Una volta calcolato il valore decimale corrispondente ai due valori esposti, sottoponendo a key32 i due valori si ottiene al voce da indicare in Alias. 
- 
-Esempio Unix: 
-Avendo una postazione server con indirizzo 194.243.52.20 esso corrisponde ai valori 0xC2, 0xF3, 0x34 e 0x14 quindi ad un valore pari a 0xC2F33414 che tradotto in forma decimale è -1024248812. Ipotizziamo ora di dover abilitare in cluster con quella appena indicata (sulla quale sia stata compiuta un'abilitazoine standard) un'altra macchina nella rete con indirizzo 194.243.52.80 (pari a 0xC2F33450 e quindi pari a -1024248752). La risposta al comando... 
-  key32 -1024248812--1024248752 
-...darà il codice da impostare in Alias 
- 
-Esempio Win32: 
-Avendo una macchina con numero di serie del disco C pari a 789A-0D6f il valore corrispondente a 0x789A0D6f è 2023361903. Dopo aver abilitato in modo standard questa macchina e volendone abilitare in cluster un'altra avente numero di serie del disco C pari a 5301-AF31 (0x5301AF31 ovvero 1392619313) si dovrà evocere... 
-  key32 2023361903-1392619313 
-... ed impostare il valore risultante nella voce Alias  
- 
-==== Abilitazione a Tempo ==== 
- 
-L'abilitazione a tempo comporta l'abilitazione incondizionata del server sino ad una data stabilita, oltre la quale le funzionalità del server vengono meno e si passa alla Versione Dimostrativa. Per codificare e criptare la data voluta essa deve essere espressa in forma //YYYYMMDD// e deve essere sottoposta al comando di frazionamento key32bs. Questo comando viene evocato per spezzare in due parti un valore numerico compiendo una combinazione dei bytes del valore originario. I due valori ottenuti andranno a far parte della chiave calcolata partendo da: 
- 
-  - Numero licenze da abilitare 
-  - Prima cifra tornata dal comando key32bs partendo dalla data di scadenza dell'abilitazione 
-  - Seconda cifra tornata dal comando key32bs partendo dalla data di scadenza dell'abilitazione 
-  - Il valore fisso //4// che indica il tipo di abilitazione 
- 
-Esempio: 
-Volendo abilitare un server per 10 posti sino al 31/12/2004 si sottopone il valore 20041231 al comando key32bs che torna 462 e 12559. A questo punto si calcolano i valori di key32 per la coppia 10-462 e 12559-4 ottenendo la chiave da porre nella voce Config del file di configurazione. Nel nostro caso la chiave avrà valore: 537985297-257 1343230224-1077936128 
- 
-==== Abilitazioni Limitate ==== 
- 
-Le abilitazioni limitate sono tutte quelle che non hanno una scadenza temporale ma che non consentono di operare con archivi di dimensioni superiori ad una soglia fissata. In sostanza, il comportamento della versione dimostrativa è un particolare tipo di abilitazione limitata dove, per default, si limita l'utilizzabilità del server a 2 licenze per un massimo di 3000 unità informative per archivio. 
- 
-La limitazione che è possibile imporre, con un metodo identico a quello della limitazione a tempo descritta precedentemente, comporta fondamentalmente la dimensione dell'archivio (numero di unità informative) ovvero la dimensione del vocabolario (numero delle chiavi). Il numero di documenti o il numero di chiavi va sottoposto, come nel caso precedente, al comando key32bs per frazionarlo in due parti irriconoscibili. 
- 
-==== Limitazioni sulle dimensioni dell'Archivio ==== 
- 
-La limitazione sulla dimensione dell'archivio si ottiene combinando: 
- 
-  - Numero licenze da abilitare 
-  - Prima cifra tornata dal comando key32bs partendo dal numero di unità informative massime 
-  - Seconda cifra tornata dal comando key32bs partendo dal numero di unità informative massime 
-  - Il valore fisso '8' che indica la limitazione per dimensione dell'archivio. 
- 
-Esempio:\\ 
-Volendo limitare il server per 15 licenze ad archivi con al massimo 15000 unità informative si conbineranno i valori 15-58 e 152-8 (dal momento che key32bs di 15000 da 58 e 152).\\  
-Config = 269553681-16842752 17-268435472 
- 
-==== Limitazione sulle dimensioni del Vocabolario ==== 
- 
-La limitazione sulla dimensione del vocabolario si ottiene combinando: 
- 
-  - Numero licenze da abilitare 
-  - Prima cifra tornata dal comando key32bs partendo dal numero di chiavi massime 
-  - Seconda cifra tornata dal comando key32bs partendo dal numero di chiavi massime 
-  - Il valore fisso //16// che indica la limitazione per dimensione del vocabolario. 
- 
-Esempio:\\  
-Volendo limitare il server per 18 licenze ad archivi con al massimo 100000 chiavi si combineranno i valori 18-134 e 416-16 (dal momento che key32bs di 100000 da 134 e 416).\\  
-Config = 1114368-268435457 1073741824-17825808 
- 
-==== Limitazione "Personal Server" ==== 
- 
-La limitazione Personal Server è in tutto e per tutto identica alla limitazione sulla dimensione dell'archivio ma aggiunge ai controlli che vengono effettuati una limitazione all'Ip Address del client che deve risultare locale. Per locale si intende il classico 127.0.0.1 o uno qualsiasi degli indirizzi della macchina, anche se piùà di uno ed anche se assegnati da un server DHCP. 
-Differisce dal caso della limitazione per dimensione per il fatto che il valore fisso da impostare è '32' anzichè '8'. 
- 
-Esempio:\\  
-Volendo limitare il server per 11 licenze ad archivi con al massimo 30000 unità informative come Personal Server si conbineranno i valori 11-117 e 48-32 (dal momento che key32bs di 30000 da 117 e 48).\\  
-Config = 286261520-16843008 0-269549568 
- 
-==== Limitazione al file di configurazione o per CD ==== 
- 
-La limitazione vincolata al file di configurazione di uno o più archivi o alla modalità Read Only degli stessi è legata, in sostanza, al contenuto del file nomerachivio.conf.xml ed eventualmente anche al contenuto del file nomearchivio.stat.xml. 
-Nel primo caso, ovvero in caso di sola configurazione d'archivio, l'abilitazione viene regolata sulla base del solo .conf.xml e l'archivio può essere elaborato aggiungendo o modificandone il contenuto.\\ 
-Nel secondo caso, ovvero quando entra in gioco anche il file .stat. xml, l'archivio non è più modificabile, o meglio, alla prima modifica che viene apportata al file .stat.xml l'archivio non è più accessibile.\\ 
-Le abilitazioni che conducono a questo comportamento del server differiscono da tutte le altre in quanto la chiave di abilitazione deve prevedere esclusivamente il valore fisso '64' per l'accesso vincolato al solo file di configurazione ed il valore fisso '128' per l'accesso vincolato anche al file .stat.xml. Come nei casi precedentemente visti la chiave di abilitazione viene creata unendo 4 parti numeriche ma in questo caso solo la prima e l'ultima sono significative, le altre possono (e diciamo per futuri sviluppi devono) essere nulle. Avremo quindi la chiave ottenuta dalla combinazione del numero di licenze, due valori nulli ed il codice fisso che indica la modalità d'accesso.\\ 
- 
-Esempio:\\ 
-L'attivazione per archivi auto protetti con vincolo al solo file di configurazione per 5 posti viene dalla di 5-0 0-64 mentre la stessa abilitazione per archivi non modificabili viene dalla key32 di 5-0 0-128. 
- 
-Una volta fatto quanto detto si deve produrre per ogni archivio che si intende auto proteggere una chiave di abilitazione che consenta di accedere all'archivio stesso e che lo segue in un file nomerachivio.licence. 
-Il formato di tale file avrà il seguente aspetto:\\ 
- 
-<code> 
-<?xml version="1.0" encoding="iso-8859-1"?> 
-<!DOCTYPE xwconf SYSTEM "http://www.3di.it/extraway/xwconf_20031128.dtd"> 
-<xwconf> 
-   <section name="licence"> 
-      <profile type="autoconf" value="CAB4E20DE5175730D2D783FD48FC0BFD"/> 
-   </section> 
-</xwconf> 
-</code> 
- 
-ed il valore da indicare all'interno di questo file va richiesto a 3D Informatica e prodotto tramite il modulo //xwpasswd//. 
- 
-===== Gli Archivi ===== 
-==== Il file di struttura ==== 
-Ogni archivio //eXtraWay// ha come perno centrale un file di struttura che dichiara i contenuti e regola tutti i files che appartengono all'archivio.\\ Dalla versione '23' del server si adotta una struttura binaria del file per ragioni legate alle prestazioni ed alla sicurezza del file stesso (in alcune versioni ed in alcune condizioni limite s'è letteralmente perso il contenuto del file stess) mente in precedenza esso era un file dal contenuto XML. 
- 
-Soffermiamoci a parlare di queste due modalità in quanto quasi tutto quanto dichiarato nel file XML trova collocazione anche nel file binario che descriveremo. 
- 
-Ogni struttura archivio indica una serie di valori. Parte di questi valori ha un significato che s'è perso nel tempo e che è stato introdotto per compatibilità con strumenti di una tecnologia passata. Essi verranno man mano rimossi e vengono indicati in questa sede in <color grey>colore grigio</color>. 
- 
-^<color blue>Label</color>^<color blue>Valore</color>^ 
-^<color grey>attr</color>|Si riferisce agli "attributi" dell'archivi, ovvero quelle che si potrebbero considerare le sue //capabilites//. Ha un valore fisso, pari a **2011**. Viene espresso in valore esadecimale ed in realtà indica il valore 8209.| 
-^<color grey>l_access</color>|Livello d'autorizzazione richiesto agli operatori per poter accedere all'archivio. Obsoleto, valore 100.| 
-^<color grey>l_erase</color>|Livello d'autorizzazione richiesto agli operatori per poter cancellare documenti nell'archivio. Obsoleto, valore 100.| 
-^<color grey>l_config</color>|Livello d'autorizzazione richiesto agli operatori per poter modificare la configurazione dell'archivio. Obsoleto, valore 100.| 
-^docs|Numero documenti fisici presenti nell'archivio. Questo numero comprende anche gli eventuali documenti cancellati.| 
-^erased|Numero documenti fisici cancellati.| 
-^indexed|Numero documenti fisici indicizzati. Questo valore è normalmente corrispondente a quello di **docs** ma può eventualmente essere inferiore ad esso. In tal caso, parte delle funzionalità del sistema potrebbe non essere disponibile((Aggiunta di allegati o inserimenti di nuovi documenti sono ad esempio negate in tale condizione)).| 
-^findexed|Numero dei documenti fisici per i quali sono state realizzate le chiavi secondarie, se e laddove configurate. Il valore non può essere superiore a quanto indicato da **indexed** e quindi a sua volta sarà **<=** al valore di **docs**. Trattandosi di chiavi secondarie non si hanno impatti significativi sulle funzionalità del sistema se non per alcune attività di ricerca.| 
-^keys|Numero delle chiavi complessive((Primarie e Secondarie)) rilevate nei documenti indicizzati.| 
-^main_serial|In caso di archivi che utilizzino una regola di distribuzione di tipo ''single'', questo contatore server ad enumerare il prossimo((Registra l'ultimo valore assegnato quindi il successivo sarà quello indicato +1)) file XML che verrà generato.| 
-^timestamp|Indicazione dell'ultima operazione modificante effettuata sull'archivio. Si esprime in anno, mese, giorno, ora, minuto, secondo e millisecondo.| 
- 
-Questi valori, opportunamente combinati tra loro, producono un //checksum// che consente di verificare che nel file XML non siano stati fatti interventi manuali non autorizzati. Tale //checksum// si trova nell'attributo ''global'' dell'elemento ''crc'' ed è espresso sotto forma di impronta MD5 di un valore composto da quelli elencati. In caso di intervento manuale nel file, si deve ricalcolare tale //Checksum//((Avvalendosi del tool xwpasswd)). 
- 
-Oltre a quanto indicato il server ha una serie di indicatori di ''stato'' che assumono diversi valori. 
-^<color blue>Tipo di Stato</color>^<color blue>Descrizione</color>^^ 
-^idxver|Indica la versione del file IDX. Se assente o con valore pari a '0' si indica il BTree storico, con nodi di 512 bytes. Se assume il valore 1 ci si riferisce al BTree modificato con nodi da 4Kb configurabili sino a 64Kb. In seguito, con l'adozione del B+Tree((In fase di sperimentazione)), questo valore presumibilmente verrà rimosso.|| 
-^status|Si tratta di un valore a bits che vanno interpretati come segue:|| 
-^ ^0x00000001|Indica che l'archivio è stato sottoposto a Validazione. Ciò comporta che una figura che ne ha l'autorità, ha stabalito che esso è valido per essere pubblicato. Ovviamente, qualsiasi intervento modificante per l'archivio causa il decadimento di questo stato. Si applica, solitamente, in presenza di //Back Office// e //Front Office// distinti in cui l'aggiornamento di questi ultimi debba avvenire in modo controllato ed ancor di più se essi risultano essere in batteria((In tal caso si prenda in esame il modulo "xwsprd - eXtraWay Spreader")).| 
-^ ^0x00000002|Indica che la mappa dell'archivio è stata sottoposta a compattamento per migliorare spazio occupato e performances.| 
-^ ^0x00000004|Indica che gli indici dell'archivio sono stati sottoposti a compattamento per migliorare spazio occupato e performances.| 
-^ ^0x00000008|ReadLock| 
-^ ^0x00000010|AdminLock| 
-^ ^0x00000020|Titled| 
-^ ^0x00000040|xmlpack| 
-^ ^0x00000080|Monitorable| 
-^ ^0x00000100|DateAndtime| 
-^ ^0x00000200|wriong index| 
-^ ^0x00000400|attribfreeorder| 
-^ ^0x00000800|noudiwords| 
-^ ^0x00001000|alternateioonly| 
-^ ^0x00002000|alternateioalso| 
-^ ^0x00004000|wrong second index| 
-^ ^0x00008000|blind mode| 
  
/data/attic/documentazione_3di_riservata/extraway/extraway_server.1257768809.txt.gz · Ultima modifica: 2017/09/08 10:59 (modifica esterna)