- Accesso ai dati
- Non permettere l'apertura di database da URL
- Accesso sicuro HTTPS
Dal momento che su un Domino server è attivo il task HTTP, automaticamente tutte le applicazioni (database) e gli stessi modelli (nomefile.NTF) sono pubblicati e accessibili via HTTP. Questo pone molte questioni sulla sicurezza, alle quali gli amministratori sono tenuti a verificare.
Accesso ai dati
Per Default Domino pubblica tutti i dati che sono residenti nella Directory DATA e sottodirectory per quanto concerne i Database NSF e NTF, mentre per pagine .htm o .html il default è configurato e configurabile nel documento del server (se non attivi gli internet site) sotto la voce "HTML directory".
Digitando da un browser: "http://www.dominopoint.it" verrà aperto come url; "http://www.dominopoint.it/dominopoint/dominopoint_blog.nsf".
Nonostante questo se io digitassi come url:
"http://www.dominopoint.it/names.nsf" cercherei di accedere alla rubrica indirizzi di domino (dove sono presenti dati utenti, servers e documenti di configurazione del mio ambiente). Qualsiasi database è quindi richiamabile conoscendone il nome.
Detto ciò è quindi fondamentale assicurarsi che nessun database sia apribile e leggibile da utenti anonimi (a meno che si tratti di un database il cui scopo sia la visibilità ad anonimo come il blog di Dominopoint). Perchè questo avvenga è fondamentale aggiungere su tutti i database .NSF e . NTF la voce "anonymous" con accesso "No Access".
In mancanza di questa voce la sicurezza dei dati in visibilità non è assicurata.
Questa operazione può essere eseguita in diversi modi. Dal client di amministrazione (avendo la certezza di essere manager su tutti i database)*
Selezionando tutti i database e quindi cliccando su "Database" - "Manage ACL"
Cliccare su ADD ed inserire manualmente "anonymous".
Questo metodo ha un difetto di forma. Se esiste già la voce "anonymous" (anche con un accesso diverso da No access) su quel db il valore di accesso di anonymous non verrà modificato.
In alternativa potete eseguire la stessa azione mediate uno script(creare un agente magari nella Domino Directory). Di seguito un esempio dello script che potete utilizzare e che sovrascrive qualsiasi voce preesistente:
Sub Initialize
Dim s As New NotesSession
Dim DbDir As NotesDbDirectory
Dim db As NotesDatabase
Dim status As Integer
Dim x As Integer
Dim errormsg As String
filenum% = Freefile()
Open "c:\ACLupdate.txt" For Append As filenum% ' log file of actions
Set DbDir = New NotesDbDirectory("CN=Domino01/O=Domino")
Set db = DbDir.GetFirstDatabase(DATABASE)
On Error Goto myerror
While Not db Is Nothing
status=1
Call db.Open("","")
Set ACL = db.ACL
Set entry = acl.getentry("Anonymous")
If entry Is Nothing Then
status = 2
Call db.acl.createACLEntry("Anonymous", ACLLEVEL_NOACCESS)
Else
Call db.GrantAccess("Anonymous", ACLLEVEL_NOACCESS)
End If
status = 3
Call acl.save
Print #1, "Added 'Anonymous' to " & db.FileName &"'s Access Control List..."
skipthis:
Set db = DbDir.GetNextDatabase
Wend
Close filenum%
Exit Sub
myerror:
errormsg = ""
Select Case status
Case 1 : errormsg = "Error opening db "
Case 2 : errormsg = "Error creating ACL entry in db "
Case 3 : errormsg = "Error saving ACL in db "
End Select
Print #1, "* FAILED* " &errormsg & ": "& db.server & " " & db.filepath &" \" & db.filename & ", " & db.title
Resume skipthis
End Sub
Non permettere l'apertura di database da URL:
Un'altra possibilità per evitare accesso a Database da web è la funzione di blocco che potete attivare dalle proprietà dei database:
Don't allow URL open
Così facendo il database non sarà richiamabile tramite URL via HTTP/s.
Accesso sicuro HTTPs
L'HTTPs permette di accedere alle risorse del server domino in sicurezza. Questo significa sopratutto che il processo di autenticazione (dati utente e password) avviene su un canale cifrato dal server.
Avendo quindi implementato l'HTTPs sul proprio server è possibile forzare determinati database ad accettare di essere richiamati per mezzo URl solo in condizioni HTTPs. Questo perchè anche per errore un utente potrebbe aprire un determinato database e quindi autenticarsi al server in condizione non sicura (HTTP).
Per evitare questo sono possibili due strade.
Obbligare l'apertura di tutti i database tramite HTTPS: Nel documento del server sotto PORTS - Internet Ports - Web impostare "Redirect to SSL" tutte le richieste che provengono tramite HTTP.
Impostare lato database che questi può essere aperto solo mediante chiamata di tipo HTTPs: Attivare dalle propietà del database
Require SSL connection
* A partire dalla R6.x immettendosi nel campo Full Access Administrator potete eseguire questa operazione anche se non avete accesso Manager a tutti i database
0 Commenti:
Nessun Commento Trovato