aktueller stand
This commit is contained in:
@@ -30,7 +30,7 @@ namespace C4IT.DataHistoryProvider
|
||||
public const string constConnectorName = "MS Active Directory, Entra ID & Intune connector";
|
||||
public const string constLicenseId = "B2D48023-56E8-44D5-AB77-BE1DCF4EA4EB";
|
||||
|
||||
public const string constMsGraphUserList = "users?$top={0}&$select=id,displayName,onPremisesSyncEnabled,onPremisesSecurityIdentifier&$filter=onPremisesSyncEnabled eq true";
|
||||
public const string constMsGraphUserList = "users?$top={0}&$count=true&$select=id,displayName,onPremisesSyncEnabled,onPremisesSecurityIdentifier&$filter=onPremisesSyncEnabled eq true";
|
||||
public const string constMsGraphUserEntry = "users/{0}";
|
||||
public const string constMsGraphUserDeviceEntry = "users/{0}";
|
||||
public const int constMsGraphUserPaging = 100;
|
||||
@@ -42,7 +42,7 @@ namespace C4IT.DataHistoryProvider
|
||||
public const string constMsGraphManagedDeviceEntry = "deviceManagement/managedDevices/{0}?$select=id,complianceState,userPrincipalName,userDisplayName,managementState,lastSyncDateTime";
|
||||
public const string constMsGraphManagedDeviceAllEntry = "deviceManagement/managedDevices/{0}";
|
||||
public const string constMsGraphManagedDeviceSyncDevice = "deviceManagement/managedDevices/{0}/syncDevice";
|
||||
public const string constMsGraphManagedDeviceDetectedApps = "deviceManagement/managedDevices/{0}?$select=id&$expand=detectedApps";
|
||||
public const string constMsGraphManagedDeviceDetectedApps = "deviceManagement/managedDevices/{0}/detectedApps";
|
||||
public const string constMsGraphManagedDeviceCount = "users/{0}/managedDevices?$select=operatingSystem";
|
||||
public const string constMsGraphManagedUserDeviceEntry = "users/{0}/managedDevices?$select=id,deviceName,model,operatingSystem,manufacturer,serialNumber";
|
||||
public const string constMsGraphManagedDeviceChangeManagedStatus = "deviceManagement/managedDevices/{0}/{1}";
|
||||
@@ -102,7 +102,7 @@ namespace C4IT.DataHistoryProvider
|
||||
}
|
||||
|
||||
public cDataHistoryCollectorActiveDirectory(cDataHistoryCollector Collector)
|
||||
: base(Collector, new List<eDataHistoryOrigin>() { eDataHistoryOrigin.ActiveDirectory, eDataHistoryOrigin.Intune }, constConnectorName, constLicenseId)
|
||||
: base(Collector, new List<enumDataHistoryOrigin>() { enumDataHistoryOrigin.ActiveDirectory, enumDataHistoryOrigin.Intune }, constConnectorName, constLicenseId)
|
||||
{
|
||||
_collector = Collector;
|
||||
}
|
||||
@@ -1289,7 +1289,7 @@ namespace C4IT.DataHistoryProvider
|
||||
{
|
||||
foreach (var DataCluster in Collector.ClusterConfig.Clusters.Values)
|
||||
{
|
||||
if (DataCluster.Origin != eDataHistoryOrigin.ActiveDirectory || DataCluster.InformationClass != InformationClass)
|
||||
if (DataCluster.Origin != enumDataHistoryOrigin.ActiveDirectory || DataCluster.InformationClass != InformationClass)
|
||||
continue;
|
||||
|
||||
foreach (var Table in DataCluster.Tables.Values)
|
||||
@@ -1544,11 +1544,15 @@ namespace C4IT.DataHistoryProvider
|
||||
}
|
||||
|
||||
var strUrl = string.Format(constMsGraphUserList, constMsGraphUserPaging);
|
||||
var Result = await MsGraph.RequestListAsync(strUrl, UseBeta: false, retryForbidden: false, loadPaged: true);
|
||||
|
||||
if (!string.IsNullOrEmpty(Tenant.ScanFilter))
|
||||
strUrl += " and (" + Tenant.ScanFilter + ")";
|
||||
|
||||
var Result = await MsGraph.RequestListAsync(strUrl, UseBeta: false, retryForbidden: false, loadPaged: true, ConsistencyLevelEventual: Tenant.UseConsistencyLevelEventual);
|
||||
|
||||
var Count = 0;
|
||||
var Updated = 0;
|
||||
while (Result != null == Result.Count > 0)
|
||||
while (Result != null && Result.Count > 0)
|
||||
{
|
||||
foreach (var Entry in Result)
|
||||
{
|
||||
@@ -2073,9 +2077,9 @@ namespace C4IT.DataHistoryProvider
|
||||
try
|
||||
{
|
||||
|
||||
var bDeviceExists = Tables.Exists(v => v.Name == constTableNameIntuneDeviceDetails && v.ParentCluster?.Origin == eDataHistoryOrigin.Intune);
|
||||
var bUserDeviceExists = Tables.Exists(v => v.Name == constTableNameIntuneUserDeviceCount && v.ParentCluster?.Origin == eDataHistoryOrigin.Intune);
|
||||
var bMobileDeviceExists = Tables.Exists(v => v.Name == constTableNameIntuneMobileDeviceDetails && v.ParentCluster?.Origin == eDataHistoryOrigin.Intune);
|
||||
var bDeviceExists = Tables.Exists(v => v.Name == constTableNameIntuneDeviceDetails && v.ParentCluster?.Origin == enumDataHistoryOrigin.Intune);
|
||||
var bUserDeviceExists = Tables.Exists(v => v.Name == constTableNameIntuneUserDeviceCount && v.ParentCluster?.Origin == enumDataHistoryOrigin.Intune);
|
||||
var bMobileDeviceExists = Tables.Exists(v => v.Name == constTableNameIntuneMobileDeviceDetails && v.ParentCluster?.Origin == enumDataHistoryOrigin.Intune);
|
||||
|
||||
|
||||
if (!Identities.TryGetValue(enumFasdInformationClass.Computer, out var computer) && computer?.intuneId != Guid.Empty)
|
||||
@@ -2101,6 +2105,7 @@ namespace C4IT.DataHistoryProvider
|
||||
{
|
||||
Name = constTableNameIntuneDeviceDetails,
|
||||
InformationClass = enumFasdInformationClass.Computer,
|
||||
Origin = enumDataHistoryOrigin.Intune,
|
||||
IsIncomplete = true
|
||||
});
|
||||
|
||||
@@ -2115,6 +2120,7 @@ namespace C4IT.DataHistoryProvider
|
||||
{
|
||||
Name = constTableNameIntuneMobileDeviceDetails,
|
||||
InformationClass = enumFasdInformationClass.MobileDevice,
|
||||
Origin = enumDataHistoryOrigin.Intune,
|
||||
IsIncomplete = true
|
||||
});
|
||||
|
||||
@@ -2129,6 +2135,7 @@ namespace C4IT.DataHistoryProvider
|
||||
{
|
||||
Name = constTableNameIntuneUserDeviceCount,
|
||||
InformationClass = enumFasdInformationClass.User,
|
||||
Origin = enumDataHistoryOrigin.Intune,
|
||||
IsIncomplete = true
|
||||
});
|
||||
}
|
||||
@@ -2168,7 +2175,7 @@ namespace C4IT.DataHistoryProvider
|
||||
|
||||
try
|
||||
{
|
||||
var bUserDeviceDetailExists = Tables.Exists(v => v.Name == constTableNameIntuneUserDeviceCountDetail && v.ParentCluster?.Origin == eDataHistoryOrigin.Intune);
|
||||
var bUserDeviceDetailExists = Tables.Exists(v => v.Name == constTableNameIntuneUserDeviceCountDetail && v.ParentCluster?.Origin == enumDataHistoryOrigin.Intune);
|
||||
|
||||
if (!Identities.TryGetValue(enumFasdInformationClass.User, out var userIds))
|
||||
{
|
||||
@@ -2238,6 +2245,7 @@ namespace C4IT.DataHistoryProvider
|
||||
{
|
||||
Name = constTableNameIntuneDeviceDetails,
|
||||
InformationClass = enumFasdInformationClass.Computer,
|
||||
Origin = enumDataHistoryOrigin.Intune,
|
||||
IsStatic = true,
|
||||
TableType = eDataHistoryTableType.Static
|
||||
};
|
||||
@@ -2272,7 +2280,7 @@ namespace C4IT.DataHistoryProvider
|
||||
|
||||
objVal = ConvertToF4sdType(objVal, colInfo.ValueType);
|
||||
|
||||
var _col = new cF4SDHealthCardRawData.cHealthCardTableColumn() { ColumnName = colInfo.Name, Values = new List<object>(1) { objVal } };
|
||||
var _col = new cF4SDHealthCardRawData.cHealthCardTableColumn(retVal) { ColumnName = colInfo.Name, Values = new List<object>(1) { objVal } };
|
||||
retVal.Columns[colInfo.Name] = _col;
|
||||
}
|
||||
catch { }
|
||||
@@ -2325,6 +2333,7 @@ namespace C4IT.DataHistoryProvider
|
||||
{
|
||||
Name = constTableNameIntuneUserDeviceCount,
|
||||
InformationClass = enumFasdInformationClass.User,
|
||||
Origin = enumDataHistoryOrigin.Intune,
|
||||
IsStatic = true,
|
||||
TableType = eDataHistoryTableType.Static
|
||||
};
|
||||
@@ -2385,7 +2394,7 @@ namespace C4IT.DataHistoryProvider
|
||||
|
||||
objVal = ConvertToF4sdType(objVal, colInfo.ValueType);
|
||||
|
||||
var _col = new cF4SDHealthCardRawData.cHealthCardTableColumn() { ColumnName = colInfo.Name, Values = new List<object>(1) { objVal } };
|
||||
var _col = new cF4SDHealthCardRawData.cHealthCardTableColumn(retVal) { ColumnName = colInfo.Name, Values = new List<object>(1) { objVal } };
|
||||
retVal.Columns[colInfo.Name] = _col;
|
||||
}
|
||||
catch { }
|
||||
@@ -2598,6 +2607,7 @@ namespace C4IT.DataHistoryProvider
|
||||
{
|
||||
Name = constTableNameIntuneMobileDeviceDetails,
|
||||
InformationClass = enumFasdInformationClass.MobileDevice,
|
||||
Origin = enumDataHistoryOrigin.Intune,
|
||||
IsStatic = true,
|
||||
TableType = eDataHistoryTableType.Static
|
||||
};
|
||||
@@ -2632,7 +2642,7 @@ namespace C4IT.DataHistoryProvider
|
||||
|
||||
objVal = ConvertToF4sdType(objVal, colInfo.ValueType);
|
||||
|
||||
var _col = new cF4SDHealthCardRawData.cHealthCardTableColumn() { ColumnName = colInfo.Name, Values = new List<object>(1) { objVal } };
|
||||
var _col = new cF4SDHealthCardRawData.cHealthCardTableColumn(retVal) { ColumnName = colInfo.Name, Values = new List<object>(1) { objVal } };
|
||||
retVal.Columns[colInfo.Name] = _col;
|
||||
}
|
||||
catch { }
|
||||
@@ -2831,7 +2841,7 @@ namespace C4IT.DataHistoryProvider
|
||||
public async Task<dynamic> GetManagedApps(List<cF4sdIdentityEntry> identities, cF4sdWebRequestInfo requestInfo, CancellationToken Token)
|
||||
{
|
||||
var Ids = await Collector.getConntectorIds(identities, Token, requestInfo, 1);
|
||||
if (!Ids.TryGetValue(enumFasdInformationClass.User, out var _ids))
|
||||
if (!Ids.TryGetValue(enumFasdInformationClass.Computer, out var _ids))
|
||||
return null;
|
||||
var strUrl = string.Format(constMsGraphManagedDeviceDetectedApps, _ids.intuneId);
|
||||
|
||||
@@ -2842,7 +2852,7 @@ namespace C4IT.DataHistoryProvider
|
||||
var Result = await MsGraph.RequestAsync(strUrl, UseBeta: true, retryForbidden: false);
|
||||
if (Result != null)
|
||||
{
|
||||
var ResultJson = Result.Result["detectedApps"] as JArray;
|
||||
var ResultJson = Result.Result["value"] as JArray;
|
||||
if (ResultJson != null)
|
||||
{
|
||||
Collector.DoProcessUiMessage(3, $" properties of selected '{ResultJson}' with {ResultJson.Count} properties could be read.");
|
||||
@@ -3417,7 +3427,7 @@ namespace C4IT.DataHistoryProvider
|
||||
|
||||
foreach (var DataCluster in Collector.ClusterConfig.Clusters.Values)
|
||||
{
|
||||
if (DataCluster.Origin != eDataHistoryOrigin.ActiveDirectory || DataCluster.InformationClass != InformationClass)
|
||||
if (DataCluster.Origin != enumDataHistoryOrigin.ActiveDirectory || DataCluster.InformationClass != InformationClass)
|
||||
continue;
|
||||
|
||||
foreach (var Table in DataCluster.Tables.Values)
|
||||
@@ -3441,7 +3451,7 @@ namespace C4IT.DataHistoryProvider
|
||||
|
||||
public override bool CheckIfLateDelivery(cDataHistoryConfigTable Table)
|
||||
{
|
||||
if (Table?.ParentCluster?.Origin == eDataHistoryOrigin.Intune)
|
||||
if (Table?.ParentCluster?.Origin == enumDataHistoryOrigin.Intune)
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user