You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: connectors/security/ranger/index.mdx
+56Lines changed: 56 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -35,6 +35,7 @@ The user connecting to Apache Ranger should have the following permissions:
35
35
# - Read access to service definitions
36
36
```
37
37
### Connection Details
38
+
38
39
We support Apache Ranger with Basic Authentication using username and password.
39
40
## Reverse Metadata Ingestion
40
41
The Apache Ranger connector is designed specifically for **reverse metadata ingestion**. This means that OpenMetadata will sync metadata information (primarily tags) from your data sources back to Apache Ranger.
@@ -48,6 +49,61 @@ The Apache Ranger connector is designed specifically for **reverse metadata inge
48
49
-**Tag Synchronization**: Currently, we only sync tag information to Ranger.
49
50
-**Source-Ranger Communication**: You are responsible for configuring the communication between Apache Ranger and your actual data sources. OpenMetadata only handles the metadata synchronization to Ranger
50
51
-**Bidirectional Sync**: This is currently a one-way sync from OpenMetadata to Ranger
52
+
53
+
### Tag Synchronization Details
54
+
55
+
Understanding how tag synchronization works between OpenMetadata and Apache Ranger is crucial for proper implementation.
56
+
57
+
#### What Gets Created During Reverse Metadata Ingestion
58
+
59
+
During reverse metadata ingestion, OpenMetadata creates **only the mapping** between:
60
+
-**Ranger Resources**: The specific entity (database, schema, table, or column)
61
+
-**Tags**: The tag name and tag value
62
+
63
+
**Important:** We do **not** create or depend on tag policies during the reverse metadata workflow. The policy creation is **not mandatory** for the workflow to function. Policies can be created in Ranger after the reverse metadata workflow completes.
64
+
65
+
#### Policy Management
66
+
67
+
The actual application of tag-based policies—such as access control, data masking, or row-level filtering—is handled **entirely by Apache Ranger**. OpenMetadata's role is limited to:
68
+
1. Syncing tag metadata from OpenMetadata to actual data sources
69
+
2. Creating tag-to-resource mappings in Ranger
70
+
3. Keeping these mappings synchronized as tags change in OpenMetadata
71
+
72
+
#### Supported Tag Levels
73
+
74
+
We provide comprehensive tag support at multiple levels:
75
+
-**Database level**: Tags applied to entire databases
76
+
-**Schema level**: Tags applied to schemas
77
+
-**Table level**: Tags applied to tables
78
+
-**Column level**: Tags applied to individual columns
79
+
80
+
This multi-level support allows you to implement fine-grained governance policies based on your organization's requirements.
81
+
82
+
#### Tag Naming Convention
83
+
84
+
OpenMetadata uses a clear and consistent tag naming convention when syncing to Ranger. Tags are formatted as:
85
+
86
+
```
87
+
classification.tag
88
+
```
89
+
90
+
**Example:**
91
+
- A tag named `Sensitive` under the `PII` classification in OpenMetadata
92
+
- Will be synced to Ranger as: `PII.Sensitive`
93
+
94
+
This naming convention ensures clarity and prevents naming conflicts in Ranger.
95
+
96
+
<Framecaption="Example showing PII.Sensitive tag in OpenMetadata and Ranger">
1.**In OpenMetadata**: You apply the tag `PII.Sensitive` to a column `customer_email` in table `users`
103
+
2.**Reverse Metadata Sync**: OpenMetadata creates a mapping in Ranger linking the resource `database.schema.users.customer_email` to tag `PII.Sensitive`
104
+
3.**In Apache Ranger**: You create a policy that applies masking to all resources tagged with `PII.Sensitive`
105
+
4.**Result**: The policy automatically applies to `customer_email` and any other resources tagged as `PII.Sensitive`
0 commit comments