IAclFileAttributeView Interfaccia
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Visualizzazione dell'attributo di file che supporta la lettura o l'aggiornamento degli attributi di Controllo di accesso elenchi di file (ACL) o di proprietario di file.
[Android.Runtime.Register("java/nio/file/attribute/AclFileAttributeView", "", "Java.Nio.FileNio.Attributes.IAclFileAttributeViewInvoker", ApiSince=26)]
public interface IAclFileAttributeView : IDisposable, Java.Interop.IJavaPeerable, Java.Nio.FileNio.Attributes.IFileOwnerAttributeView
[<Android.Runtime.Register("java/nio/file/attribute/AclFileAttributeView", "", "Java.Nio.FileNio.Attributes.IAclFileAttributeViewInvoker", ApiSince=26)>]
type IAclFileAttributeView = interface
interface IFileOwnerAttributeView
interface IFileAttributeView
interface IAttributeView
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- Attributi
- Implementazioni
Commenti
Visualizzazione dell'attributo di file che supporta la lettura o l'aggiornamento degli attributi di Controllo di accesso elenchi di file (ACL) o di proprietario di file.
Gli ACL vengono usati per specificare i diritti di accesso agli oggetti del file system. Un elenco di controllo di accesso è un elenco ordinato di AclEntry access-control-entries
, ognuno dei quali specifica un UserPrincipal
oggetto e il livello di accesso per l'entità utente. Questa visualizzazione degli attributi di file definisce i #getAcl() getAcl
metodi e #setAcl(List) setAcl
per leggere e scrivere ACL in base al modello ACL specificato in RFC 3530: Protocollo NFS (Network File System) versione 4http://www.ietf.org/rfc/rfc3530.txt. Questa visualizzazione attributi file è destinata alle implementazioni del file system che supportano il modello ACL NFSv4 o hanno un <mapping em>ben definito</em> tra il modello ACL NFSv4 e il modello ACL usato dal file system. I dettagli di tale mapping dipendono dall'implementazione e pertanto non sono specificati.
Questa classe si estende FileOwnerAttributeView
anche in modo da definire i metodi per ottenere e impostare il proprietario del file.
Quando un file system fornisce l'accesso a un set di FileStore file-systems
che non sono omogenei, solo alcuni dei file system possono supportare gli ACL. Il FileStore#supportsFileAttributeView supportsFileAttributeView
metodo può essere usato per verificare se un file system supporta gli elenchi di controllo di accesso.
<Interoperabilità< h2>/h2>
RFC 3530 consente l'uso di identità utente speciali su piattaforme che supportano le autorizzazioni di accesso definite POSIX. Le identità utente speciali sono "", "OWNER@
GROUP@
" e "EVERYONE@
". Quando sono supportati sia e AclFileAttributeView
PosixFileAttributeView
, queste identità utente speciali possono essere incluse nell'elenco di controllo AclEntry entries
di accesso che vengono lette o scritte. Il file system UserPrincipalLookupService
può essere usato per ottenere un UserPrincipal
oggetto per rappresentare queste identità speciali richiamando il UserPrincipalLookupService#lookupPrincipalByName lookupPrincipalByName
metodo .
<b>Esempio di utilizzo:</b> Si supponga di voler aggiungere una voce a un elenco di controllo di accesso esistente per concedere l'accesso "joe":
// lookup "joe"
UserPrincipal joe = file.getFileSystem().getUserPrincipalLookupService()
.lookupPrincipalByName("joe");
// get view
AclFileAttributeView view = Files.getFileAttributeView(file, AclFileAttributeView.class);
// create ACE to give "joe" read access
AclEntry entry = AclEntry.newBuilder()
.setType(AclEntryType.ALLOW)
.setPrincipal(joe)
.setPermissions(AclEntryPermission.READ_DATA, AclEntryPermission.READ_ATTRIBUTES)
.build();
// read ACL, insert ACE, re-write ACL
List<AclEntry> acl = view.getAcl();
acl.add(0, entry); // insert before any DENY entries
view.setAcl(acl);
<h2> Dynamic Access </h2>
Se è necessario l'accesso dinamico agli attributi di file, gli attributi supportati da questa visualizzazione attributi sono i seguenti: <blockquote><table class="striped"><caption style="display:none">Supported attributes</caption><thead><tr><th scope="col" Name </th th><scope="col"> Type </th></tr></thead><tbody><tr><th scope="row"> "acl"></th><Td>List
<UserPrincipal
/tr<>/tbody<>/table></blockquote>
Il Files#getAttribute getAttribute
metodo può essere utilizzato per leggere gli attributi ACL o owner come se richiamassero i #getAcl getAcl
metodi o #getOwner getOwner
.
Il Files#setAttribute setAttribute
metodo può essere usato per aggiornare gli attributi ACL o owner come se richiamassero i #setAcl setAcl
metodi o #setOwner setOwner
.
<h2> Impostazione dell'ACL durante la creazione di un file </h2>
Le implementazioni che supportano questa visualizzazione attributi possono anche supportare l'impostazione dell'elenco di controllo di accesso iniziale durante la creazione di un file o di una directory. L'elenco di controllo di accesso iniziale può essere fornito a metodi come Files#createFile createFile
o Files#createDirectory createDirectory
con FileAttribute
"acl:acl"
FileAttribute#name name
e un FileAttribute#value value
oggetto che rappresenta l'elenco di AclEntry
oggetti .
Se un'implementazione supporta un modello ACL diverso dal modello ACL definito da NFSv4, quindi l'impostazione dell'ACL iniziale durante la creazione del file deve convertire l'ACL nel modello supportato dal file system. I metodi che creano un file devono rifiutare (generando IOException IOException
) qualsiasi tentativo di creare un file che sarebbe meno sicuro in seguito alla traduzione.
Aggiunta nella versione 1.7.
Documentazione java per java.nio.file.attribute.AclFileAttributeView
.
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.
Proprietà
Acl |
Visualizzazione dell'attributo di file che supporta la lettura o l'aggiornamento degli attributi di Controllo di accesso elenchi di file (ACL) o di proprietario di file. |
Handle |
Ottiene il valore JNI dell'oggetto Android sottostante. (Ereditato da IJavaObject) |
JniIdentityHashCode |
Restituisce il valore di |
JniManagedPeerState |
Stato del peer gestito. (Ereditato da IJavaPeerable) |
JniPeerMembers |
Supporto per l'accesso ai membri e la chiamata. (Ereditato da IJavaPeerable) |
Owner |
Visualizzazione dell'attributo di file che supporta la lettura o l'aggiornamento degli attributi di Controllo di accesso elenchi di file (ACL) o di proprietario di file. (Ereditato da IFileOwnerAttributeView) |
PeerReference |
Restituisce un JniObjectReference oggetto dell'istanza dell'oggetto Java di cui è stato eseguito il wrapping. (Ereditato da IJavaPeerable) |
Metodi
Disposed() |
Chiamato quando l'istanza è stata eliminata. (Ereditato da IJavaPeerable) |
DisposeUnlessReferenced() |
Se non sono presenti riferimenti in sospeso a questa istanza, chiama |
Finalized() |
Chiamato quando l'istanza è stata finalizzata. (Ereditato da IJavaPeerable) |
Name() |
Restituisce il nome della visualizzazione attributi. |
SetJniIdentityHashCode(Int32) |
Impostare il valore restituito da |
SetJniManagedPeerState(JniManagedPeerStates) |
Visualizzazione dell'attributo di file che supporta la lettura o l'aggiornamento degli attributi di Controllo di accesso elenchi di file (ACL) o di proprietario di file. (Ereditato da IJavaPeerable) |
SetPeerReference(JniObjectReference) |
Impostare il valore restituito da |
UnregisterFromRuntime() |
Annullare la registrazione di questa istanza in modo che il runtime non lo restituisca dalle chiamate future Java.Interop.JniRuntime+JniValueManager.PeekValue . (Ereditato da IJavaPeerable) |
Metodi di estensione
JavaCast<TResult>(IJavaObject) |
Esegue una conversione del tipo di tipo controllato dal runtime Android. |
JavaCast<TResult>(IJavaObject) |
Visualizzazione dell'attributo di file che supporta la lettura o l'aggiornamento degli attributi di Controllo di accesso elenchi di file (ACL) o di proprietario di file. |
GetJniTypeName(IJavaPeerable) |
Visualizzazione dell'attributo di file che supporta la lettura o l'aggiornamento degli attributi di Controllo di accesso elenchi di file (ACL) o di proprietario di file. |