Die hier definierten SQL-Abfragen geben die SCCM-Computerobjekte zurück, die im SCCM Manager zur Verfügung stehen sollen. Dabei müssen zwingend die Spalten [ResourceID] und [Name] zurückgegeben werden.
Außerdem wird zwischen zwei Arten von Abfragen unterschieden.
Diese Abfrage wird ausgeführt, wenn die Scope-Security (Konfiguration: ComputerFilterEnabled = false) im Webservice abgeschaltet ist. Somit sehen alle Benutzer alle Computerobjekte die zurückgegeben werden.
Diese Abfrage wird ausgeführt, wenn die Scope-Security (Konfiguration: ComputerFilterEnabled = true) im Webservice eingeschaltet ist. Somit sehen Benutzer nur Computerobjekte zu denen Sie berechtigt sind.
Damit die Scoping-Abfrage funktioniert, muss die SQL-Abfrage immer nach folgendem Prinzip augebaut sein.
Beispiel |
Kopiere Code |
---|---|
SELECT vcol.ResourceID, vcol.Name, beliebige weitere Spalten FROM {COLLECTION_VIEW} vcol JOIN beliebige Tabellen |
Standard |
Kopiere Code |
---|---|
SELECT CAST(vrs.ResourceID AS VARCHAR(50)) AS ResourceID , MAX(rasr.Resource_Names0) AS 'FQDN' , vrs.Name0 AS 'NAME' , os.Caption0 AS 'OPERATING_SYSTEM' , vrs.Resource_Domain_OR_Workgr0 AS 'DOMAIN' , vrs.User_Name0 AS 'USER_NAME' , vrs.AD_Site_Name0 AS 'AD_SITE_NAME' , MAX(ou.System_OU_Name0) AS 'ORGANIZATIONAL_UNIT' , DATEADD(hh, (DATEDIFF(hh, GETUTCDATE(), GETDATE())), csum.LastPolicyRequest) AS 'LAST_POLICY_REQUEST' , CAST ( vrs.Obsolete0 AS BIT ) AS 'OBSOLETE' FROM {COLLECTION_VIEW} vcol LEFT JOIN v_R_System AS vrs ON vrs.ResourceID = vcol.ResourceID LEFT JOIN v_RA_System_SystemRoles AS RASS ON vrs.ResourceID = rass.ResourceID LEFT JOIN v_RA_System_SystemOUName AS ou ON vrs.ResourceID = ou.ResourceID LEFT JOIN v_CH_ClientSummary csum ON vrs.ResourceID = csum.ResourceID LEFT JOIN [v_GS_OPERATING_SYSTEM] os ON os.ResourceID =vrs.ResourceID LEFT JOIN v_RA_System_ResourceNames rasr ON vrs.ResourceID = rasr.ResourceID WHERE rass.System_Roles0 IS NULL GROUP BY vrs.ResourceID , vrs.Name0 , os.caption0 , vrs.Resource_Domain_OR_Workgr0 , vrs.User_Name0 , vrs.AD_Site_Name0 , csum.LastPolicyRequest , vrs.Obsolete0 |