SharePoint Fundation instrument pentru ISO 27001 (ep.1)

Într-un articol anterior spuneam că un instrument foarte bun pentru implementarea ISO27001 poate fi SharePoint. Versiunea care o vom folosi pentru această serie de episoade este SharePoint Fundation 2010 cu părțile bune și lipsurile aferente. Versiunea SharePoint Server chiar și versiunile mai vechi ar răspunde mai bine cerințelor de implementare a ISO27001, dar cum economisirea primează, am preferat să alegem o versiune gratuită a sistemului de management al documentelor și proceselor de afaceri.

În continuare vom detalia un exemplu de implementare pe faze și metode pentru suportul decizional pentru întreg ciclu de viață al unui sistem de management al securității.

0. Start

Organizaţia decide să implementeze prevederile standardului ISO 27001.

În această etapă se stabilește necesitatea implementării ISMS 27001 și se definesc pașii de implementare. Managerul de proiect poate folosi SPF2010 în sensul gestionării proiectului, prin crearea unui site specializat pentru această activitate sau prin crearea unei liste de tip Project Task:

Create Project Tasks list

În planul de proiect se definesc etapele și perioadele de timp necesare implementării. Pentru cei familiarizați cu instrumentele de project management, crearea și gestionarea ativităților este foarte simplă. Activitățile pot fi grupate pe categorii, conținând următoarele criterii:

Grup de activități

Componenta de noutate în SPF2010 față de versiunile anterioare de SharePoint este dată de Diagrama Gantt.

Diagrama Gantt

Pentru definirea subactivităților (A.2.1, A.2.2,…) trebuie creat un element de tip Summary Task.

Un proiect din SPF2010 poate fi exportat în Access, Excel, Outlook și, în cazul în care aveți instalat pe calculatorul client, în Microsoft Project.

SPF2010 deține un instrument destul de avansat de control al erorilor. În exemplul de mai jos, este prezentată modul în care data a fost introdusă greșit.

Eroare dată

Pentru gestionarea sedinței de deschidere se poate utiliza crearea unui eveniment în calendarul organizației și un site de tip Meeting Workspace, în care se pot posta prezentări, agenda, documentele de tip minuta ședinței, permițând integrarea agendei și invitațiilor folosind sistemul de e-mail.

 

1. Obţinerea sprijinului din partea conducerii:

Dacă s-a luat decizia de implementare, conducerea trebuie să desemneze o echipă care să elaboreze Politica de Securitate a organizaţiei. Acest document trebuie revizuit, aprobat şi adus la cunoştinţa tuturor angajaţilor, pentru a cunoaște faptul că organizația va trece la implementarea SMSI.

Pentru această etapă în SPF201 se poate defini un Document Workspace sau o listă de documente distinctă la care să aibă acces toți angajații cu permisiuni de Read pentru consultare.

Securitatea pe librarie de documente

Esențial în faza de construcție este înregistrarea versiunilor pentru a reflecta toate modificările aduse documentului.

Versiuni document

 

2. Definirea scopului SMSI:

Pentru definirea scopului nu avem un exemplu de implementare în SPF2010 fiind o rezultantă a discuției de la ședința de deschidere. Putem utiliza în schimb un Decision meeting workspace pentru a vedea rezultatele voturilor, etc.

 

3. Inventarierea activelor informaționale:

În cadrul Scopului trebuie identificate activele organizaţiei (şi valoarea asociată acestora) care trebuie protejate, rezultând documentul sau baza de date Inventarul activelor.

Sunt convins că în orice organizație există cel puțin un fișier Excel în care sunt stocate informații despre activele informaționale, cel puțin cele fizice. Sau o parte din aceste active se pot obține din aplicațiile financiar-contabile din cadrul organizației.

Varianta cea mai simplă este să centralizăm într-un fișier aceste active și să le completăm cu informațiile necesare unei liste corecte de inventar conform ISO27001.

În Excel (2007) creem această listă centralizată, după care o definim ca un tabel și o exportăm într-o nouă listă SharePoint. Ulterior putem personaliza și îmbunătăți această listă nou creată prin adăugarea de noi coloane sau personalizarea coloanelor existente. Elementele din listă se pot actualiza permanent.

