Pravega Controller Authorization Model Reference - derekm/pravega GitHub Wiki
The following table lists the level of permissions required for the specified Controller gRPC/REST operation. All the data listed in the table below is verified to be correct as of 15-July-2020.
S.No. | Action | Resource String for Auth | Required Permission | gRPC / REST Operation |
---|---|---|---|---|
1. | List scopes |
/ , and <scope-name> for each scope |
READ |
NA / listScopes
|
2. | Get a scope | <scope-name> |
READ |
NA / getScope
|
3. | Create a scope | / |
READ_UPDATE |
createScope /createScope
|
4. | Delete a scope | / |
READ_UPDATE |
deleteScope /deleteScope
|
5. | List streams |
<scope-name> and <scope-name>/<stream-name> for each stream |
READ |
listStreamsInScope /listStreams
|
6. | Get a stream | <scope-name>/<stream-name> |
READ |
NA /getStream
|
7. | Create a stream | <scope-name> |
READ_UPDATE |
createStream /createStream
|
8. | Update a stream | <scope-name>/<stream-name> |
READ_UPDATE |
updateStream /updateStream
|
9. | Update a stream's state | <scope-name>/<stream-name> |
READ_UPDATE | NA/updateStreamState
|
10. | Delete a stream | <scope-name>/<stream-name> |
READ_UPDATE |
deleteStream /deleteStream
|
11. | Truncate a stream | <scope-name>/<stream-name> |
READ_UPDATE |
truncateStream / NA
|
12. | Seal a stream | <scope-name>/<stream-name> |
READ_UPDATE |
sealStream / NA
|
13. | List reader groups | <scope-name> |
READ |
NA /listReaderGroups
|
14. | Get a reader group | <scope-name>/<reader-group-name> |
READ |
NA /getReaderGroup
|
15. | List scaling events of a stream | <scope-name>/<stream-name> |
READ |
NA / getScalingEvents
|
16. | List current stream segments | <scope-name>/<stream-name> |
READ_UPDATE |
getCurrentSegments / NA
|
17. | List stream segments | <scope-name>/<stream-name> |
READ_UPDATE |
getSegments / NA
|
18. | List segments following | <scope-name>/<stream-name> |
READ |
getSegmentsImmediatlyFollowing /NA
|
19. | List segments between | <scope-name>/<stream-name> |
READ |
getSegmentsBetween / NA
|
20. | Scale (a stream) | <scope-name>/<stream-name> |
READ_UPDATE |
scale /NA
|
21. | Check scale status | <scope-name>/<stream-name> |
READ |
checkScale /NA
|
22. | Get URI for segment | <scope-name>/<stream-name> |
READ |
getURI / NA
|
23. | Is Segment valid | <scope-name>/<stream-name> |
READ |
isSegmentValid / NA
|
24. | Is stream cut valid | <scope-name>/<stream-name> |
READ |
isStreamCutValid / NA
|
25. | Create a transaction | <scope-name>/<stream-name> |
READ_UPDATE |
createTransaction / NA
|
26. | Commit transaction | <scope-name>/<stream-name> |
READ_UPDATE |
commitTransaction / NA
|
27. | Abort transaction | <scope-name>/<stream-name> |
READ_UPDATE |
abortTransaction / NA
|
28. | Ping transaction | <scope-name>/<stream-name> |
READ_UPDATE |
pingTransaction / NA
|
29. | Check transaction state | <scope-name>/<stream-name> |
READ |
checkTransactionState / NA
|
30. | Get delegation token | <scope-name>/<stream-name> |
READ_UPDATE |
getDelegationToken / NA
|