EDV:WebSeitenEditieren/Zugriffskontrolle: Difference between revisions
Line 113: | Line 113: | ||
AuthBasicProvider ldap file |
AuthBasicProvider ldap file |
||
AuthBasicAuthoritative On |
AuthBasicAuthoritative On |
||
AuthUserFile '''/ |
AuthUserFile '''/afs/kip/user/weis/public_html/.htpasswd''' |
||
AuthzLDAPAuthoritative Off |
AuthzLDAPAuthoritative Off |
||
AuthLDAPURL ldap://ldap.kip.uni-heidelberg.de/ou=people,dc=kip.uni-heidelberg,dc=de?uid?sub?(objectClass=KIPUserObject) |
AuthLDAPURL ldap://ldap.kip.uni-heidelberg.de/ou=people,dc=kip.uni-heidelberg,dc=de?uid?sub?(objectClass=KIPUserObject) |
Revision as of 09:27, 27 January 2017
Zugriffskontrolle auf KIP-Webseiten
Den Zugriff auf bestimmte Bereich im Web können Sie mit Hilfe der .htaccess-Dateien einschrÀnken. Der Zugriffsschutz bezieht sich dabei immer auf Verzeichnisse. NÀheres können Sie unter http://httpd.apache.org/docs/2.0/howto/htaccess.html nachlesen
EinschrÀnkung auf IP-Bereiche
Sie können den Zugriff auf bestimmte Netzbereiche einschrÀnken:
<Limit GET> deny from all allow from .uni-heidelberg.de </Limit>
oder auch
<Limit GET> deny from all allow from 129.206.0.0/255.255.0.0 allow from 147.142.0.0/255.255.0.0 </Limit>
Zugriff nur fĂŒr KIP-Accounts
Hier nun ein Beispiel fĂŒr eine .htaccess-Konfiguration, mit der man erreichen kann, dass Web-Bereiche nur fĂŒr KIP-Accounts abrufbar sind:
AuthType Basic AuthName "protected area please use your KIP Account" AuthBasicProvider ldap AuthBasicAuthoritative On AuthUserFile /dev/null AuthzLDAPAuthoritative Off AuthLDAPURL ldap://ldap.kip.uni-heidelberg.de/ou=people,dc=kip.uni-heidelberg,dc=de?uid?sub?(objectClass=KIPUserObject) require valid-user
Zugriff nur fĂŒr selbst definierte Accounts
Sie können sich aber auch selbst eine Passwort-Datei anlegen, die fĂŒr die Authentifikation benutzt wird. Achten Sie bitte darauf, dass die Passwortdatei in einem Bereich gespeichert ist, der vom Webserver gelesen werden kann.
Beispiel : /afs/kip/user/weis/public_html/.htpasswd
Die Passwortdatei können Sie selbst erzeugen: (Zum Beispiel von kip1 aus)
> htpasswd -c /afs/kip/user/weis/public_html/.htpasswd gast1 New password: Re-type new password: Adding password for user gast1
Mit htpasswd2 kann das Passwort verÀndert bzw. weitere Benutzer angelegt werden:
> htpasswd -b /afs/kip/user/weis/public_html/.htpasswd Student MELecture Adding password for user Student
> cat /afs/kip/user/weis/public_html/.htpasswd gast1:xjNSN5Vx3dDt2 Student:ow1i0zkBsTf8I
Weitere Infos zu htpasswd gibt es mit 'man htpasswd'
Die .htaccess-Datei sieht dann so aus:
AuthType Basic AuthName "protected area please give your Password" AuthBasicProvider file AuthBasicAuthoritative On AuthUserFile /afs/kip/user/weis/public_html/.htpasswd require valid-user # oder auch # require user gast1 entwickler3
Kombination : LDAP und IP-Bereiche
Wenn Sie die zwei Methoden kombinieren möchten, d.h. freier Zugriff aus bestimmten Bereichen, sonst aber nur mit Angabe des KIP-Accounts, dann sieht das so aus:
AuthType Basic AuthName "protected area please use your KIP Account" AuthBasicProvider ldap AuthBasicAuthoritative On AuthUserFile /dev/null AuthzLDAPAuthoritative Off AuthLDAPURL ldap://ldap.kip.uni-heidelberg.de/ou=people,dc=kip.uni-heidelberg,dc=de?uid?sub?(objectClass=KIPUserObject) require valid-user satisfy any <Limit GET> deny from all allow from .uni-heidelberg.de </Limit>
Und falls Sie möchten, dass beide Bedingungen erfĂŒllt sein mĂŒssen. D.h. Zugriff aus der Uni-Heidelberg UND authentifiziert ĂŒber den KIP-Account, dann ersetzen Sie satisfy any durch satisfy all.
Kombination : LDAP und selbst definierte Accounts
Ein Beispiel:
Zugriff nur fĂŒr die LDAP-Accounts 'weis' und 'voerg' und fĂŒr den selbst definierten Account 'gast1':
Die zugehörige htpasswd-Datei wurde so wie oben erklÀrt erzeugt.
AuthType Basic AuthName "protected area please use your KIP Account" AuthBasicProvider ldap file AuthBasicAuthoritative On AuthUserFile /afs/kip/user/weis/public_html/.htpasswd AuthzLDAPAuthoritative Off AuthLDAPURL ldap://ldap.kip.uni-heidelberg.de/ou=people,dc=kip.uni-heidelberg,dc=de?uid?sub?(objectClass=KIPUserObject) require user weis voerg gast1