Foarte interesantă este funcția de versionare în 2010. De exemplu, dacă unui activ de tip server îi schimbăm memoria sau alte caracteristici tehnice, la actualizarea listei se păstrează și versiunea anterioară. Trebuie să știți că versionarea nu este activată implicit și putem stabili numărul maxim de versiuni. Nu trebuie să omitem prezența funcțiilor de validate a datelor introduse pentru a elimina inadvertențele sau greșelile:

Validation Rule for a text field

Adăugarea unui element nou este reprezentată schematic mai jos.

Adding a new asset

Owner-ul poate fi validat prin preluarea sa automată din sistemul de autentificare.

Pe o listă se pot activa filtre, sortări asemănător cu majoritatea operațiunilor aplicabile listelor din Excel, sau poate fi exportată direct în Excel pentru efectuarea de sinteze pivot sau importul în aplicațiile de Analiză a riscurilor.

Lista completă de operațiuni este prezentată în Ribonul List.

Ribonul List din SPF2010

O altă versiune de lucru, este ca fiecare departament să aibă propria sa librărie de documente sau o librărie de documente Excel comună în care să se salveze direct fișierele cu date, fiecare actualizare trebuind în acest fel să se realizeze doar prin deschiderea în aplicația client.

 

4. Stabilirea gradului de risc asociat activelor informaţionale:

Pe baza Inventarului activelor, se va realiza Analiza de Risc, care constă în identificarea pentru fiecare activ a ameninţărilor, vulnerabilităţilor şi impactului din prisma triadei Confidențialitate-Integritate-Disponibilitate.

Metoda de calcul am preluat-o de la Adi Munteanu.

Planul de evaluare a riscurilor

Modelul prezentat în figură este implementat într-o listă personalizată SharePoint care preia amenințările și vulnerabilitățile din alte două liste specifice. Sunt multe metodologii de evaluare a riscurilor (sau mai multe detalii aici), dar prin articolul curent am încercat să exemplificăm tehnica utilizată de aplicația vsRISK care după o serie de articole este menționat ca cel mai complet produs software pentru analiza de riscuri pentru implementarea și gestionarea ISO 27001.

Trebuie să mai amintim că în modelul referit nu am inclus și Planul de tratare a riscurilor care ar presupune adăugarea unei coloane noi în lista Planul de evaluare a riscurilor (PER).

Adăugarea unuei noi intrări în PER:

Adăugare element nou în PER

Fiecare asset trebuie tratat din prisma Triadei CID, numit aici Atribut, i se alocă o amenințare din lista de Amenințări. Mai departe Probabilitatea de apariție și Impactul sunt determinate pe baza experienței consultantului. În exemplul nostru, datorită Lipsei unui sistem de detecție a incendiilor, și a faptului că se fumează în sala în care se află DVD-ul cu softul respectiv, probabilitatea de apariție a unui incendiu a fost stabilită la nivelul 3, iar impactul este relativ mic (1) pentru că un kit de instalare poate fi descărcat de pe MSDN sau TechNet în lipsa DVD-ului original. Impactul ar fi mult mai mare dacă ar arde în incendiu, contractul sau certificatul de licențiere.

Nivelul de risc asociat se calculează automat pe baza Probabilității și Impactului.

Avantajul incontestabil al acestei metode, în contextul în care nu avem o altă aplicație de management al riscurilor este acela că anual sau ori de câte ori este cazul putem reface analiza de risc și poate fi partajată pentru mai mulți untilizatori simultan. Din cunoștințele mele, vsRISK este doar pentru monopost, adică un singur om poate lucra simultan la toată analiza de risc.

Lista generată în SharePoint poate fi migrată în alte aplicații de tip Office pentru analize avansate.

 

Încheind prezentul articol, într-o notă optimistă, avem credința că mulți manageri IT vor lua în calcul o analiză de risc folosind acest instrument. Rămâne de văzut!

Aștept părerile și propunerile de îmbunătățire.

 

Disclaimer:

Acest articol nu pretinde că cel mai bun instrument pentru implementarea ISO27001 este SharePoint Fundation, sau că metodele descrise aici sunt cele mai corecte și mai bune. El pune în evidență un mod de lucru, aducând la cunoștința celor interesați, faptul că Sistemul de Management al Securității nu reprezintă doar un standard procedural, un teanc de hîrtii cu care să te acoperi, ci un standar practic de lucru securizat în cadrul organizațiilor, chiar și din România.

SharePoint 2007 – Audit – Huge Storage

