forked from enviPath/enviPy
wip
This commit is contained in:
@ -9,11 +9,7 @@
|
|||||||
|
|
||||||
reset() {
|
reset() {
|
||||||
this.isSubmitting = false;
|
this.isSubmitting = false;
|
||||||
this.selectedType = '';
|
this.packageClassification = null;
|
||||||
this.buildAppDomain = false;
|
|
||||||
this.requiresRulePackages = false;
|
|
||||||
this.requiresDataPackages = false;
|
|
||||||
this.additional_parameters = null;
|
|
||||||
},
|
},
|
||||||
|
|
||||||
setFormData(data) {
|
setFormData(data) {
|
||||||
|
|||||||
@ -451,5 +451,26 @@ if PES_API_MAPPING:
|
|||||||
else:
|
else:
|
||||||
PES_API_MAPPING = {}
|
PES_API_MAPPING = {}
|
||||||
|
|
||||||
# AD Group Mapping
|
# Entra Groups
|
||||||
|
ENTRA_GROUPS = os.environ.get("ENTRA_GROUPS", None)
|
||||||
|
if ENTRA_GROUPS:
|
||||||
|
import json
|
||||||
|
ENTRA_GROUPS = json.loads(ENTRA_GROUPS)
|
||||||
|
else:
|
||||||
|
ENTRA_GROUPS = {}
|
||||||
|
|
||||||
|
ENTRA_SECRET_GROUPS = os.environ.get("ENTRA_SECRET_GROUPS", None)
|
||||||
|
if ENTRA_SECRET_GROUPS:
|
||||||
|
import json
|
||||||
|
ENTRA_SECRET_GROUPS = json.loads(ENTRA_SECRET_GROUPS)
|
||||||
|
else:
|
||||||
|
ENTRA_SECRET_GROUPS = {}
|
||||||
|
|
||||||
|
# PES Data Pools vs Entra Mapping
|
||||||
|
DATA_POOL_MAPPING = os.environ.get("DATA_POOL_MAPPING", None)
|
||||||
|
if DATA_POOL_MAPPING:
|
||||||
|
import json
|
||||||
|
DATA_POOL_MAPPING = json.loads(DATA_POOL_MAPPING)
|
||||||
|
else:
|
||||||
|
DATA_POOL_MAPPING = {}
|
||||||
|
|
||||||
|
|||||||
@ -80,6 +80,30 @@ def entra_callback(request):
|
|||||||
|
|
||||||
login(request, u)
|
login(request, u)
|
||||||
|
|
||||||
|
# EDIT START
|
||||||
|
# Ensure groups exists in eP
|
||||||
|
for id, name in s.ENTRA_SECRET_GROUPS.items():
|
||||||
|
if not Group.objects.filter(uuid=id).exists():
|
||||||
|
g = GroupManager.create_group(User.objects.get(username="admin"), name, f"Synced Entra Group {name} ", uuid=id)
|
||||||
|
else:
|
||||||
|
g = Group.objects.get(uuid=id)
|
||||||
|
# Ensure its secret
|
||||||
|
g.secret = True
|
||||||
|
g.save()
|
||||||
|
|
||||||
|
for id, name in s.ENTRA_GROUPS.items():
|
||||||
|
if not Group.objects.filter(uuid=id).exists():
|
||||||
|
g = GroupManager.create_group(User.objects.get(username="admin"), name, f"Synced Entra Group {name} ", uuid=id)
|
||||||
|
else:
|
||||||
|
g = Group.objects.get(uuid=id)
|
||||||
|
|
||||||
|
for group_uuid in claims.get("groups", []):
|
||||||
|
if Group.objects.filter(uuid=group_uuid).exists():
|
||||||
|
g = Group.objects.get(uuid=group_uuid)
|
||||||
|
g.user_member.add(u)
|
||||||
|
|
||||||
|
# EDIT END
|
||||||
|
|
||||||
return redirect(s.SERVER_URL) # Handle errors
|
return redirect(s.SERVER_URL) # Handle errors
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user