mirror of
https://github.com/datahub-project/datahub.git
synced 2025-10-27 17:02:03 +00:00
feat(ingest/okta): option to only ingest users from filtered groups (#9738)
This commit is contained in:
parent
d1604b39cc
commit
8559ebae20
@ -140,6 +140,10 @@ class OktaConfig(StatefulIngestionConfigBase, ConfigModel):
|
|||||||
default=None,
|
default=None,
|
||||||
description="Okta search expression (not regex) for ingesting groups. Only one of `okta_groups_filter` and `okta_groups_search` can be set. See (https://developer.okta.com/docs/reference/api/groups/#list-groups-with-search) for more info.",
|
description="Okta search expression (not regex) for ingesting groups. Only one of `okta_groups_filter` and `okta_groups_search` can be set. See (https://developer.okta.com/docs/reference/api/groups/#list-groups-with-search) for more info.",
|
||||||
)
|
)
|
||||||
|
skip_users_without_a_group: bool = Field(
|
||||||
|
default=False,
|
||||||
|
description="Whether to only ingest users that are members of groups. If this is set to False, all users will be ingested regardless of group membership.",
|
||||||
|
)
|
||||||
|
|
||||||
# Configuration for stateful ingestion
|
# Configuration for stateful ingestion
|
||||||
stateful_ingestion: Optional[StatefulStaleMetadataRemovalConfig] = Field(
|
stateful_ingestion: Optional[StatefulStaleMetadataRemovalConfig] = Field(
|
||||||
@ -387,6 +391,15 @@ class OktaSource(StatefulIngestionSourceBase):
|
|||||||
datahub_corp_user_snapshot.urn
|
datahub_corp_user_snapshot.urn
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
|
if (
|
||||||
|
self.config.skip_users_without_a_group
|
||||||
|
and len(datahub_group_membership.groups) == 0
|
||||||
|
):
|
||||||
|
logger.debug(
|
||||||
|
f"Filtering {datahub_corp_user_snapshot.urn} due to group filter"
|
||||||
|
)
|
||||||
|
self.report.report_filtered(datahub_corp_user_snapshot.urn)
|
||||||
|
continue
|
||||||
assert datahub_group_membership is not None
|
assert datahub_group_membership is not None
|
||||||
datahub_corp_user_snapshot.aspects.append(datahub_group_membership)
|
datahub_corp_user_snapshot.aspects.append(datahub_group_membership)
|
||||||
mce = MetadataChangeEvent(proposedSnapshot=datahub_corp_user_snapshot)
|
mce = MetadataChangeEvent(proposedSnapshot=datahub_corp_user_snapshot)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user