Zilele aceastea primeam din ce în ce mai multe sesizări că, Portalul este din ce în ce mai indisponibil cu erori care mai de care mai ciudate de genul HResult-uri.  Spațiul pe disc disponibil pe serverul de baze de date era 0! La o primă privire am spus că trebuie să fie de cantitatea mare de fișiere stocată… Dar… ca să se poată efectua rapid operațiuni trebuia golit din spațiu. Soluția: Backup de câteva ore la SharePoint și apoi golit tranzaction log:

– Fiecare comanda se executa pe rand. P_PortalFEAA_Content este numele bazei de date care ține un anumit site.
ALTER DATABASE P_PortalFEAA_Content
SET RECOVERY SIMPLE;
GO
– Shrink the truncated log file to 1 MB.
DBCC SHRINKFILE (P_PortalFEAA_Content_log, 1);
GO
– Reset the database recovery model.
ALTER DATABASE P_PortalFEAA_Content
SET RECOVERY FULL;

În felul acesta am eliberat 40 Gb. Și totuși nu este suficient.

Unde și ce date ține SharePoint?

Trebuia să găsesc o explicație… de ce baza de date este atât de imensă:

Prima tabelă la care m-am gândit pentru a putea determina cantitatea de fișiere stocate este AllDocs. 101.711  linii, 92 Mb. Asta înseamnă că nu aici este spațiul mare ocupat.

Următoarea tabelă în listă: AllDocStreams: 8101 linii 3,6 Gb. Tot nu-i bai. Ce conține această tabele? După cum v-ați imaginat: fișiere. Structura tabelei:

[Id] – Id-ul fișierului
[SiteId] – Site-ul în care se află stocat fișierul respectiv
[DeleteTransactionId] – Asta nu stiu ce inseamnă Smile
[ParentId] – Dacă este într-o anumită librărie și acolo într-un director
[Size] – Dimensiunea în biți a fișierului
[Level] – Pe ce nivel de directoare se află fișierul 
[Content] – Conținutul fișierului… stocat în format Hexazecimal. Nu știu dacă are sens să insistăm.

3 Gb nu erau chiar așa multe date stocate, așa că am trecut la celelalte tabelele… până am ajuns la AuditData.

image

Puteți număra? AuditData – 101.165 Gb, Index – 20 GB – 357.742.142. Milioane de înregistrări, Gb de date.

Așadar tabela de audit este una din cele mai importante tabele din SharePoint conținând un istoric al tuturor acțiunilor întreprinse într-un portal.

Hai să vedem puțin structura tabelei acestea:

       [SiteId] – În ce site se întâmplă povestea
      ,[ItemId] – Asupra cărui element/obiect se întâmplă o acțiune
      ,[ItemType] – tipul elementului asupra căruia se desfășoară acțiunea: 1, 2, 3, 4, etc
      ,[UserId] – ID-ul utilizatorului ca s-a ocupat cu acțiunea asupra obiectului/elementului
      ,[MachineName] – Numele calculatorului de pe care a făcut acțiunea. Este posibil să ia și valori nule
      ,[MachineIp] – IP-ul calculatorului de pe care s-a făcut o anumită acțiune
      ,[DocLocation] – locația documentului / paginii / obiectului asupra căruia s-a desfășurat acțiunea. Exemplu: News/PublishingImages/Promo/Licitatie_mos_craciun.jpg
      ,[LocationType] – un tip de locația care la mine apare permanent cu 0.
      ,[Occurred] – Data și ora la care s-a produs evenimentul. Exemplu: 2009-01-01 00:01:30.000 Asta înseamnă că în noaptea de anul nou cineva se uita pe Portal. Ciudat… Nu eram eu! Smile
      ,[Event] – ID-ul acțiunii, evenimentului: 3, 2, 1până pe la 100.
      ,[EventName] – Numele evenimentului. Poate fi NULL.
      ,[EventSource] – Sursa evenimentului: 0, 1, 2
      ,[SourceName] – Numele sursei. Poate fi de asemenea NULL. 
      ,[EventData] – Poate fi null la vizualizare, sau poate conține o versiune a documentului accesat modificat: <Version><Major>0</Major><Minor>6</Minor></Version>

De unde se configurează auditul și ce opțiuni avem?

Auditul s econfigurează pentru fiecare Web application în parte. Sau site ca să fim mai expliciți. Acest lucru se efectuează din Site Settings, Configure Audit Settings

image

