Warum kann ich keine ACL für AFS festlegen, obwohl ich in der richtigen Gruppe bin?

756
Torandi

Ich habe ein Verzeichnis, über das ich auf einem AFS-System die Kontrolle verloren habe. Laut den Systemadministratoren hat meine Adminin-Untergruppe (dsekt: admin) rlidwkadas Verzeichnis. Ich bin Mitglied dieser Gruppe (und ich kann die Mitglieder der Gruppe auflisten und meinen Nick dort sehen), aber ich kann keine ACL festlegen.

Die Punkte:

$>pts membership dsekt:admin  Members of dsekt:admin (id: -6813) are: /.../ taran 

Und meine klist:

$>klist Credentials cache: FILE:/tmp/krb5cc_56782 Principal: taran@NADA.KTH.SE 

Sowohl dsekt: admin als auch das Verzeichnis befinden sich auf dem Knoten NADA.KTH.SE.

1

3 Antworten auf die Frage

1
Paul Blackburn

Bei AFS werden Zugriffssteuerungslisten (Access Control Lists, ACLs) verwendet, um Zugriffsrechte für Verzeichnisse (nicht für Dateien) festzulegen. (ACL-Ref: http://www.angelfire.com/hi/plutonic/afs-faq.html#sub2.04 )

Zeigen Sie zunächst die ACL im Verzeichnis an: fs la $ -Verzeichnis

Zum Beispiel:

tweety@toontown $ fs listacl . Access list for . is Normal rights: fac:coords rlidwka system:anyuser rl 

Sehen Sie sich als Nächstes die ACL an und vergewissern Sie sich, dass Ihre AFS-ID entweder in der ACL enthalten ist oder Mitglied einer Gruppe in der ACL ist. Sie können die Gruppenmitgliedschaft überprüfen mit:pts mem $afs_group_name

Überprüfen Sie anschließend die AFS-Zugriffsrechte (siehe: http://www.angelfire.com/hi/plutonic/afs-faq.html#sub2.04 ) und bestätigen Sie, dass Sie über die erforderlichen Zugriffsrechte verfügen.

Für die Verwaltung einer ACL benötigen Sie nur das Zugriffsrecht "a". In der Praxis ist es jedoch einfacher, alle Rechte zu haben: "rwlidka".

Bestätigen Sie viertens, dass Sie sich in Ihrer AFS-Zelle authentifiziert haben und über ein aktives Token verfügen:

Zum Beispiel:

elmer@toontown $ tokens Tokens held by the Cache Manager:  User's (AFS ID 9997) tokens for afs@ny.acme.com [Expires Sep 15 06:50] User's (AFS ID 5391) tokens for afs@sf.acme.com [Expires Sep 15 06:48] --End of list-- 

In AFS ist es möglich, sich in mehr als einer Zelle zu authentifizieren.

1
adeason

Der fs getcalleraccessBefehl kann hilfreich sein, um festzustellen, welche Zugriffsrechte AFS für ein Verzeichnis besitzt. Renn einfach:

$ fs getcalleraccess Callers access to . is rlidwka 

Eine Möglichkeit, die noch nicht von anderen Antworten abgedeckt wird, besteht darin, dass Sie möglicherweise in einer "negativen" ACL im entsprechenden Verzeichnis aufgeführt sind. Negative ACLs sind nicht sehr häufig, sie werden jedoch "nach" den normalen positiven ACLs angewendet, dh negative ACLs trumpfen positive ACLs.

Zum Beispiel:

$ fs la Access list for . is Normal rights: system:administrators rlidwka system:anyuser rl foo1 rlidwka Negative rights: foo1 rlidwka 

Benutzer 'foo1' kann in diesem Beispiel nicht auf das Verzeichnis zugreifen, obwohl er mit positiven 'rlidwka'-Rechten aufgeführt ist. So entfernen Sie den negativen ACL-Eintrag:

$ fs sa . foo1 none -negative $ fs la Access list for . is Normal rights: system:administrators rlidwka system:anyuser rl foo1 rlidwka 
0
kmarsh

Ich bin mit Andrew nicht sehr vertraut, aber in der Regel werden einige Berechtigungen im übergeordneten Verzeichnis gespeichert. Möglicherweise benötigen Sie dort auch Berechtigungen.