User Management
Reminders:
- Please read Access and Authentication REST API and understand how authentication works.
- On Curl command line, don't forget to quote the URL if it contains the special char
&
.
Get User List
-
GET http://host:port/kylin/api/user
-
Introduced in: 5.0
-
Request Parameters
name
-optional
string
, username.is_case_sensitive
-optional
boolean
, whether case sensitive on user name andfalse
is by default.page_offset
-optional
int
, offset of returned result, 0 by default.page_size
-optional
int
, quantity of returned result per page, 10 by default.
-
HTTP Header
Accept: application/vnd.apache.kylin-v4-public+json
Accept-Language: en
Content-Type: application/json;charset=utf-8
-
Curl Request Example
curl -X GET \
'http://host:port/kylin/api/user' \
-H 'Accept: application/vnd.apache.kylin-v4-public+json' \
-H 'Accept-Language: en' \
-H 'Authorization: Basic QURNSU46S1lMSU4=' \
-H 'Content-Type: application/json;charset=utf-8' -
Response Example
{
"code": "000",
"data": {
"value": [
{
"username": "test",
"authorities": [
{
"authority": "ALL_USERS"
}
...
],
"disabled": false,
"default_password": false,
"locked": false,
"uuid": "af11440a-8e9d-4801-8508-5d0ce0e04a2f",
"last_modified": 1592296833935,
"create_time": 1592296833844,
"locked_time": 0,
"wrong_time": 0,
"first_login_failed_time": 0
}
...
],
"offset": 0,
"limit": 10,
"total_size": 3
},
"msg": ""
}
Create User
-
POST http://host:port/kylin/api/user
-
Introduced in: 5.0
-
HTTP Body: JSON Object
username
-required
string
, username.password
-required
string
, password.disabled
-required
boolean
, enable the user or not,true
means the user is disabled andfalse
means the user is enabled.authorities
-required
array[string]
, the user belongs which user group.
-
HTTP Header
Accept: application/vnd.apache.kylin-v4-public+json
Accept-Language: en
Content-Type: application/json;charset=utf-8
-
Curl Request Example
curl -X POST \
'http://host:port/kylin/api/user' \
-H 'Accept: application/vnd.apache.kylin-v4-public+json' \
-H 'Accept-Language: en' \
-H 'Authorization: Basic QURNSU46S1lMSU4=' \
-H 'Content-Type: application/json;charset=utf-8' \
-d '{
"username": "test",
"password": "Password@123",
"disabled": "false",
"authorities":["ALL_USERS"]
}' -
Response Example
{
"code": "000",
"data": "",
"msg": ""
}
Modify the group where user belongs
Note: Modifying a user will overwrite the user group values.
-
PUT http://host:port/kylin/api/user
-
Introduced in: 5.0
-
HTTP Body: JSON Object
username
-required
string
, username.authorities
-required
array[string]
, the user belongs which user group.
-
HTTP Header
Accept: application/vnd.apache.kylin-v4-public+json
Accept-Language: en
Content-Type: application/json;charset=utf-8
-
Curl Request Example
curl -X PUT \
'http://host:port/kylin/api/user' \
-H 'Accept: application/vnd.apache.kylin-v4-public+json' \
-H 'Accept-Language: en' \
-H 'Authorization: Basic QURNSU46S1lMSU4=' \
-H 'Content-Type: application/json;charset=utf-8' \
-d '{
"username": "createuser",
"authorities":["ALL_USERS"]
}' -
Response Example
{
"code": "000",
"data": "",
"msg": ""
}
Change Password
-
PUT http://host:port/kylin/api/user/password
-
Introduced in: 5.0
-
HTTP Body: JSON Object
username
-required
string
, username.password
-required
string
, original password.new_password
-required
string
, new password.
-
HTTP Header
Accept: application/vnd.apache.kylin-v4-public+json
Accept-Language: en
Content-Type: application/json;charset=utf-8
-
Curl Request Example
curl -X PUT \
'http://host:port/kylin/api/user' \
-H 'Accept: application/vnd.apache.kylin-v4-public+json' \
-H 'Accept-Language: en' \
-H 'Authorization: Basic QURNSU46S1lMSU4=' \
-H 'Content-Type: application/json;charset=utf-8' \
-d '{
"username": "test",
"password": "Password@123",
"new_password": "Password@1234"
}' -
Response Example
{
"code": "000",
"data": "",
"msg": ""
}
Delete User
-
DELETE http://host:port/kylin/api/user
-
Introduced in: 5.0
-
HTTP Body: JSON Object
username
-required
string
, username.
-
HTTP Header
Accept: application/vnd.apache.kylin-v4-public+json
Accept-Language: en
Content-Type: application/json;charset=utf-8
-
Curl Request Example
curl -X DELETE \
'http://host:port/kylin/api/user' \
-H 'Accept: application/vnd.apache.kylin-v4-public+json' \
-H 'Accept-Language: en' \
-H 'Authorization: Basic QURNSU46S1lMSU4=' \
-H 'Content-Type: application/json;charset=utf-8'
-d '{
"username": "testuser"
}' -
Response Example
{
"code": "000",
"data": "",
"msg": ""
}
Get ACL of a User or Group
-
GET http://host:port/kylin/api/access/acls
-
Introduced in: 5.0
-
Request Parameters
type
-required
string
, represents users or user groups, optional values areuser
orgroup
.name
-required
string
, user or group name.project
-optional
string
, project name, fill in the value to get all the permissions of a user or user group in the specified project.
-
HTTP Header
Accept: application/vnd.apache.kylin-v4-public+json
Accept-Language: en
Content-Type: application/json;charset=utf-8
-
Curl Request Example
curl -X GET \
'http://host:port/kylin/api/access/acls?type=user&name=ADMIN' \
-H 'Accept: application/vnd.apache.kylin-v4-public+json' \
-H 'Accept-Language: en' \
-H 'Authorization: Basic QURNSU46S1lMSU4=' \
-H 'Content-Type: application/json;charset=utf-8' -
Response Example
{
"code": "000",
"data": [
{
"project_name": "test",
"project_permission": "ADMIN",
"acl_info": [
{
"tables": [
{
"authorized": true,
"columns": [
{
"authorized": true,
"column_name": "C_ADDRESS"
}
...
],
"rows": [],
"table_name": "CUSTOMER",
"authorized_column_num": 8,
"total_column_num": 8
}
...
],
"authorized_table_num": 6,
"total_table_num": 6,
"database_name": "SSB"
}
...
]
}
...
],
"msg": ""
}