zoukankan      html  css  js  c++  java
  • 七:HDFS Permissions Guide 权限

    1.权限模式
        简单:启动HDFS的操作系统用户即为超级用户,可以通过HADOOP_USER_NAME指定
        kerberos:

    2.group mapping 
        组列表由group mapping service完成,该服务由hadoop.security.group.mapping参数决定,默认值是org.apache.hadoop.security.JniBasedUnixGroupsMappingWithFallback,即由JNI. 如果没有JNI, 使用org.apache.hadoop.security.ShellBasedUnixGroupsMapping,意思是使用shell命令bash -c groups决定group. group mapping 服务由namenode提供

    3.如何执行权限
        每次执行一个操作之前都会检查权限。客户端会把用户标识发给namenode.

    4.改变文件系统权限的API
        
    • public FSDataOutputStream create(Path f, FsPermission permission, boolean overwrite, int bufferSize, short replication, long blockSize, Progressable progress) throws IOException;
    • public boolean mkdirs(Path f, FsPermission permission) throws IOException;
    • public void setPermission(Path p, FsPermission permission) throws IOException;
    • public void setOwner(Path p, String username, String groupname) throws IOException;
    • public FileStatus getFileStatus(Path f) throws IOException;

    5.改变文件系统权限的shell
       
    • chmod [-R] mode file …

      Only the owner of a file or the super-user is permitted to change the mode of a file.

    • chgrp [-R] group file …

      The user invoking chgrp must belong to the specified group and be the owner of the file, or be the super-user.

    • chown [-R] [owner][:[group]] file …

      The owner of a file may only be altered by a super-user.

    • ls file …
    • lsr file …
    以上命令使用bin/hdfs dfs -执行

    6.配置参数
     
    • dfs.permissions.enabled = true   是否启用权限

      If yes use the permissions system as described here. If no, permission checking is turned off, but all other behavior is unchanged. Switching from one parameter value to the other does not change the mode, owner or group of files or directories. Regardless of whether permissions are on or off, chmod, chgrp, chown and setfacl always check permissions. These functions are only useful in the permissions context, and so there is no backwards compatibility issue. Furthermore, this allows administrators to reliably set owners and permissions in advance of turning on regular permissions checking.

    • dfs.web.ugi = webuser,webgroup   

      The user name to be used by the web server. Setting this to the name of the super-user allows any web client to see everything. Changing this to an otherwise unused identity allows web clients to see only those things visible using "other" permissions. Additional groups may be added to the comma-separated list.

    • dfs.permissions.superusergroup = supergroup   超级用户组

      The name of the group of super-users.

    • fs.permissions.umask-mode = 0022    

      The umask used when creating files and directories. For configuration files, the decimal value 18 may be used.

    • dfs.cluster.administrators = ACL-for-admins

      The administrators for the cluster specified as an ACL. This controls who can access the default servlets, etc. in the HDFS.

    • dfs.namenode.acls.enabled = true  

      Set to true to enable support for HDFS ACLs (Access Control Lists). By default, ACLs are disabled. When ACLs are disabled, the NameNode rejects all attempts to set an ACL.













  • 相关阅读:
    System.BadImageFormatException: Could not load file or assembly
    MSSQL数据库索引的应用
    快递api网接口快递调用方法
    winform的扩展的带有截图功能picturebox
    免费api大全
    C#使用百度API通过IP获取地理位置和坐标
    用淘宝ip地址库查ip
    开源相关社区/项目一览(备查,欢迎补充)(转)
    .NET系列文章——近一年文章分类整理,方便各位博友们查询学习(转)
    设计模式--状态模式C++实现
  • 原文地址:https://www.cnblogs.com/skyrim/p/7455590.html
Copyright © 2011-2022 走看看