Skip to content

Commit

Permalink
Applied changes from opensearch-project#4826
Browse files Browse the repository at this point in the history
Signed-off-by: Nils Bandener <nils.bandener@eliatra.com>
  • Loading branch information
nibix committed Nov 6, 2024
1 parent 7a03530 commit b75ff83
Showing 1 changed file with 19 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -54,15 +54,32 @@ public FlsStoredFieldVisitor(

@Override
public void binaryField(FieldInfo fieldInfo, byte[] value) throws IOException {

if (fieldInfo.name.equals("_source")) {
try {
delegate.binaryField(fieldInfo, FlsDocumentFilter.filter(value, flsRule, fieldMaskingRule, metaFields));
} catch (IOException e) {
throw new OpenSearchException("Cannot filter source of document", e);
}
} else {
delegate.binaryField(fieldInfo, value);
// See https://github.com/opensearch-project/security/pull/4826
FieldMasking.FieldMaskingRule.Field field = this.fieldMaskingRule.get(fieldInfo.name);

if (field != null) {
delegate.binaryField(fieldInfo, field.apply(value));
} else {
delegate.binaryField(fieldInfo, value);
}
}
}

@Override
public void stringField(FieldInfo fieldInfo, String value) throws IOException {
FieldMasking.FieldMaskingRule.Field field = this.fieldMaskingRule.get(fieldInfo.name);

if (field != null) {
delegate.stringField(fieldInfo, field.apply(value));
} else {
delegate.stringField(fieldInfo, value);
}
}

Expand Down

0 comments on commit b75ff83

Please sign in to comment.