Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

API NameGet Repository
Request TypeGET
Request URLservice/public/api/repository/{id}
Request Params 
Response

•Example Response:

Code Block
themeFadeToGrey
languagejs
linenumberstrue
collapsetrue
{
 "id": 1,
 "createDate": "2014-10-07T07:23:39Z",
 "updateDate": "2014-10-07T07:23:39Z",
 "owner": "Admin",
 "updatedBy": "Admin",
 "name": "hadoopdev",
 "description": "hadoop repo",
 "config": {
 "username": "hadoop",
 "password": "*****",
 "fs.default.name": "hdfs://ip-172-31-38-49.ec2.internal:8020",
 "hadoop.security.authorization": "true",
 "hadoop.security.authentication": "kerberos",
 "hadoop.security.auth_to_local": "RULE:[2:$1@$0](jhs@.*EXAMPLE.COM)s/.*/mapred/ RULE:[2:$1@$0]([nr]m@.*EXAMPLE.COM)s/.*/yarn/ RULE:[2:$1@$0] ([nd]n@.*EXAMPLE.COM)s/.*/hdfs/ DEFAULT",
 "dfs.datanode.kerberos.principal": "dn/_HOST@EXAMPLE.COM",
 "dfs.namenode.kerberos.principal": "nn/_HOST@EXAMPLE.COM",
 "dfs.secondary.namenode.kerberos.principal": "nn/_HOST@EXAMPLE.COM",
 "commonNameForCertificate": "",
 "isencrypted": "true"
 },
 "repositoryType": "HDFS",
 "isActive": true,
 "version": "0.4.0"
}

...

API NameUpdate Repository
Request TypePUT
Request URLservice/public/api/repository/{id}
Request Params

Application/json

• HDFS Example:

Code Block
themeFadeToGrey
languagejs
titleHDFS Example
linenumberstrue
collapsetrue
 {
 "name": "hadoopdev",
 "description": "Hadoop Dev",
 "isActive": true,
 "repositoryType": "hdfs"
config: "{
 "username": "policymgr",
 "password": "policymgr",
 "fs.default.name": "hdfs://sandbox.hortonworks.com:8020",
 "hadoop.security.authorization": "true",
 "hadoop.security.authentication": "simple",
 "hadoop.security.auth_to_local": "RULE:[2:$1@$0](jhs@.*EXAMPLE.COM)s/.*/mapred/ RULE:[2:$1@$0]([nr]m@.*EXAMPLE.COM)s/.*/yarn/ RULE:[2:$1@$0]([nd]n@.*EXAMPLE.COM)s/.*/hdfs/ DEFAULT",
 "dfs.datanode.kerberos.principal": "dn/_HOST@EXAMPLE.COM",
 "dfs.namenode.kerberos.principal": "nn/_HOST@EXAMPLE.COM",
 "dfs.secondary.namenode.kerberos.principal": "nn/_HOST@EXAMPLE.COM",
 "commonNameForCertificate": ""
 }"
}


 

 • HIVE Example:

Code Block
themeFadeToGrey
languagejs
titleHIVE Example
linenumberstrue
collapsetrue
{
 "name": "hivedev",
 "description": "Hive Dev",
 "isActive": "true",
 "repositoryType": "hive"
config: "{
 "username": "policymgr_hive",
 "password": "policymgr_hive",
 "jdbc.driverClassName": "org.apache.hive.jdbc.HiveDriver",
 "jdbc.url": "jdbc:hive2://127.0.0.1:10000/default",
 "commonNameForCertificate": ""
 }"
}


• HBASE Example:

Code Block
themeFadeToGrey
languagejs
titleHBASE Exapmple
linenumberstrue
collapsetrue
{
 "name": "hbasedev",
 "description": "HBase Dev",
 "isActive": "true",
 "repositoryType": "hbase"
config: “{
 "username": "hbase",
 "password": "*****",
 "hadoop.security.authentication": "kerberos",
 "hbase.master.kerberos.principal": "hbase/_HOST@EXAMPLE.COM",
 "hbase.security.authentication": "kerberos",
 "hbase.zookeeper.property.clientPort": "2181",
 "hbase.zookeeper.quorum": "ip-172-31-38-49.ec2.internal",
 "zookeeper.znode.parent": "/hbase"
 }”
}


 

• KNOX Example:

Code Block
themeFadeToGrey
languagejs
titleKNOX Example
linenumberstrue
collapsetrue
{
 "name": "knoxdev_updated",
 "description": "Knox Repo..",
 "repositoryType": "Knox",
"config": “{
 "username": "admin",
 "password": "*****",
 "knox.url": "https://ip-172-31-38-49.ec2.internal:8443/gateway/admin/api/v1/topologies",
 "commonNameForCertificate": ""
 }”
"isActive": false
}
 

