Progettazione e sviluppo di un'applicazione web basata su tecnologia Share Point 2010 - Alex Ronci
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Progettazione e sviluppo di un'applicazione web basata su tecnologia Share Point 2010 - Alex Ronci

on

  • 605 views

 

Statistics

Views

Total Views
605
Views on SlideShare
605
Embed Views
0

Actions

Likes
0
Downloads
10
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Progettazione e sviluppo di un'applicazione web basata su tecnologia Share Point 2010 - Alex Ronci Document Transcript

  • 1. UNIVERSITÀ DEGLI STUDI DI TRIESTE PROGETTAZIONE E SVILUPPO DI UN’APPLICAZIONE WEB BASATA SU TECNOLOGIA SHARE POINT 2010 Facoltà di Ingegneria Corso di Laurea Triennale in Ingegneria dell’Informazione Curriculum InformaticaLaureando: Relatore:ALEX RONCI CHIAR.MO PROF. MAURIZIO FERMEGLIA ANNO ACCADEMICO 2010 / 2011
  • 2. A Michela e Massimo1
  • 3. SOMMARIO1. INTRODUZIONE ............................................................................................................................ 62. PRESENTAZIONE DELLE RICHIESTE .................................................................................................... 73. ANALISI DELLE RICHIESTE ............................................................................................................... 84. STRUMENTI NECESSARI ALLO SVILUPPO DEL PROGETTO ....................................................................... 9 4.1. HARDWARE ......................................................................................................................... 9 4.1.1. PC NOTEBOOK SONY VAIO VPCB1S1E ............................................................................. 9 4.1.2. SERVER UNIVERITARI ...................................................................................................... 9 4.2. SOFTWARE ........................................................................................................................ 10 4.2.1. VMWARE PLAYER ....................................................................................................... 10 4.2.2. MICROSOFT SHARE POINT FOUNDATION 2010 ................................................................. 10 4.2.3. MICROSOFT SHARE POINT DESIGNER 2010 ..................................................................... 10 4.2.4. MICROSOFT SQL SERVER 2008 ..................................................................................... 11 4.2.5. MICROSOFT ACCESS 2010 ............................................................................................ 115. PRIMA DI COMINCIARE ................................................................................................................ 12 5.1. CONFIGURAZIONE DELL’AMBIENTE DI TEST SU MACCHINA VIRTUALE ............................................. 12 5.2. CONFIGURAZIONE DELLA MACCHINA FISICA .............................................................................. 156. STRUTTURA DELL’APPLICAZIONE ................................................................................................... 16 6.1. SVILUPPO DELLA HOME PAGE ................................................................................................ 16 6.2. CREAZIONE DEI SUBSITES ...................................................................................................... 18 6.3. CREAZIONE DELLA PAGINA WEB GENERICA ............................................................................... 197. ACCESSO DATI DEL DATABASE IN MICROSOFT SQL SERVER 2008 ....................................................... 20 7.1. CREAZIONE DEL MODELLO IN SHARE POINT DESIGNER 2010 ...................................................... 20 7.2. CREAZIONE DELLA LISTA ESTERNA .......................................................................................... 21 7.3. CONFIGURAZIONE DEI PERMESSI AUTENTICATI .......................................................................... 22 7.4. CONFIGURAZIONE DELL’APPLICAZIONE PER L’UTENTE ANONIMO .................................................. 23 2
  • 4. 7.5. CONFIGURAZIONE DELL’IIS ................................................................................................... 23 7.6. CONFIGURAZIONE DELL’UTENTE ANONIMO IN MICROSOFT SQL SERVER 2008 .............................. 25 7.7. BCD IDENTITY SETTING PER L’UTENTE ANONIMO ...................................................................... 26 7.8. RISULTATO DEL PROCESSO .................................................................................................... 288. GESTIONE DELL’APPLICAZIONE IN MODALITÀ MULTILINGUA ................................................................ 299. GESTIONE DEGLI ACCESSI E PERMESSI DEGLI UTENTI .......................................................................... 3110. TIPS & TRICKS DI SVILUPPO DELL’APPLICAZIONE ............................................................................... 33 10.1. INTEGRAZIONE DELL’ACCESSO AL DB SU PIATTAFORMA ACCESS .................................................... 33 10.1.1. ACCESS PER LE LISTE ..................................................................................................... 33 10.1.2. ACCESS COME FRONT-END SQL SERVER ........................................................................... 34 10.2. GESTIONE DI ACCESSO DA DISPOSITIVI MOBILI........................................................................... 36 10.3. CONFIGURAZIONE DEL TEMA PER L’UTENTE ANONIMO ............................................................... 37 10.3.1. COME NASCONDERE LA RIBBON BAR ............................................................................... 37 10.3.2. CONFIGURAZIONE DEL TEMA PERSONALIZZATO .................................................................. 3811. CONCLUSIONI ............................................................................................................................ 4112. BIBLIOGRAFIA............................................................................................................................ 43APPENDICE A – MACROLIVELLI E DETTAGLI PROPOSTI DAL COMMISSIONARIO DEL PROGETTO .......................... 44APPENDICE B – SITUAZIONE SERVER DI3 ............................................................................................... 46 3
  • 5. INDICE DELLE FIGUREFIGURA 1 - SONY VAIO VPCEB1S1E ..................................................................................................... 9FIGURA 2 - SCHERMATA DI MICROSOFT SHARE POINT DESIGNER 2010 ...................................................... 10FIGURA 3 - RUOLI ATTIVI SU MACCHINA VIRTUALE .................................................................................. 13FIGURA 4 - CREAZIONE DELLAPPLICAZIONE WEB..................................................................................... 14FIGURA 5 - HOME PAGE DELLAPPLICAZIONE .......................................................................................... 16FIGURA 6 - CONFIGURAZIONE DELLA WEBPART CALENDARIO..................................................................... 18FIGURA 7 - SELEZIONE DI EXTERNAL CONTENT TYPE ................................................................................ 20FIGURA 8 - OPERAZIONI ATTIVE SUL CONTENUTO ESTERNO ....................................................................... 21FIGURA 9 - CREAZIONE NUOVA LISTA ESTERNA ....................................................................................... 22FIGURA 10 - CONFIGURAZIONE PERMESSI PER CONTENUTO ESTERNO ......................................................... 22FIGURA 11 - ACCESSO AGLI UTENTI TRAMITE SERVER MANAGER ............................................................... 24FIGURA 12 - SCHERMATA PER LA CONFIGURAZIONE DELLUTENTE ANONIMO IN IIS........................................ 24FIGURA 13 - SCHERMATA INIZIALE IN SQL SERVER 2008 ......................................................................... 25FIGURA 14 - CONFIGURAZIONE DELLUTENTE IN SQL SERVER ................................................................... 26FIGURA 15 - FRAMMENTO DI CODICE DEL LOBSYSTEMINSTANCE ............................................................... 27FIGURA 16 - SERVIZIO DI APPLICAZIONE INTEGRATIVA DEI DATI IN SERVIZI APPLICAZIONI ................................ 27FIGURA 17 - CONFIGURAZIONE IMPORT MODELLO BDC .......................................................................... 28FIGURA 18 - IMPOSTAZIONI LINGUA ..................................................................................................... 29FIGURA 19 - QUICK ACCESS BAR CON MODIFICA TRAMITE MUI ................................................................ 30FIGURA 20 - INFORMAZIONI ELENCO .................................................................................................... 31FIGURA 21 - ACCESSO ANONIMO PER LISTE ........................................................................................... 32FIGURA 22 - RIBBON BAR DI ACCESS 2010 SU DATI ESTERNI .................................................................... 33FIGURA 23 - SELEZIONE DEGLI ELENCHI PER IL FRONT-END ....................................................................... 34FIGURA 25 - SETTAGGI PER CONNESSIONE SERVER SQL SERVER ................................................................ 35FIGURA 24 - DEFINIZIONE DI ADP IN ACCESS 2010 ................................................................................ 35FIGURA 26 - CONFRONTO DISABILITAZIONE ACCESSO PER DISPOSITIVI MOBILI .............................................. 37FIGURA 27 - PAGINE MASTER.............................................................................................................. 37FIGURA 28 - CORE*.CSS FILE .............................................................................................................. 38 4
  • 6. FIGURA 29 - TEMA PERSONALIZZATO CON ELIMINAZIONE RIBBON BAR ....................................................... 40 5
  • 7. 1. INTRODUZIONELa tesi proposta all’interno di questo documento andrà a trattare lo sviluppo e l’analisi di unportale informatico scolastico, nella fattispecie quello del LICEO SCIENTIFICO STATALE “GALILEOGALILEI” di Trieste.Tale struttura verrà sviluppata nell’ambiente proprietario MICROSOFT SHARE POINT, in modo taleche possa permettere un’agevole condivisione di dati ed informazioni tra studenti, docenti,genitori e personale amministrativo sfruttando le caratteristiche della suite MICROSOFT OFFICE.L’obiettivo è quello di valorizzare i punti salienti di una scaletta illustrativa consegnatadirettamente dalla scuola stessa, e concernente criticità a livello di gestione di documenticondivisi, accessi protetti e dati sensibili, quali anagrafiche e risultati studenteschi.Vista l’impossibilità da parte della scuola di disporre di server propri per la messa online di talepiattaforma, l’ipotesi iniziale è quella di porla su quelli dell’Università: dunque ulteriore stepper lo sviluppo sarà legato ad un primo sviluppo in locale del progetto, all’interno di unamacchina virtuale predisposta a tale uso, e il susseguente trasferimento dei semilavoratiottenuti sul server universitario, con seguenti criticità legate allo stesso trasferimento.I capitoli della tesi sono così distribuiti:  2) e 3) presentano le specifiche richieste dal committente, e la relativa analisi del progetto;  4) descrive le strumentazioni hardware e software necessarie;  5) propone un setup per poter procedere nel progetto;  6) imposta le strutture di base dell’applicazione web;  7) analizza e risolve uno dei problemi più complessi a livello di utenza anonima: l’accesso ad un database in SQL SERVER;  8) e 9) vanno ad affrontare la problematica dell’utenza e della gestione della lingua;  10) approfondisce tematiche relative a tweaks di sviluppo per migliorare il prodotto;  11) propone una personale riflessione sul prodotto e spunti futuri del lavoro creato. 6
  • 8. 2. PRESENTAZIONE DELLE RICHIESTELa scuola, commissionaria del progetto di tesi, vuole ottenere un prodotto finale che permettadi:  Avere dalle cinque alle sette aree tematiche  Avere approfondimenti di secondo livello  Usufruire di quattro differenti tipologie di accesso privilegiato mediante login (Docenti, Studenti, Genitori, Segreteria) ed uno anonimo senza login  Poter tracciare le circolari  Avere una newsletter  Avere un forum moderato  Avere un blog con animatori  Gestire una piattaforma di e-learning  Avere una grafica accattivante ed innovativa  Avere una versione inglese della piattaforma  Essere ad alto indice di usabilitàOltretutto, la stessa ha già consegnato una struttura di massima del portale, definendomacrolivelli e dettagli di primo e secondo livello, come indicato in APPENDICE A. 7
  • 9. 3. ANALISI DELLE RICHIESTELe richieste della scuola risultano portare criticità, in particolar modo nella gestione dellerisorse archiviate dalla scuola, sia per quelle legate ad un elevato standard di sicurezza per gliutenti autenticati, ma anche nella gestione della stessa piattaforma in formato multilingua.Il progetto, di per sé, non richiede grossi approfondimenti nella gestione delle più basilaristrutture online, poiché la gestione dei contenuti standard HTML, quali pagine formattate etabelle, risulta molto agevole, sia lavorando online che tramite lo strumento di sviluppo fornitodalla stessa MICROSOFT (di cui tratteremo a breve).Più interessante, invece, risulta la gestione dei dati, caricati da un database esterno (che possaessere su motore SQL SERVER, oppure ACCESS, giusto per restare in ambiente MICROSOFT): se lagestione a livello di utente autenticato è relativamente semplice, più articolata è la suagestione se l’utente è anonimo.Restando a livello utente, la gestione degli accessi è importante per poter permettere disoddisfare quei parametri di accesso privilegiato, indicati dalla scuola, che distinguano idifferenti target di utilizzo dell’applicazione che si sta creando. Questo elemento può andarsi ascontrare con i mezzi a disposizione per lo sviluppo del progetto (e di questo tratteremo nelrelativo capitolo).La gestione di risorse multilingua deve essere gestita nell’ambiente, e l’intento è quello disfruttare (per quanto possibile) le opportunità concesse da SHARE POINT, per tale frangente:avere una struttura per il più possibile preconfigurata, in modo tale da poter creare un’unicaapplicazione, e non duplicare (inutilmente) i contenuti.Discorso a parte è la piattaforma di e - learning: confrontandosi con lo stesso relatore, questarisulta a priori ingestibile, per problemi di requisiti hardware troppo elevati rispetto ai limitatimezzi a disposizione. 8
  • 10. 4. STRUMENTI NECESSARI ALLO SVILUPPO DEL PROGETTOIl progetto, come già dichiarato, richiede l’utilizzo del seguente elenco di hardware e software.Di seguito ne descriveremo le caratteristiche. 4.1. HARDWARE 4.1.1. PC NOTEBOOK SONY VAIO VPCB1S1EÈ il portatile a disposizione del laureando, montante un processore INTEL CORE I5 DUALCORE escheda grafica ATI MOBILITY RADEON HD 5650 con 1 GB di memoria grafica dedicata, HARD DISK da500 GB e 4 GB di RAM DDR III. Le caratteristiche tecniche del calcolatore sono adatte asostenere la virtualizzazione di una macchina virtuale, quale ambiente di test, da poterutilizzare quale server e visibile alla macchina fisica (che si interfaccerà con esso quale client). Figura 1 - Sony Vaio VPCEB1S1E 4.1.2. SERVER UNIVERITARII server universitari sono costituiti da 7 macchine fisiche su cui sono virtualizzati 10 ulterioriserver.Quello di nostro interesse è chiamato SRV4: un server virtuale, appartenente al dominio DI3,monta WINDOWS SERVER 2008 R2 X64 SP2, con 4 GB di RAM e 126GB di HD, e vi è installato SHAREPOINT FOUNDATION 2010. Su questo verrà attivata l’applicazione in oggetto. 9
  • 11. (Per avere dati relativi all’attuale situazione dei servers del DI3, si legga la tabella in APPENDICEB) 4.2. SOFTWARE 4.2.1. VMWARE PLAYERÈ il software che ci permetterà di virtualizzare il nostro ambiente di test per il progetto. Al suointerno è stato montato WINDOWS SERVER 2008 R2 X64, configurato per garantirci le prestazionidi dominio (la configurazione sarà descritta nel paragrafo 5.1). 4.2.2. MICROSOFT SHARE POINT FOUNDATION 2010È il software che permette la gestione di una piattaforma SHARE POINT. Interfacciandosi aldominio, va a generare il sito di AMMINISTRAZIONE CENTRALE dell’ambiente SHARE POINT, e i siti esottositi su cui verrà sviluppato il nostro progetto. 4.2.3. MICROSOFT SHARE POINT DESIGNER 2010È il prodotto, sviluppato da MICROSOFT, che ci permetterà di lavorare, senza dover operare Figura 2 - Schermata di Microsoft Share Point Designer 2010direttamente sulla macchina server, sull’applicazione. È sostituibile, parzialmente, da unqualsiasi browser sul mercato al momento (quello più adatto e compatibile è risultato INTERNETEXPLORER 9): SPD però ci permette di lavorare in maniera più articolata su determinate 10
  • 12. strutture del portale, che nella gestione on-the-site non risultano facilmente gestibili nellaconfigurazione. 4.2.4. MICROSOFT SQL SERVER 2008È il DBMS (DATABASE MANAGEMENT SYSTEM) che verrà utilizzato per la possibile gestione di daticontenuti nel database consegnato dalla scuola. Questo è oltretutto necessario per poterinstallare SHARE POINT FOUNDATION 2010. Risulterà interessante analizzare come poter gestire econcedere l’accesso a quest’ultimo tramite SQL SERVER all’utente anonimo (principale fruitoredella piattaforma). 4.2.5. MICROSOFT ACCESS 2010Software appartenente alla suite MICROSOFT OFFICE 2010, sarà utile per la gestione dei daticontenuti nel database a disposizione per l’end-user, ed in egual maniera per la gestione deidati disponibili sul portale. 11
  • 13. 5. PRIMA DI COMINCIAREPer poter cominciare a lavorare sul progetto, vi è la necessità di avere opportuni settaggi, siaall’interno dell’ambiente di test, con la configurazione della macchina virtuale, sia a livellodella macchina fisica. 5.1. CONFIGURAZIONE DELL’AMBIENTE DI TEST SU MACCHINA VIRTUALEAvviato VMWARE PLAYER e creata la macchina virtuale con installato al suo interno WINDOWSSERVER 2008 R2 STANDARD, il primo step necessario sarà quello di configurare WS come dominiodi server.Autenticati ed entrati nella schermata di START, si dovrà accedere al SERVER MANAGER per poterattivare i RUOLI necessari alla macchina: a) Prima di tutto, deve essere attivato il ruolo di SERVER DI DOMINIO ACTIVE DIRECTORY. Con tale ruolo, la macchina potrà fungere da Dominio (definito nel nostro caso PUPONE) per poter gestire utenze che si interfacciano come client a questa. Avviando la configurazione guidata, con il comando DCPROMO.EXE, della ACTIVE DIRECTORY, oltre che alla definizione del nome di dominio, sarà importante consentire la generazione di un SERVER DNS, per poter tradurre nel modo corretto le richieste di connessione, e l’introduzione di un DHCP AUTOMATICO, così che non vi siano problemi nella configurazione locale della piattaforma; b) Senza dover apportare modifiche a tali moduli, verranno attivati anche i ruoli di SERVER WEB e SERVER APPLICAZIONI. Importante sarà soprattutto il primo, per poter gestire l’accesso anonimo.Seguentemente, all’interno del sistema verrà installato MICROSOFT SQL SERVER 2008, i qualisettaggi nella configurazione di installazione risulteranno essere quelli già preindicatinell’installazione standard.Il DBMS permetterà di installare MICROSOFT SHARE POINT FOUNDATION 2010 su WS: tramite laCONFIGURAZIONE GUIDATA PRODOTTI SHARE POINT potremo connettere tutte le applicazioni SHAREPOINT create al dominio generato in precedenza, ed inoltre poter creare i rispettivi database su 12
  • 14. SQL SERVER (che, sottolineo, NON DEVONO essere assolutamente toccati, poiché si andrebbe aintaccare la stabilità di tutto il sistema SP). Figura 3 - Ruoli attivi su Macchina virtualeAl primo avvio sarà da configurare la farm di SHARE POINT: a) Nella schermata iniziale, selezionare AVVIA LA PROCEDURA GUIDATA; b) Settare, nella pagina successiva, come ACCOUNT DI SERVIZIO quello esistente di amministratore, e mettere le spunte su RACCOLTA DATI DI UTILIZZO E INTEGRITÀ e su SERVIZIO DI INTEGRAZIONE APPLICATIVA DEI DATI; c) Nella schermata successiva, si creerà la pagina dell’amministrazione centrale (importante anche qui è bene NON operare in tale home, pena grossi problemi di gestione e stabilità).Avvenuta la creazione dell’AMMINISTRAZIONE CENTRALE, vi è la necessità di creare il sito di test: perfare ciò, acceduti all’AC come ADMINISTRATOR, saranno da seguire tali passaggi: a) Nella colonna di Sinistra, accedere a GESTIONE APPLICAZIONI; b) Ora, nel riquadro centrale, premere GESTIONE APPLICAZIONI WEB; c) Nella nuova schermata, nella RIBBON BAR, premere NUOVA; 13
  • 15. d) Nel riquadro apparso, definire, conservando il resto, il NUMERO DI PORTA dell’applicazione, il NOME DEL SITO IIS, e settare SI su CONSENTIRE ACCESSO ANONIMO.In tale modo è stata creata l’applicazione su cui creare la RACCOLTA DI SITI. La raccolta di siti serveper poter gestire tutti i contenuti a disposizione della piattaforma in progetto. Per poterconfigurare tale raccolta, si procederà in tale maniera: a) Dall’AMMINISTRAZIONE CENTRALE, premere cREA RACCOLTA SITI; b) Nella nuova pagina, indicare l’APPLICAZIONE WEB su cui questa poggerà (in questo caso quella appena creata), TITOLO, DESCRIZIONE (facoltativa), INDIRIZZO DEL SITO WEB (che sarà l’indirizzo dell’applicazione seguito da ciò che verrà definito), SELEZIONE MODELLO (in questo caso è adatto il Sito del Team), e indicare l’AMMINISTRATORE PRINCIPALE DELLA RACCOLTA DEI SITI (l’ADMINISTRATOR).Salvato, si potrà cominciare a lavorare sulla macchina virtuale. Figura 4 - Creazione dellapplicazione webIn aggiunta, è stato installato anche sulla macchina virtuale MICROSOFT SHARE POINT DESIGNER2010, di cui però verrà approfondito nel prossimo paragrafo. 14
  • 16. 5.2. CONFIGURAZIONE DELLA MACCHINA FISICAQuesto passaggio risulta importante per potersi interfacciare, al di fuori del browser web, aiportali creati in ambiente Share Point.Sulla macchina fisica non verrà installato nulla al di fuori di SHARE POINT DESIGNER 2010:l’installazione non richiederà alcun settaggio particolare, mentre sarà importante avere i daticorretti per poter lavorare sui portali.All’apertura del programma, difatti, verrà richiesto il sito in cui è locata l’applicazione. Ilprogetto verterà su due applicazioni, con il relativo nome:  Applicazione di produzione (già disponibile ed accessibile come utente amministratore): http://srv4.di3.units.it:30120  Applicazione di Sviluppo e Test: http://win-n1hiicm56v1:25544/Ovviamente per entrambi gli accessi sono necessari il proprio NOME UTENTE e PASSWORD, e chequesti siano legati ad un account di amministratore, cosicché si possano editare i contenuti.Da ricordare inoltre che per accedere al server di test, dobbiamo, per ovvi motivi, avere attivala macchina virtuale. 15
  • 17. 6. STRUTTURA DELL’APPLICAZIONE 6.1. SVILUPPO DELLA HOME PAGEPronte le due piattaforme, andiamo a definire la struttura dell’applicazione. Figura 5 - Home Page dellapplicazioneNella home page l’interesse è quello di proporre tutti gli elementi salienti della scuola, sia alivello di prestigio, che a livello di comunicazione con il pubblico. Dunque si è optato perintrodurre questi elementi:  Nella QUICK BAR gli elementi di più facile accesso, quali STORIA DELLA SCUOLA, CORSI, ISCRIZIONI e CIRCOLARI (l’accesso a quest’ultimo è stato limitato ai soli utenti registrati). Inoltre, sempre riservato e nascosto alla vista dei utenti senza autorizzazione, vi è presente il FORUM interno. Interessante osservare che la QUICK BAR costruita potrà essere elaborata sia tramite connessioni ad elenchi (così sono definiti in SP) costruiti tramite SP, oppure quali link a pagine o file, indicati dal creatore. Inoltre, questa risulterà standard e conservata per tutte le pagine del sito su cui si sta lavorando (in questo caso il MAIN SITE). Per poter editare la QUICK BAR, tramite la RIBBON BAR selezionare AZIONI SITO, IMPOSTAZIONI SITO: nella nuova schermata selezionare nell’area aspetto l’icona AVVIO VELOCE. Da qui si 16
  • 18. potranno aggiungere / editare / eliminare TITOLI e COLLEGAMENTI DI SPOSTAMENTO. Di base si troveranno gli elementi precostruiti da SP; questi saranno solitamente eliminati, poiché editati per altra via; Nella colonna centrale sono presenti le NEWS di pubblico interesse, che verranno caricate direttamente dalla scuola sia on-the-web sia attraverso un qualsiasi programma della suite MICROSOFT OFFICE. Vista la versatilità dell’ambiente, è possibile accedere a tali elenchi tramite un qualsiasi client per SP (nei test si è provato a caricare materiale con successo tramite SHAREPLUS per IPAD). Nella colonna di destra, un calendario con le attività presenti e future della scuola. Per questa webpart si può osservare che, selezionandola ed accedendovi come utente autorizzato alla modifica, vi si può effettuare la MODIFICA DELLA VISUALIZZAZIONE CORRENTE. Per la soluzione proposta, si è optato di far visualizzare unicamente DATA DI INIZIO e NOME dell’evento, con ordine crescente relativo all’ora di inizio. Per poter visualizzare unicamente gli elementi in programma dalla data odierna in poi, si è usato il seguente escamotage, vista l’impossibilità di usare direttamente DATA DI INIZIO come confronto: si è introdotta una colonna calcolata definita CONTROLLO, equivalente a DATA DI INIZIO, consentendo la visualizzazione degli elementi che siano maggiori o uguali ad [OGGI]; Nella BARRA SUPERIORE invece sono presenti i SUBSITES che verranno creati successivamente e, come segnalato dalla scuola, saranno le macroaree ISTITUTO, PROGETTI e ATTIVITÀ. Da notare la particolarità di questa barra: questa sarà condivisa non solo dalle pagine del MAIN SITE, ma anche da tutti i suoi SUBSITES, dunque si avrà accesso diretto, senza dover effettuare alcuna configurazione aggiuntiva, a tutte le pagine dell’applicazione. 17
  • 19. Figura 6 - Configurazione della webpart Calendario 6.2. CREAZIONE DEI SUBSITESLa creazione dei SUBSITES rispetterà dei passaggi leggermente diversi rispetto a quello del MAINSITE: a. Da una qualsiasi posizione del MAIN SITE, dopo essersi autenticati con diritti di amministratore, premere sulla RIBBON BAR su AZIONI SITO; b. Dalla finestra apparsa, selezionare NUOVO SITO; c. Nella schermata successiva, impostare TITOLO, DESCRIZIONE, NOME URL; d. A livello di autorizzazioni, Per convenienza spuntare UTILIZZA LE STESSE AUTORIZZAZIONI DEL SITO PADRE, NO per VISUALIZZA IL SITO NELLA BARRA DI AVVIO VELOCE DEL SITO PADRE, SI per VISUALIZZA IL SITO NELLA BARRA DEI COLLEGAMENTI SUPERIORE DEL SITO PADRE e per UTILIZZA LA BARRA DEI COLLEGAMENTI SUPERIORE DEL SITO PADRE.La struttura appena definita sarà quella impostata per i SUBSITES creati per il progetto.La struttura ad albero si può perpetuare fino a maggiori profondità: difatti anche i SUBSITESpossono avere dei loro sotto siti relativi. Importante è ricordare però che i contenuti delSUBSITE possono essere letti dai siti genitori, ma non viceversa. Dunque liste ed elenchi ad un 18
  • 20. livello N potranno essere letti da tutti i siti del ramo di livello minore di N, ma non da quelli dilivello maggiore. 6.3. CREAZIONE DELLA PAGINA WEB GENERICAPur potendo sembrare banale, il trattamento della pagina web risulta essere particolare, erichiede l’utilizzo di un workaround per poter eliminare un fastidioso problema per la QUICK BARpresente in tale pagina. Come impostazione standard, difatti, la pagina web creata saràconfigurata come PAGINA WIKI, e dunque manterrà nell’estremità superiore della QUICK BAR l’areadocumenti recenti: questa conterrà gli ultimi elementi acceduti o modificati nell’applicazione,risultando fastidiosa ed inutile allo scopo.Per poter aggirare il problema, viene proposto questo trick: a) Dopo l’autenticazione, premere su AZIONI SITO; b) Nella finestra a scorrimento, NON selezionare NUOVA PAGINA, bensì ALTRE OPZIONI; c) Nella nuova schermata, selezionare ELENCO PERSONALIZZATO; d) Definire nella nuova pagina NOME, DESCRIZIONE e spuntare SI per VISUALIZZA L’ELENCO DI TIPO ELENCO SULLA BARRA DI AVVIO VELOCE; e) Ora aprire MICROSOFT SHARE POINT DESIGNER 2010, accedere all’applicazione interessata, selezionare dall’area OGGETTI SITO l’elemento ELENCHI E RACCOLTE, e dunque cliccare sull’elenco appena creato; f) Nella nuova schermata apparsa, accedere a TUTTI GLI ELEMENTI nell’area VISUALIZZAZIONI; g) Ora apparirà, dopo il caricamento della pagina master, l’editor della pagina; h) Da qui nella PLACEHOLDERMAIN selezionare WEBPARTPAGES e cancellarla; i) Svuotata la pagina, premere INSERISCI, WEB PART, EDITOR CONTENUTO.In tale maniera avremo ottenuto la pagina desiderata, con URLhttp://<NOMESITO>/list/<NOMEELENCO>/AllItems.aspx, con la possibilità di non avere la zonaRECENTLY OPENED nella zona superiore alla QUICK BAR, poiché la pagina rispetterà la struttura diuna pagina elenco. 19
  • 21. 7. ACCESSO DATI DEL DATABASE IN MICROSOFT SQL SERVER 2008Uno dei più grossi problemi che si possono riscontrare nella gestione dell’applicazione inambiente Share Point, nella fattispecie per permettere la visualizzazione dei dati ad un utentenon autenticato, è quello della gestione dei dati attinti da un db esterno all’applicazione.Difatti, le protezioni del DBMS in soggetto sono tali da non concedere l’accesso a utenti nonautorizzati dal dominio: l’obiettivo dunque sarà quello di accedervi primariamente con unutente effettivamente autorizzato, senza violare le protezioni di SQL SERVER (mantenendonecosì la stabilità e la sicurezza), e dunque elaborare il codice per permettere l’accessodell’utente anonimo.La procedura qui indicata è una commistione di spunti e guide ricercate su internet, il cuielenco è presente nella BIBLIOGRAFIA. 7.1. CREAZIONE DEL MODELLO IN SHARE POINT DESIGNER 2010Prima fase sarà quella di collegare il db come tipo di contenuto esterno a SP. Figura 7 - Selezione di External Content Type 20
  • 22. a) Aperto SPD 2010, cliccare su EXTERNAL CONTENT TYPES (Tipi di contenuto esterno); b) Sulla RIBBON, premere NEW EXTERNAL CONTENT TYPE; c) Nella nuova finestra, cliccare su CLICK HERE TO DISCOVER EXTERNAL DATA SOURCES AND DEFINE OPERATIONS; d) Premere su ADD CONNECTION nell’area EXTERNAL DATA SOURCE e selezionare come tipo di DATA SOURCE SQL SERVER; e) Nella finestra successiva, indicare il NOME DEL SERVER, il NOME DEL DB e il tipo di autenticazione USER IDENTITY AUTHENTICATION; f) Ora, selezionare le OPERATIONS utili allo scopo: nel nostro caso, può tranquillamente andar bene fare ADD ALL OPERATIONS; Figura 8 - Operazioni attive sul contenuto esternoOtterremo in questo modo un qualcosa di similare all’immagine qui sopra, ed avremo il nostrocontenuto esterno. 7.2. CREAZIONE DELLA LISTA ESTERNASecondo step del processo sarà quello di creare la lista esterna da visualizzarenell’applicazione. a) Aperto il sito SP sul browser, andare IN SITE ACTIONS, VIEW ALL SITE CONTENTS; b) Selezionare CREATE, e dunque nell’area CUSTOM LISTS, EXTERNAL LIST (lista esterna); c) Nella nuova schermata, indicare il NOME DELLA LISTA e la DESCRIZIONE; d) Ora apparirà una selezione di contenuti esterni: selezionare quello di nostro interesse; e) Cliccare su CREATE.La lista però in tale maniera non risulterà ancora utilizzabile: poiché non sono ancora staticonfigurati i permessi, otterremo, nel tentativo di accesso alla lista, se non autenticati su SQLSERVER, una schermata con indicante ACCESS DENIED BY BUSINESS DATA CONNECTIVITY. 21
  • 23. Figura 9 - Creazione nuova lista esterna 7.3. CONFIGURAZIONE DEI PERMESSI AUTENTICATIOra vanno configurati i permessi di accesso a tale contenuto esterno: a) In CENTRAL ADMINISTRATION, selezionare APPLICATION MANAGER; b) Nella nuova schermata, cliccare MANAGE SERVICE APPLICATIONS; c) Dunque, cliccare BUSINESS DATA CONNECTIVITY SERVICE; d) Spuntare il contenuto creato e cliccarepermessi object permissions; Figura 10 - Configurazione su set per contenuto esterno 22
  • 24. e) Nella nuova finestra, aggiungere gli utenti che necessitano l’accesso, e configurarne i permessi.Qui il problema sorge se proviamo ad autenticare un utente anonimo: l’aggiunta dell’utente‘NT AUTHORITYANONYMOUS LOGON’ produrrà un errore di login. 7.4. CONFIGURAZIONE DELL’APPLICAZIONE PER L’UTENTE ANONIMONuovo step necessario per poter superare tale problema sarà quello di configurarel’applicazione per poter gestire l’accesso anonimo al db: vi è il bisogno di attivare laREVERTTOSELF AUTHENTICATION.Questo metodo di autenticazione si differenzia dalla WINDOWS AUTHENTICATION poiché l’utenteche viene autenticato viene attinto direttamente dall’IIS APPLICATION POOL, non facendoimpersonare all’IIS un particolare account. Dunque permette all’ anonymous user di accedereai contenuti del database.Ora necessitiamo di configurare i servizi necessari per attivare la REVERTTOSELF: a) Accediamo alla SHELL DI GESTIONE SHARE POINT 2010 come amministratore; b) Digitiamo le seguenti linee di comando:$apps = Get-SPServiceApplication$apps //cerchiamo servizio di applicazione integrativa dei dati e contiamo lasua riga$bcs = $apps[i] // con i numero di riga – 1$bcs.RevertToSelfAllowed = $true$bcs.Update();In questo modo l’applicazione che legherà il nostro database all’applicazione web che stiamocreando non ci ostacolerà nell’accesso. Passiamo dunque a configurare l’IIS per l’accessoanonimo, per poi configurare il database in SQL SERVER. 7.5. CONFIGURAZIONE DELL’IISL’IIS, INTERNET INFORMATION SERVICES, è un complesso di servizi server internet per sistemiWINDOWS, utile poiché l’applicazione server non è in grado da sé di eseguire elaborazioniserver – side, e necessita la delega ad applicazioni ISAPI (fornite dalla stessa MICROSOFT). 23
  • 25. Il bisogno relativo al progetto sarà quello di configurare l’IIS per poter avere un utenteesistente configurato come utente anonimo: a) Accedendo a SERVER MANAGER, RUOLI, SERVIZI DI DOMINIO ACTIVE DIRECTORY, UTENTI E COMPUTER ACTIVE DIRECTORY, <NOSTROSERVER>, USERS, creiamo il nostro utente anonimo, (nel nostro caso chiamato AUSR); Figura 11 - Accesso agli utenti tramite Server Manager b) Spostandosi in GESTIONE INTERNET INFORMATION SERVICES (IIS), accedere al server di dominio; c) Entrati in SITI, selezionare l’applicazione web di interesse; d) Con il tasto destro, cliccare su AUTENTICAZIONE ANONIMA e dunque su MODIFICA; Figura 12 - Schermata per la configurazione dellutente anonimo in IIS 24
  • 26. e) Premere su IMPOSTA nel riquadro UTENTE SPECIFICO, ed indicare nella nuova finestra NOME UTENTE e PASSWORD (e confermarla).L’utente creato in tale modo sarà considerato dall’IIS quale quello anonimo. 7.6. CONFIGURAZIONE DELL’UTENTE ANONIMO IN MICROSOFT SQL SERVER 2008Prossimo step è quello di configurare SQL SERVER, ed il database di interesse per l’accesso conl’utente desiderato. a) Avviare MICROSOFT SQL SERVER MANAGEMENT STUDIO, ed autenticarsi; Figura 13 - Schermata iniziale in SQL Server 2008 b) In SECURITY, premere con il tasto destro su LOGINS, e selezionare NEW LOGIN; c) Da qui indicare l’utente desiderato (es. AUSR), premendo su SEARCH e scrivendone il nome (l’utente qui non necessiterà di ulteriori configurazioni); d) Ora, andare in DATABASES, e selezionare quello che è stato collegato al contenuto esterno; e) Entrare in SECURITY; f) Con il tasto destro premere su USERS e cliccare su NEW USER; g) Definire NAME, LOGIN NAME (anche questo con il tasto search); h) In DATABASE ROLE MEMBERSHIP, spuntiamo DB_OWNER;L’utente in tal modo creato avrà così diritto di accesso al db in cui questo è stato autenticato.Ora non resta che configurare il contenuto di tipo esterno nell’applicazione web in modo taleche possa usufruire e godere delle proprietà della REVERTTOSELF AUTHENTICATION. 25
  • 27. Figura 14 - Configurazione dellutente in SQL Server 7.7. BCD IDENTITY SETTING PER L’UTENTE ANONIMORiprendendo ciò che è stato spiegato al punto 7.3, diamo i permessi ad un utente (esistente) anostro piacere. Necessitiamo di questo passaggio per poter modificare e creare l’accesso perl’utente anonimo. a) Avviando SPD 2010, selezionare TIPI DI CONTENUTO ESTERNO; b) Evidenziare il contenuto di interesse, e dunque premere nella RIBBON BAR su ESPORTA MODELLO DBC; c) Nella nuova finestra, dare un NOME al file esportato, selezionando nelle impostazioni CLIENT, e premere ok, salvando nella posizione preferita; d) Aprire il file esportato con un qualsiasi elaboratore di testi (è sufficiente anche BLOCCO NOTE); e) Cercare tutte le righe indicanti <AccessControlEntry Principal="<UTENTE_DA_NOI_CREATO"> <Right BdcRight="Execute" /> </AccessControlEntry> e sostituirle con 26
  • 28. <AccessControlEntry Principal="NT AuthorityAnonymous Logon"> <Right BdcRight="Execute" /> </AccessControlEntry> ottenendo un codice come quello proposto qui sotto Figura 15 - Frammento di codice del LobSystemInstancef) Salvare il file;g) Eliminare da SPD 2010 il contenuto esterno creato (questo non comporterà la perdita del lavoro finora compiuto);h) Andando nell’AMMINISTRAZIONE CENTRALE, accedere in gestione applicazioni;i) Nell’area APPLICAZIONI DI SERVIZIO, premere GESTISCI APPLICAZIONI DI SERVIZIO;j) Nella nuova schermata, selezionare ed accedere al SERVIZIO DI INTEGRAZIONE APPLICATIVA DEI DATI; Figura 16 - Servizio di applicazione integrativa dei dati in Servizi applicazionik) Nella nuova finestra, fare IMPORTA;l) Indicare dove si trova il file, e spuntare MODELLO, NOMI LOCALIZZATI, PROPRIETÀ, AUTORIZZAZIONI nelle relative aree;m) L’elemento inserito risulterà uguale a quello creato in precedenza, però accedendo ai permessi indicati in 7.3 si potrà verificare la presenza dell’ANONYMOUS LOGON. 27
  • 29. Figura 17 - Configurazione import modello BDCPer completare, andare in START e digitare IISRESET, così da ripulire la BCS cache. 7.8. RISULTATO DEL PROCESSOIn tale maniera, se provassimo ad accedere alla lista creata come utente anonimo,otterremmo un tale risultato:Come si può notare, appare la lista, pur essendo indicato nella RIBBON l’elemento ACCESSO, chesta a sottintendere l’utenza anonima. 28
  • 30. 8. GESTIONE DELL’APPLICAZIONE IN MODALITÀ MULTILINGUASHARE POINT 2010 ha come suo cavallo di battaglia l’implementazione di una efficiente gestionemultilingua delle proprie strutture. Dalla versione 2010, difatti, è stata introdotta la MUI, MULTILANGUAGE USER INTERFACE, che consente una gestione modulare di titoli, descrizioni, menù,azioni, colonne e collegamenti della barra di navigazione.Questa caratteristica è molto interessante poiché permette di creare un’unica applicazione indiverse lingue con un’estrema facilità (basta praticamente sostituire lingua per lingua le varie“etichette” degli elementi) per gli utenti autenticati.È difatti proprio quest’ultima la grossa limitazione della piattaforma SHARE POINT: l’impossibilitàdi scelta della lingua per l’utente anonimo. La lingua sarà infatti scelta quale quella predefinitaper l’applicazione, non consentendo di sfruttare tale interessantissima opportunità.L’unica idea praticabile, anche sebbene poco efficace e alla fin fine controproducente rispettoai parametri di semplicità basilari per l’applicazione in progetto, sarebbe quella di creare dueapplicazioni parallele, una predefinita in italiano, ed una in inglese. Questo però porterebbe aduna fastidiosa duplicazione dei contenuti, a cui non si è riusciti a trovare una soluzione.Se il problema dell’utente anonimo, in questo caso, non risulta risolvibile, la gestionemultilingua per l’autenticato è invece decisamente semplice: a) Scaricare dalla pagina www.microsoft.com/downloads/it- it/details.aspx?familyid=046f16a9-4bce-4149-8679-223755560d54&displaylang=it il LANGUAGE PACK di nostro interesse (selezionare la lingua di interesse da installare, per il progetto la lingua inglese), ed installare tale file su WS; b) Accedendo autenticati via browser all’applicazione, dalla RIBBON BAR accedere in AZIONI Figura 18 - Impostazioni lingua 29
  • 31. SITO, IMPOSTAZIONI SITO; c) Nell’area AMMINISTRAZIONE SITO, selezionare IMPOSTAZIONI LINGUA; d) Ora impostare, tra le LINGUE ALTERNATIVE, quella di interesse per il progetto (es. inglese), e impostare NO per l’opzione SOVRASCRIVI TRADUZIONI; e) Per editare le varie LABELS, accediamo, premendo sul nome utente/seleziona lingua di visualizzazione, a quella di nostro interesse, e cominciamo ad editare RIBBON BAR, QUICK BAR e WEB PART a nostro piacimento.Qui sotto è possibile vedere un esempio delle possibilità fornite dalla MUI di SHARE POINT 2010,in questo caso per la gestione della QUICK BAR. Figura 19 - Quick Access Bar con modifica tramite MUI 30
  • 32. 9. GESTIONE DEGLI ACCESSI E PERMESSI DEGLI UTENTIAltro tasto di ardua gestione all’interno del progetto è quello della gestione dei permessi degliutenti: è un problema non tanto a livello software, ma piuttosto a livello hardware.Se infatti, tralasciando le difficoltà che si possono riscontrare a livello di privacy nella gestionedei contenuti riservati consegnati dalla scuola, quali rendimenti scolastici, anagrafiche, o più ingenerale dati sensibili, il grosso problema risiede nel poter sostenere adeguatamente un’altaquantità di accessi autenticati a tale applicazione: se non vi sono dei requisiti hardwaresufficienti, non sarà possibile consentire l’accesso ad un numero elevato di utenze.Oltretutto, la gestione delle utenze richiederebbe la creazione di un database supplementare eparallelo a quello che è già a disposizione in Università: percorso impraticabile ancheconsiderando la possibilità di introdurre le utenze all’interno dello stesso databaseuniversitario, poiché un migliaio di nuovi accrediti risulterebbero insostenibili.Dialogando con la scuola, ed interfacciandosi con il relatore, si è giunti alla conclusione diridurre, almeno momentaneamente, il numero di utenti richiesti, limitandoli ad un grupposelezionato di docenti ed al personale amministrativo, concedendo a questi l’accesso alle zoneriservate CIRCOLARI e FORUM.Essendo questi due ultimi delle liste teoricamente accessibili anche all’utente anonimo, lapriorità sarà quella di proteggere e nascondere a tale utenza il link di accesso, settandocorrettamente i diritti di visualizzazione e gestione. Figura 20 - Informazioni elencoNel progetto, ad esempio, si può andare a nascondere l’accesso all’area forum: a) Accedendo tramite browser all’applicazione, andare in AZIONI SITO, IMPOSTAZIONI SITO; 31
  • 33. b) In AMMINISTRAZIONE SITO, selezionare RACCOLTE ED ELENCHI DEL SITO; c) Selezionare PERSONALIZZA <NOME_LISTA>; d) Nella nuova finestra, selezionare AUTORIZZAZIONI PER L’ELENCO DI TIPO <TIPO_ELENCO>; e) Selezionare, nella RIBBON BAR, INTERROMPI EREDITARIETÀ AUTORIZZAZIONI; f) Nella stessa barra, selezionare ACCESSO ANONIMO; g) Togliere le spunte per tutte le opzioni presenti; Figura 21 - Accesso anonimo per Liste h) Premere OK;In tal modo, e reiterando il ragionamento a tutte le liste di interesse, sarà possibile proteggerein modo adeguato le strutture che lo richiederanno. 32
  • 34. 10. TIPS & TRICKS DI SVILUPPO DELL’APPLICAZIONEPoiché l’applicazione alla base del progetto non è puramente la struttura di SITE e SUBSITES, eneppure unicamente la gestione dell’accesso anonimo al db, può risultare interessanteosservare quali siano quei passaggi, quei trucchi, che permettono di avere un’applicazione piùpulita e piacevole all’utente finale. 10.1. INTEGRAZIONE DELL’ACCESSO AL DB SU PIATTAFORMA ACCESSSeppur possa sembrare banale ed, anzi, controproducente per un utente più smaliziato, laconversione dell’accesso dei dati del db SQL Server per un end user inesperto potrebberisultare solo che conveniente, avendo un approccio più leggero e ordinato quale quello inMICROSOFT ACCESS.Dovendoci relazionare con un personale amministrativo che non può stare a perder tempo percomprendere cosa sia SQL SERVER, l’obiettivo di questo paragrafo è quello di fornire un piccolomodulo, utilizzabile in MICROSOFT ACCESS 2010 (oppure 2007). Tale front-end permetterà dielaborare o direttamente i dati presenti nelle liste e non direttamente gestite dal DBMS,oppure quelle presenti nel motore. 10.1.1. ACCESS PER LE LISTEUn primo passo di sviluppo di front-end su ACCESS può essere quello di linkare le liste presentinell’applicazione in un ACCESS DATABASE. Il procedimento presentato è applicato su MICROSOFTACCESS 2010: a) Avviato il programma, creare un NUOVO DATABASE VUOTO, indicandone il nome; b) Nella schermata apparsa, selezionare nella ribbon bar DATI ESTERNI; Figura 22 - Ribbon bar di Access 2010 su Dati esterni c) Selezionare ALTRO, e dunque ELENCO DI SHARE POINT; d) Nelle videata successiva, selezionare COLLEGARE ALL’ORIGINE DATI CREANDO UNA TABELLA COLLEGATA, e proseguire; 33
  • 35. e) Dunque, selezionare gli elenchi che interessa avere disponibili nel front-end Access e continuare; Figura 23 - Selezione degli elenchi per il Front-EndA questo punto avremo ottenuto il front-end richiesto, con gli elenchi trattati come tabellelinkate. 10.1.2. ACCESS COME FRONT-END SQL SERVERAltro problema che l’end-user può incontrare è quello della gestione “semplificata” dei datiraccolti nel database presente nel DBMS SQL Server.Seguendo lo stesso ragionamento del punto precedente, viene qui proposta una possibilesoluzione, sfruttando questa volta però un ACCESS DATA PROJECT: a) Avviare il programma e, nella creazione, andare a selezionare il FOLDER di destinazione: da qui, in SALVA COME impostare PROGETTI DI MICROSOFT ACCESS (*.ADP); 34
  • 36. Figura 25 - Definizione di ADP in Access 2010b) Nella finestra apparsa, selezionare si; Figura 24 - Settaggi per connessione server SQL Server 35
  • 37. c) Ora inserire i dati necessari, come indicato in FIGURA 25, e premere ok.In questo modo, otterrò accesso a tutte le tabelle presenti nel database collegato, emodificarle a piacimento. 10.2. GESTIONE DI ACCESSO DA DISPOSITIVI MOBILIAltro interessante frangente di analisi è quello della configurazione dell’accessoall’applicazione web da dispositivi mobili, specie al giorno d’oggi. Avere un’interfaccia che siadatti in modo chiaro e comprensibile anche su mobile può risultare un punto a favore delprodotto.Dall’analisi e dai vari tentativi effettuati per una buona impaginazione delle strutture mobile, eda una riflessione relativa ai benefici che possa portate tale formato, si è giunti allaconclusione che, vista l’organizzazione SITE / SUBSITES e dal tipo di contenuti presentisull’applicazione, non risulti adeguato la gestione fornita da Microsoft. Dunque si è optato perl’eliminazione dell’accesso in formato mobile.Per poter ottenere tutto ciò, necessitiamo di tali passaggi: a) Andare in COMPUTER, ed inserire sulla barra degli indirizzi “inetpubwwwrootwssVirtualDirectories<NUMEROPORTA>App_Browsers”, inserendo al posto di <NUMEROPORTA> il numero della porta associato all’applicazione di interesse; b) Aprire con un editor di testo il file COMPAT.BROWSER; c) Ricercare la stringhe di codice <capability name="isMobileDevice" VALUE="True" /> e sostituirle con <capability name="isMobileDevice" VALUE="False" /> per tutte le volte che risulterà esservi tale stringa.In questo modo otterremo una visualizzazione del sito su dispositivo mobile di tale modo (quiverrà simulata tramite plug – in USER AGENT SWITCHER per MOZILLA FIREFOX, e confrontati i risultatiottenuti su un’applicazione con mobile access disabilitato, a sinistra, e abilitato, a destra). 36
  • 38. Figura 26 - Confronto disabilitazione Accesso per dispositivi mobili 10.3. CONFIGURAZIONE DEL TEMA PER L’UTENTE ANONIMOL’interesse del committente è quello di fornire una pagina più pulita possibile per l’utenteprincipale di tale applicazione: l’ANONYMOUS USER. Questo fattore però viene negato dallapresenza della RIBBON BAR che, pur risultando molto efficace ed efficiente nell’utilizzo insviluppo, risulta superflua ad un utente che non ha permessi di modifica. Il nostro interessesarà quello dunque di far sparire tale barra, mantenendo ordinata la pagina. 10.3.1. COME NASCONDERE LA RIBBON BARIl nostro intervento dovrà essere eseguito sulla MASTER PAGE dell’applicazione. a) Accedendo tramite SPD all’applicazione, accedere a PAGINE MASTER; b) Copiare ed incollare l’elemento v4.master. Questo è necessario per poter ripristinare la pagina in caso di problemi; Figura 27 - Pagine master 37
  • 39. c) Rinominare il file a propria scelta (es. v4Final.master); d) Accedere al file appena creato, e selezionare modifica file; e) Accedere alla vista codice; f) Nello head del codice C#, introdurre tali stringhe: <asp:LoginView id="LoginView" runat="server"> <AnonymousTemplate> <style type="text/css"> body #s4-ribbonrow { display: none; } </style> </AnonymousTemplate> </asp:LoginView> g) Salvare.Tale codice ci fungerà da filtro sulla RIBBON, rendendola invisibile agli utenti non autorizzati.Questo però comporterà anche la sparizione del LOGIN BUTTON, che è necessario per accedere aicontenuti riservati. Vi è la necessità dunque di ripristinare tale bottone, integrandolo nel temadell’applicazione, configurandone una predefinita personalizzata. 10.3.2. CONFIGURAZIONE DEL TEMA PERSONALIZZATOL’esempio in considerazione recupererà un tema già esistente, da applicare per il temaanonimo. Figura 28 - Core*.css file a) Per un qualsiasi utente autenticato (ad esempio ADMIN), impostare un tema personalizzato; b) Tramite SPD, accedere a TUTTI I FILE/_THEMES/<NUMEROTEMA>; 38
  • 40. c) Con il tasto destro selezionare il primo CORE*.CSS file, e accedere alle proprietà; d) Copiare il TITOLO; e) Accedere alla master page modificata (es. v4Final.master); f) Al di sotto del tag SHAREPOINT:CSSLINK inserire tale codice: <SharePoint:CssRegistration runat=”server” name=”<TITOLO-CORE*.CSS-FILE- DI-PTO-C>” EnableCssTheming=”true” After=”true”/> g) Salvare.Per poter vedere i progressi effettuati, cliccare con il tasto destro sulla pagina master editata epremere sia IMPOSTA COME PAGINA MASTER PREDEFINITA che IMPOSTA COME PAGINA MASTERPERSONALIZZATA.Ora va reintegrato il LOGIN BUTTON: h) All’interno del BODY della pagina master, localizzare la posizione in cui si vuole introdurre il bottone di login (utilizzare anche la doppia visualizzazione per trovare più comodamente la porzione di codice interessata); i) All’interno dei tag DIV di tale porzione, inserire il codice <wssuc:Welcome id="IdLogin" runat="server" EnableViewState="false"> </wssuc:Welcome> <wssuc:MUISelector runat="server"/> j) Per poterlo integrare al meglio il login button con il tema definito, andare a modificare il CORE*.CSS recuperato in c), editando con particolare interesse la sezione le classi .MS- WELCOMEMENU (che determina forme e colori del bottone), .S4-TITLE (per l’editing della barra del titolo) e .S4-TITLETEXT (che concerne le scritte di quest’ultima barra).Nel progetto in questione, si è optato di integrare il LOGIN BUTTON all’interno della TITLE BAR,nascondendo il bottone dalla ribbon anche per gli utenti autenticati, ottenendo un risultatopiuttosto pulito: 39
  • 41. Figura 29 - Tema personalizzato con eliminazione Ribbon Bar40
  • 42. 11. CONCLUSIONILo sviluppo dell’applicazione web commissionata da parte della scuola è risultato di grossointeresse, anche a livello formativo. L’utilizzo di un CMS proprietario MICROSOFT come quelloSHARE POINT mi ha dato la possibilità di studiare ed analizzare oltre che un nuovo tool,principalmente quali siano i parametri e le caratteristiche che in un prossimo futuro potrannoessere utili nell’ambiente lavorativo, mettendomi in evidenza quali siano le informazioni che ilcommittente lavorativo prediligerà.L’apprendimento è stato lento all’inizio, ma colti i passaggi basilari, buona parte dei problemi èstata affrontata e risolta senza grosse difficoltà.L’impiego ha preso una ventina di ore per l’apprendimento delle caratteristiche avanzate,mentre circa altre 200 ore sono state dedicate all’analisi del progetto e della relativa scritturadel codice supplementare al semilavorato ottenuto tramite interfaccia grafica.Apprezzabile, dal mio punto di vista, il livello di protezioni che ha portato le maggiori difficoltànello sviluppo: l’utenza anonima, dal mio punto di vista, risulta poco considerata da SHAREPOINT, e dunque in alcune situazioni solo con workaround articolati si è potuto “aggirare”(anche se non è propriamente il termine più corretto da utilizzare, poiché le protezioni nonsono state mai violate) ciò che basilarmente non viene garantito a priori.Proprio questa alta protezione a livello anonimo mi porta a pensare che l’ambiente SHAREPOINT sia più adatto ad una funzionalità intranet, piuttosto che internet, pur risultandoparticolarmente efficiente in quei frangenti in cui non è vi è un grosso livello di gestione diinformazioni riservate, o almeno protette.Pur non avendo potuto risolvere, per limiti strutturali (sia a livello software che hardware),problemi quali la gestione dell’ e – learning, delle connessioni multilingua e delle utente, chepotranno comunque avere un futuro sviluppo in tale ambiente perché potenzialmentesupportate, ma al momento inaccessibili, mi ritengo piuttosto soddisfatto della possibilitàfornitami, poiché l’apprendimento di un tool a me completamente sconosciuto sino a primadell’inizio del progetto, e la possibilità di apprendere quali siano i fulcri che garantiscono ad 41
  • 43. un’azienda di avere una buona comunicazione interna e con il pubblico mi han permesso dimigliorare le mie conoscenze ed arricchire piacevolmente il mio curriculum.Il prodotto è in fase di produzione: presi gli accordi con il committente, la strutturadell’applicazione è già esistente ed on-line, anche se ne mancano i contenuti consegnati daquest’ultimo; unitamente, ne vanno raffinate alcune altre caratteristiche non fondamentali,ma esteticamente importanti.Come indicato, possibili sviluppi futuri potranno essere l’implementazione di una piattaformae-learning, ed un ampliamento delle utenze autenticate: SPD consentirà senza grosse difficoltà(almeno a livello software) di implementare questi. 42
  • 44. 12. BIBLIOGRAFIAJorg Krause, Christian Langhirt, Alexander Sterff, Bernd Pehlke, Martin Doring – SharePoint2010 as a Development PlatformTom Carpenter, James Pyles – Microsoft SharePoint 2010 AdministrationEmer McKenna, Kevin Laahs, Veli-Matti Vanamo – Microsoft SharePoint 2010 all-in-one forDummiesSimone de Bianchi, Maurizio Fermeglia – Sviluppo di applicazioni web con tecnologia MicrosoftSharepoint 2010  Gestione dell’accesso al db in SQL Serverhttp://dontpapanic.com/blog/?p=131http://blogs.msdn.com/b/bcs/archive/2010/03/12/authenticating-to-your-external-system.aspxhttp://technet.microsoft.com/en-us/library/ms172405.aspx  Gestione dell’accesso da dispositivi mobilihttp://blogs.technet.com/b/office2010/archive/2010/03/09/configure-sharepoint-server-2010-for-mobile-device-access.aspx  Modifica dei temi e della ribbon barhttp://social.technet.microsoft.com/Forums/en-US/sharepoint2010customization/thread/12bf4ed1-8bf3-4bc4-b108-8e26e27e8651http://www.sharepointgeoff.com/sharepoint-foundation-site-anonymous-access-no-theme/http://erikswenson.blogspot.com/2010/01/sharepoint-2010-base-css-classes.html 43
  • 45. APPENDICE A – MACROLIVELLI E DETTAGLI PROPOSTI DAL COMMISSIONARIO DELPROGETTOMacrolivello Dettagli I livello Dettagli II LivelloISTITUTO 1A Storia 2A Mission 3A Organigramma 4A Organi Collegiali 5A Piano Offerta Informativa 6A Regolamento Interno 7A I Corsi 7AA Materie dei Corsi 7AB Orario delle lezioni 7AC Docenti e Materie 8A Contatti e Orari Uffici 9A Bilancio Sociale 10A Modulistica 11A Presentazione Attività 12A Modulo di Iscrizione 13A Galleria Fotografica Tematica 14A Studenti Illustri 15A News 16 Dove SiamoPROGETTI 1B Progetto Sport Invernali 1BA E – Learning 1BB Materiale Didattico 1BC Forum Moderati 1BD Registro on – line 1C Progetto Impresa Simulata 1E Progetto Professioni della montagnaATTIVITA’ 1F Biblioteca 2F Emeroteca 3F Laboratori e aule 4F Prodotti educativi (audio, video, foto, testi) 5F Sondaggi on – line Area Protetta da Login e PasswordAREA DOCENTI 1G Comunicazioni 2G Circolari 3G Formazione 4G Classi 5G Orari docenze / supplenze 6G Registro Elettronico 7G Graduatorie 44
  • 46. 8G Inserisci Documentazione 8GA Notizie 8GB News 8GC Materiale Didattico Area Protetta da Login e PasswordAREA STUDENTI 1H Comunicazioni 2H Documentazione 3H Materiale didattico 4H Registro Elettronico 5H Libri di testo 6H Attività Studentesche 7H Blog Area Protetta da Login e PasswordAREA GENITORI 1I Comunicazioni 2I Documentazione 3I Materiale Didattico 4I Valutazione degli allievi 45
  • 47. APPENDICE B – SITUAZIONE SERVER DI3Stato, a settembre 2011, dei server del DI3. Si ringrazia Dario Cechet per i dati ottenuti. 46