-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/74941/#review226340
-----------------------------------------------------------




agents-common/src/main/java/org/apache/ranger/plugin/util/SearchFilter.java
Lines 79 (patched)
<https://reviews.apache.org/r/74941/#comment314582>

    - please update 'Testing Done' section in this review with an example of 
search by tagNames, especially with multiple names.
    - REST endpoints in 'Description' and 'Testing Done' are different. Please 
review and update.



agents-common/src/main/java/org/apache/ranger/plugin/util/SearchFilter.java
Lines 92 (patched)
<https://reviews.apache.org/r/74941/#comment314581>

    Is query-param 'resourceElements' used after the recent update to this 
patch, given resources are specified in query-params using prefix "resource:"?



security-admin/src/main/java/org/apache/ranger/view/RangerServiceResourceWithTagsList.java
Lines 34 (patched)
<https://reviews.apache.org/r/74941/#comment314583>

    Is it necessary to initialize with "new ArrayList<>"? How about setting to 
null here?



security-admin/src/main/java/org/apache/ranger/view/RangerServiceResourceWithTagsList.java
Lines 62 (patched)
<https://reviews.apache.org/r/74941/#comment314584>

    List<?> => List<RangerServiceResourceWithTags>


- Madhan Neethiraj


On March 20, 2024, 8:34 a.m., Anand Nadar wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/74941/
> -----------------------------------------------------------
> 
> (Updated March 20, 2024, 8:34 a.m.)
> 
> 
> Review request for ranger, Asit Vadhavkar, Madhan Neethiraj, Monika 
> Kachhadiya, Siddhesh Phatak, and Subhrat Chaudhary.
> 
> 
> Bugs: RANGER-4749
>     https://issues.apache.org/jira/browse/RANGER-4749
> 
> 
> Repository: ranger
> 
> 
> Description
> -------
> 
> Created new tag api which will get the service resource by comparing the 
> resouse signature of the resource from request. (GET - 
> service/tags/resource/service/{serviceName}/resource)
> Added list of tagNames to the resource/paginated api which will return all 
> the tagNames which are associated with the resource.
> Added freetext search on resource, and multiple search of tagNames in 
> service/tags/resources/paginated api - 
> 1 - 
> service/tags/resources/paginated?tagServiceName=hive&resourceElements=Cust_
> 2 - 
> service/tags/resources/paginated?tagServiceName=hive&tagNames=SSN&tagNames=PII_NAME
> 
> 
> Diffs
> -----
> 
>   
> agents-common/src/main/java/org/apache/ranger/authorization/utils/JsonUtils.java
>  716a1a9ea 
>   
> agents-common/src/main/java/org/apache/ranger/plugin/model/RangerServiceResourceWithTags.java
>  PRE-CREATION 
>   agents-common/src/main/java/org/apache/ranger/plugin/util/SearchFilter.java 
> b0fad0aea 
>   security-admin/src/main/java/org/apache/ranger/biz/TagDBStore.java 
> a472fe131 
>   security-admin/src/main/java/org/apache/ranger/common/RangerSearchUtil.java 
> c816ad229 
>   security-admin/src/main/java/org/apache/ranger/rest/TagREST.java 09d771565 
>   
> security-admin/src/main/java/org/apache/ranger/service/RangerServiceResourceWithTagsService.java
>  PRE-CREATION 
>   
> security-admin/src/main/java/org/apache/ranger/service/RangerServiceResourceWithTagsServiceBase.java
>  PRE-CREATION 
>   
> security-admin/src/main/java/org/apache/ranger/view/RangerServiceResourceWithTagsList.java
>  PRE-CREATION 
>   security-admin/src/test/java/org/apache/ranger/biz/TestTagDBStore.java 
> d6ebbc54d 
>   security-admin/src/test/java/org/apache/ranger/rest/TestTagREST.java 
> 98d87bc0a 
> 
> 
> Diff: https://reviews.apache.org/r/74941/diff/5/
> 
> 
> Testing
> -------
> 
> Validated GET - service/tags/resource/service/{serviceName}/resource with 
> postive and negative case.
> Sample URL - 
> /service/tags/resource/service/hive8/resource?resource:column=NAME&resource:column.isExcludes=false&resource:column.isRecursive=true&resource:database=HR-DB&resource:database.isExcludes=false&resource:database.isRecursive=true&resource:table=EMPLOYEE&resource:table.isExcludes=false&resource:table.isRecursive=true&resource:database=HR-DB2
> 
> The values of resource can be multiple - 
> resource:database=db1&resource:database=db2
> For isExcludes and isRecursive there will be a subkey - 
> resource:database.isExcludes=false&resource:databasase.isRecursive=true
> 
> Validated response of service/tags/resources/paginated api 
> Sample response
> {
>     "startIndex": 0,
>     "pageSize": 5,
>     "totalCount": 1,
>     "resultSize": 1,
>     "sortType": "asc",
>     "sortBy": "resourceId",
>     "queryTimeMS": 1710869881240,
>     "resourceList": [
>         {
>             "id": 2,
>             "guid": "3bc097ea-0685-48ea-84c2-ca02518f7738",
>             "isEnabled": true,
>             "createdBy": "Admin",
>             "updatedBy": "Admin",
>             "createTime": 1707986829922,
>             "updateTime": 1708247930089,
>             "version": 3,
>             "serviceName": "hive",
>             "resourceElements": {
>                 "database": {
>                     "values": [
>                         "db1"
>                     ],
>                     "isExcludes": false,
>                     "isRecursive": false
>                 },
>                 "column": {
>                     "values": [
>                         "*"
>                     ],
>                     "isExcludes": false,
>                     "isRecursive": false
>                 },
>                 "table": {
>                     "values": [
>                         "tbl1"
>                     ],
>                     "isExcludes": false,
>                     "isRecursive": false
>                 }
>             },
>             "associatedTags": [
>                 {
>                     "id": 2,
>                     "guid": "a1d21642-3f4c-4557-9226-372d3dce5a64",
>                     "isEnabled": true,
>                     "createdBy": "Admin",
>                     "updatedBy": "Admin",
>                     "createTime": 1707986831329,
>                     "updateTime": 1707986831556,
>                     "type": "PII_NAME",
>                     "owner": 0,
>                     "attributes": {
>                         "lastname": "stark"
>                     }
>                 }
>             ]
>         }
>     ]
> }
> 
> Validated service/tags/resources/paginated api with resourceElements and 
> tagNames for freestext resource search and multiple tagNames search 
> respectively.
> 
> 
> Thanks,
> 
> Anand Nadar
> 
>

Reply via email to