• STORM Example:

Code Block
themeFadeToGrey
languagejs
titleSTORM Example
linenumberstrue
collapsetrue
{
 "name": "stormdev_updated",
 "description": "Storm Repo.. Updated",
 "repositoryType": "Storm",
"config": “{
 "username": "storm",
 "password": "*****",
 "nimbus.url": "http://ip-172-31-38-49.ec2.internal:8080/index.html",
 "commonNameForCertificate": ""
 }”
"isActive": true
}


Response200-Application/json

...

API nameCreate Policy
Request TypePOST
Request URLservice/api/public/policy
 

Application/json

•HDFS Example:

Code Block
themeFadeToGrey
languagejs
titleHDFS Example
linenumberstrue
collapsetrue
 {
 "policyName": "HomePolicy",
 "resourceName": "/home,/apps",
 "description": "Home",
 "repositoryName": "hadoopdev",
 "repositoryType": "hdfs",
 "isEnabled": "true",
 "isRecursive": false,
 "isAuditEnabled": true,
 "permMapList": [
 {
 "userList": [
 "john",
 "andrew"
 ],
 "permList": [
 "SELECT",
 "UPDATE"
 ]
 },
 {
 "userList": [
 "hr"
 ],
 "groupList": [
 "admin"
 ],
 "permList": [
 "DROP",
 "ALTER",
 "ADMIN"
 ]
 }
 ]
}

•HBASE Example:

Code Block
themeFadeToGrey
languagejs
titleHBASE Example
linenumberstrue
collapsetrue
{
 "policyName": "FinancePolicy",
 "tables": "finance,hr",
 "columnFamilies": "invoices,emps",
 "columns": "amt, emp_id",
 "description": "HBase Policy",
 "repositoryName": "hbasedev",
 "repositoryType": "hbase",
 "isEnabled": "true",
 "isAuditEnabled": true,
 "tableType": "Inclusion",
 "columnType": "Inclusion",
 "permMapList": [
 {
 "userList": [
 "john",
 "andrew"
 ],
 "permList": [
 "Write",
 "Admin"
 ]
 },
 {
 "userList": [
 "hr"
 ],
 "groupList": [
 "admin"
 ],
 "permList": [
 "Read",
 "Write",
 "Admin"
 ]
 }
 ]
}

•HIVE Example: 

Code Block
themeFadeToGrey
languagejs
titleHIVE Example
linenumberstrue
collapsetrue
{
 "policyName": "FinancePolicy",
 "databases": "finance,hr",
 "tables": "invoices,emps",
 "columns": "amt, emp_id",
 "udfs": "",
 "description": "Hive Policy",
 "repositoryName": "hivedev",
 "repositoryType": "hive",
 "tableType": "Exclusion",
 "columnType": "Inclusion",
 "isEnabled": true,
 "isAuditEnabled": true,
 "permMapList": [
 {
 "userList": [
 "john",
 "andrew"
 ],
 "permList": [
 "Write",
 "Admin"
 ]
 },
 {
 "userList": [
 "hr"
 ],
 "groupList": [
 "admin"
 ],
 "permList": [
 "Read",
 "Write",
 "Admin"
 ]
 }
 ]
}

 •KNOX Example: 

Code Block
themeFadeToGrey
languagejs
titleKNOX Example
linenumberstrue
collapsetrue
{
 "policyName": "Fin Department Policy",
 "description": "Fin policy for Knox",
 "repositoryName": "knoxdev",
 "repositoryType": "Knox",
 "permMapList": [
 {
 "userList": [
 "policymgr_hbase",
 "policymgr_hive"
 ],
 "permList": [
 "Allow"
 ],
 "ipAddress": "192.168.0.1, 192.168.200.90"
 },
 {
 "userList": [
 "policymgr"
 ],
 "groupList": [
 "Grp1",
 "Grp2"
 ],
 "permList": [
 "Allow",
 "Admin"
 ]
 }
 ],
 "topologies": "topo1, topo2, topo3",
 "services": "service1, service2, service3",
 "isEnabled": true,
 "isRecursive": false,
 "isAuditEnabled": true
}

•STORM Example: 