Super faine opțiuni… numai că în momentul în care ai 14.000 de utilizatori, mare parte readeri, îți trebuie server special numai pentru audit. În contextul meu opțiunea viewing items in list este oarecum hazardată. Chiar dacă este foarte important să știi de câte ori a fost văzut un anunț, nu poți diminua performanțele implementării doar pentru acest lucru. Eu personal nu aș renunța la toate aceste opțiuni dacă aș fi într-o firmă de dimensiuni mai mici pentru că în felul acesta am istoricul tuturor acțiunilor efectuate.

Postulat
De multe ori în raportul performanță, jurnalizare/audit majoritatea renunța la audit. De ce? Pentru că e mai bine să meargă bine, decât să meargă binișor dar în siguranță.
De unde vedem rapoartele de audit?

Rapoartele de audit le putem vizualiza tot din Site Settings de la opțiunea View Auditing Reports:

image

Problema tipurilor acestea de rapoarte este că sunt generate în XML. XML este un fișier de tip text la urma urmei pe care poți să-l deschizi și în Excel. Dar dacă ai 101 Gb de date? Nici unul din aceste rapoarte nu se poate deschide în contextul cantității uriașe de date de la mine.

Aparent nu se afișează nici o eroare dar nici raportul nu este generat.În EventViewerputem identifica totuși două mesaje de eroare care nu sunt deosebit de explicite:

Provider    [ Name]  Office SharePoint Server
  – EventID 6482
   [ Qualifiers]  0
   Level 2
   Task 1328
   Keywords 0x80000000000000
  – TimeCreated   [ SystemTime]  2009-05-31T12:31:13.000Z
   EventRecordID 99047
   Channel Application

sau

– Provider   [ Name]  Office SharePoint Server 
– EventID 7076
  [ Qualifiers]  0 
  Level 2 
  Task 1328 
  Keywords 0x80000000000000 
– TimeCreated   [ SystemTime]  2009-05-31T12:31:13.000Z 
  EventRecordID 99048

Ambele au legătură cu memoria de pe serverul de SQL care nu are posibilitatea în cazul meu să proceseze toată cantitatea de informații.

O rezolvare elegantă este să faci o aplicație cu reporting services sau cu Analysis Service ca să extragi datele de acolo și să le afișezi altfel pe web.

Se pot șterge înregistrări din AuditData?

Da. Dar numai după ce au fost exportate în altă parte/format, etc. Teoretic!. Condițiile care trebuei îndeplinite sunt: trebuie să ai multă răbdare, în funcție și de numărul de înregistrări pe care le ai, și spațiu pe disc pentru tran log. După ce se termină operațiunea de ștergere, goliți din nou tran log.

De exemplu aici șterg doar înregistrările aferente anului 2008:

delete from auditData
  where YEAR(Occurred)=’2008′

În cazul în care spațiul pe disc necesar ștergerii nu este suficient, puteți să rafinați opțiunea de ștergere, în așa fel încât să ștergeți pe luni combinat permanent cu operațiunea de golire a transaction log.

În cazul în care ați făcut backup și vreți să ștergeți fără să duceți în transaction log, puteți face : truncate auditdata

După ce ați terminat de șters trebuie să faceți un SHRINKFILE și pe fișierele bazei de date pentru redimensiunarea fișierelor.

Atenție: În mod implicit auditul nu este activat. Activați-l!

Spor la succes!

MVP 2010 – SharePoint Engineering

Astăzi am primit reconfirmarea pentru titultatura de MVP pentru tehnologia SharePoint Server specializarea Engineering.

Profilul meu de MVP conține doar o serie de elemente care mi-au adus reconfirmarea anul acesta. Din păcate datorita unor neînțelegeri regretabile, nu sunt în măsură să fac anumite referințe către article scrise anul acesta despre SharePoint. Le am salvate, și au contat.

Și totuși înante de a fi profesioniști suntem oameni, pentru că altfel cum ar putea tehnologia să ajute oamenii dacă noi nu-i înțelegem pe beneficiarii acesteia.

De aceea, vă doresc să vă împliniți ca oameni și apoi să deveniți buni profesioniști. Prioritățile sunt indiscutabil așa cum și le definește fiecare, dar se merită oare?

Momentele unice petrecute în famile nu ai cum să le întâlnești cu aceeași căldură și seninătate în activitatea profesională.

Un an nou plin de succes urez tuturor!

Blog la WordPress.com.

SUS ↑