Code Block
themeFadeToGrey
languagejs
titleSTORM Example
linenumberstrue
collapsetrue
{
 "policyName": "Marketing Department Policy",
 "description": "Marketing Department policy",
 "repositoryName": "stormdev_updated",
 "repositoryType": "Storm",
 "permMapList": [
 {
 "userList": [
 "policymgr"
 ],
 "permList": [
 "getNimbusConf",
 "getClusterInfo",
 "rebalance"
 ]
 },
 {
 "userList": [
 "policymgr_hbase",
 "policymgr_hive"
 ],
 "permList": [
 "fileDownload",
 "fileUpload"
 ]
 }
 ],
 "topologies": "topo1, topo3",
 "isEnabled": true,
 "isRecursive": false,
 "isAuditEnabled": true
}


 Response 200 - Application/json

...

API Nameupdate policy
Request TypePUT
Request URLservice/public/api/policy/{id}
Request Params

Application /json

•HDFS Example: 

Code Block
themeFadeToGrey
languagejs
titleHDFS Example
linenumberstrue
collapsetrue
{
 "policyName": "HomePolicy",
 "resourceName": "/home,/apps",
 "description": "Home",
 "isEnabled": true,
 "isRecursive": false,
 "isAuditEnabled": true,
 "permMapList": [
 {
 "userList": [
 "john",
 "andrew"
 ],
 "permList": [
 "Write",
 "Admin"
 ]
 },
 {
 "userList": [
 "hr"
 ],
 "groupList": [
 "admin"
 ],
 "permList": [
 "Read",
 "Write",
 "Admin"
 ]
 }
 ]
}
 

•HBASE Example:

Code Block
themeFadeToGrey
languagejs
titleHBASE Example
linenumberstrue
collapsetrue
 {
 "policyName": "HomePolicy",
 "tables": "finance,hr",
 "columnFamilies": "invoices,emps",
 "columns": "amt, emp_id",
 "description": "HBase Policy",
 "isEnabled": true,
 "isAuditEnabled": true,
 "permMapList": [
 {
 "userList": [
 "john",
 "andrew"
 ],
 "permList": [
 "Write",
 "Admin"
 ]
 },
 {
 "userList": [
 "hr"
 ],
 "groupList": [
 "admin"
 ],
 "permList": [
 "Read",
 "Write",
 "Admin"
 ]
 }
 ]
}
 

•HIVE Example:

Code Block
themeFadeToGrey
languagejs
titleHIVE Example
linenumberstrue
collapsetrue
{
 "policyName": "HomePolicy",
 "databases": "finance,hr",
 "tables": "invoices,emps",
 "columns": "amt, emp_id",
 "udfs": "",
 "description": "Hive Policy",
 "tableType": "Exclusion",
 "columnType": "Inclusion",
 "isEnabled": true,
 "isAuditEnabled": true,
 "permMapList": [
 {
 "userList": [
 "john",
 "andrew"
 ],
 "permList": [
 "Write",
 "Admin"
 ]
 },
 {
 "userList": [
 "hr"
 ],
 "groupList": [
 "admin"
 ],
 "permList": [
 "Read",
 "Write",
 "Admin"
 ]
 }
 ],
 "version": "0.1.0"
}


  

•KNOX Example:

Code Block
themeFadeToGrey
languagejs
titleKNOX Example
linenumberstrue
collapsetrue
{
 "policyName": "Fin Department Policy Updated",
 "description": "Fin policy for Knox",
 "repositoryName": "knoxdev",
 "repositoryType": "Knox",
 "permMapList": [
 {
 "userList": [
 "policymgr"
 ],
 "groupList": [
 "Grp1",
 "Grp2"
 ],
 "permList": [
 "Allow",
 "Admin"
 ],
 "ipAddress": "192.168.0.220,ipAddress2"
 },
 {
 "userList": [
 "policymgr_hive",
 "policymgr_hbase"
 ],
 "permList": [
 "Allow"
 ]
 }
 ],
 "topologies": "topo1, topo2, topo3",
 "services": "service1, service2, service3",
 "isEnabled": true,
 "isAuditEnabled": true,
 "version": "0.1.0"
}  

•STORM Example:

Code Block
themeFadeToGrey
languagejs
titleSTORM Example
linenumberstrue
collapsetrue
 {
 "policyName": "Marketing Department Policy Updated",
 "description": "Marketing Department policy for Storm",
 "repositoryName": "stormdev_updated",
 "repositoryType": "Storm",
 "permMapList": [
 {
 "userList": [
 "policymgr"
 ],
 "permList": [
 "getNimbusConf",
 "rebalance"
 ]
 },
 {
 "userList": [
 "policymgr_hbase",
 "policymgr_hive"
 ],
 "permList": [
 "fileUpload"
 ]
 }
 ],
 "topologies": "topo1, topo3",
 "isEnabled": true,
 "isRecursive": false,
 "isAuditEnabled": true
}


 Response 200 - Application/json

...