// Copyright (c) 1997-2004 Microsoft Corporation, All Rights Reserved #pragma autorecover #pragma classflags(64) #pragma namespace("\\\\.\\root\\Hardware") instance of __namespace{ name="ms_407";}; #pragma namespace("\\\\.\\root\\Hardware\\ms_407") [Description("\"ManagedElement\" ist eine abstrakte Klasse, die eine gemeinsame übergeordnete Klasse (auf der obersten Ebene der Vererbungsstruktur) für die nicht zuordnenden Klassen im CIM-Schema bereitstellt.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_ManagedElement { [Description("Die Caption-Eigenschaft ist eine kurze Textbeschreibung (einzeilige Zeichenfolge) des Objekts.") : Amended ToSubclass] string Caption; [Description("Die Description-Eigenschaft stellt eine Textbeschreibung des Objekts bereit.") : Amended ToSubclass] string Description; [Description("Ein Anzeigename für das Objekt. Mithilfe dieser Eigenschaft kann für jede Instanz über deren Schlüsseleigenschaften/Identitätsdaten und Beschreibungsinformationen hinaus ein Anzeigename definiert werden. \nBeachten Sie, dass die Name-Eigenschaft der ManagedSystemElement-Klasse ebenfalls als Anzeigename definiert ist. Diese Eigenschaft wird jedoch häufig in einer Teilklasse als Schlüssel verwendet. Es ist nicht möglich, dass dieselbe Eigenschaft sowohl die Identität als auch einen Anzeigenamen ohne Inkonsistenzen angeben kann. Wenn \"Name\" vorhanden ist und nicht als Schlüssel verwendet wird (wie etwa für Instanzen von \"LogicalDevice\"), dürfen die gleichen Informationen in den Eigenschaften \"Name\" und \"ElementName\" vorkommen.") : Amended ToSubclass] string ElementName; }; [Description("\"CIM_ManagedSystemElement\" ist die Basisklasse für die Systemelementehierarchie. Jede unterscheidbare Komponente eines Systems ist ein Kandidat für die Aufnahme in diese Klasse. Beispiele für Systemkomponenten umfassen: \n- Softwarekomponenten, wie Anwendungsserver, Datenbanken und Anwendungen \n- Betriebssystemkomponenten, wie Dateien, Prozesse und Threads \n- Gerätekomponenten, wie Festplattenlaufwerke, Controller, Prozessoren und Drucker \n- Physische Komponenten, wie Chips und Steckkarten") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_ManagedSystemElement : CIM_ManagedElement { [Description("Ein datetime-Wert, der angibt, wann das Objekt installiert wurde. Das Fehlen eines Wertes zeigt jedoch nicht an, dass das Objekt nicht installiert ist.") : Amended ToSubclass] datetime InstallDate; [Description("Die Name-Eigenschaft definiert die Bezeichnung, unter der das Objekt bekannt ist. Bei Verwendung in einer Teilklasse kann die Name-Eigenschaft außer Kraft gesetzt und als Schlüsseleigenschaft verwendet werden.") : Amended ToSubclass] string Name; [Description("Zeigt den/die aktuellen Status des Elements an. Es sind verschiedene Betriebsstatuswerte definiert. Viele Werte der Aufzählung sind selbst erklärend. Auf einige trifft das jedoch nicht zu; sie werden ausführlicher beschrieben. \n\"Beansprucht\" zeigt an, dass das Element funktioniert, aber beobachtet werden muss. Beispiele für den Status \"Beansprucht\" sind Überlastung, Überhitzung usw. \n\"Vorhersehbarer Fehler\" zeigt an, dass ein Element nominell funktioniert, ein Fehler in naher Zukunft jedoch absehbar ist. \n\"Wird gewartet\" beschreibt ein Element, das konfiguriert, gewartet, gereinigt oder in anderer Weise verwaltet wird. \n\"Kein Kontakt\" zeigt an, dass das Überwachungssystem Kenntnis vom betreffenden Element hat, jedoch nie in der Lage war, mit diesem zu kommunizieren. \n\"Verbindung unterbrochen\" zeigt an, dass das Vorhandensein des ManagedSystem-Elements bekannt ist und in der Vergangenheit erfolgreich Kontakt mit ihm aufgebaut wurde, es aktuell aber unerreichbar ist. \n\"Beendet\" und \"Abgebrochen\" sind ähnlich, obwohl der erste Status ein sauberes und ordnungsgemäßes Ende impliziert, während der zweite Status ein unvermitteltes Ende angibt, bei dem Status und Konfiguration des Elements möglicherweise aktualisiert werden müssen. \n\"Ruhend\" zeigt an, dass das Element inaktiv oder in den Ruhemodus versetzt ist. \n\"Fehler bei unterstützender Entität\" beschreibt, dass dieses Element möglicherweise den Status \"OK\" hat, dass jedoch ein anderes Element, von dem es abhängt, einen Fehler aufweist. Ein Beispiel ist ein Netzwerkdienst oder Endpunkt, der aufgrund von Netzwerkproblemen in einer tieferen Schicht nicht funktionieren kann. \n\"Abgeschlossen\" zeigt an, dass das Element seinen Vorgang abgeschlossen hat. Dieser Wert sollte mit \"OK\", \"Fehler\" oder \"Heruntergestuft\" kombiniert werden, sodass ein Client ermitteln kann, ob der Gesamtvorgang erfolgreich (\"Abgeschlossen\" mit \"OK\") oder nicht erfolgreich (\"Abgeschlossen\" mit \"Fehler\") verarbeitet wurde. \"Abgeschlossen\" mit \"Heruntergestuft\" bedeutet, dass der Vorgang zwar abgeschlossen wurde, aber entweder nicht den Status \"OK\" hatte oder einen Fehler gemeldet hat. \n\"Energiestatus\" zeigt an, dass das Element ergänzende Informationen zum Energiestatus hat, die in seiner zugeordneten PowerManagementService-Erweiterung enthalten sind. \n\"OperationalStatus\" ersetzt in der ManagedSystemElement-Klasse die Status-Eigenschaft, um einen konsistenten Ansatz für Aufzählungen bereitzustellen, Implementierungserfordernissen für Array-Eigenschaften Rechnung zu tragen und einen Migrationspfad von der heutigen Umgebung zu zukünftigen Umgebungen zu öffnen. Diese Änderung wurde nicht zu einem früheren Zeitpunkt vorgenommen, weil sie den DEPRECATED-Kennzeichner voraussetzt. Aufgrund des weit verbreiteten Gebrauchs der vorhandenen Status-Eigenschaft in Verwaltungsanwendungen wird dringend empfohlen, dass Anbieter/Instrumentierung sowohl die Status- als auch die OperationalStatus-Eigenschaft bereitstellen. Des Weiteren soll der erste Wert von \"OperationalStatus\" den primären Status für das Element enthalten. Bei der Instrumentierung soll \"Status\" (da es sich um eine einwertige Eigenschaft handelt) ebenfalls den primären Status des Elements bereitstellen.") : Amended ToSubclass,Values{"Unbekannt", "Andere", "OK", "Heruntergestuft", "Beansprucht", "Vorhersehbarer Fehler", "Fehler", "Nicht behebbarer Fehler", "Wird gestartet", "Wird beendet", "Beendet", "Wird gewartet", "Kein Kontakt", "Verbindung unterbrochen", "Abgebrochen", "Ruhend", "Fehler bei unterstützender Entität", "Abgeschlossen", "Energiestatus", "Reserviert für DMTF", "Reserviert für Hersteller"} : Amended ToSubclass] uint16 OperationalStatus[]; [Description("Zeichenfolgen, in denen die verschiedenen Arraywerte von \"OperationalStatus\" beschrieben sind. Wenn \"OperationalStatus\" beispielsweise der Wert \"Wird beendet\" zugewiesen ist, kann diese Eigenschaft eine Erläuterung enthalten, warum ein Objekt beendet wird. Beachten Sie, dass Einträge in diesem Array solchen an der gleichen Arrayindexposition in \"OperationalStatus\" zugeordnet sind.") : Amended ToSubclass] string StatusDescriptions[]; [Description("Eine Zeichenfolge, die den aktuellen Status des Objekts anzeigt. Es sind verschiedene auf den Betrieb bezogene und nicht auf den Betrieb bezogene Status definiert. Die Eigenschaft wurde zugunsten der OperationalStatus-Eigenschaft verworfen, die in ihrer Aufzählung dieselbe Semantik beinhaltet. Diese Änderung wurde aus drei Gründen vorgenommen: 1) \"Status\" ist als Array besser definiert. Dadurch wird die Beschränkung überwunden, den Status über einen einzelnen Wert zu beschreiben, obwohl es sich eigentlich um eine mehrwertige Eigenschaft handelt (beispielsweise kann ein Element \"OK\" und zugleich \"Beendet\" sein). 2) Der MaxLen-Wert von 10 ist zu stark einschränkend und führt zu unklar aufgelisteten Werten. Und 3) Der Wechsel zum uint16-Datentyp wurde bei der Definition von CIM V2.0 erörtert. Vorhandene V1.0-Implementierungen verwenden jedoch die Zeichenfolgeneigenschaft, und eine Codeänderung sollte vermieden werden. Aus diesem Grund wurde \"Status\" als Urahn in das Schema einbezogen. Die Verwendung des Deprecated-Kennzeichners ermöglicht die Pflege der vorhandenen Eigenschaft, erlaubt aber zugleich eine verbesserte Definition mithilfe von \"OperationalStatus\".") : Amended ToSubclass] string Status; [Description("Zeigt die aktuelle Integrität des Elements an. Dieses Attribut drückt die Integrität dieses Elements, nicht notwendigerweise jedoch auch die seiner Unterkomponenten an. Die möglichen Werte liegen im Bereich von 0 bis 30, wobei 5 bedeutet, dass das Element völlig intakt, und 30 bedeutet, dass das Element völlig ohne Funktion ist. Folgende Reihe ist definiert: \n\"Nicht behebbarer Fehler\" (30) - Das Element ist vollständig ausgefallen, und die Wiederherstellung ist unmöglich. Die gesamte vom Element bereitgestellte Funktionalität ist nicht verfügbar. \n\"Kritischer Fehler\" (25) - Das Element ist ohne Funktion, und die Wiederherstellung ist möglicherweise nicht möglich. \n\"Schwerwiegender Fehler\" (20) - Das Element fällt aus. Es ist möglich, dass die Funktionalität des Elements teilweise oder vollständig heruntergestuft oder überhaupt nicht verfügbar ist. \n\"Geringer Fehler\" (15) - Die gesamte Funktionalität ist verfügbar, kann jedoch teilweise heruntergestuft sein. \n\"Heruntergestuft/Warnung\" (10) - Das Element befindet sich im arbeitsbereiten Zustand, und die gesamte Funktionalität steht zur Verfügung. Das Element funktioniert jedoch nicht optimal. Beispielsweise arbeitet das Element möglicherweise nicht mit voller Leistung oder meldet wiederherstellbare Fehler. \n\"OK\" (5) - Das Element ist vollständig funktionsfähig und arbeitet innerhalb der normalen Betriebsparameter und ohne Fehler. \n\"Unbekannt\" (0) - Die Implementierung kann über die Integrität (HealthState) momentan keine Auskunft erteilen. \nDMTF hat den nicht verwendeten Teil der Reihe für weitere, zukünftig zu definierende HealthStates-Werte reserviert.") : Amended ToSubclass,Values{"Unbekannt", "OK", "Heruntergestuft/Warnung", "Geringer Fehler", "Schwerwiegender Fehler", "Kritischer Fehler", "Nicht behebbarer Fehler", "Reserviert für DMTF"} : Amended ToSubclass] uint16 HealthState; }; [Description("\"CIM_LogicalElement\" ist eine Basisklasse für alle Komponenten eines Systems, die abstrakte Systemkomponenten darstellen, wie etwa Dateien, Prozesse oder LogicalDevices-Objekte.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_LogicalElement : CIM_ManagedSystemElement { }; [Description("Diese Klasse erweitert \"LogicalElement\", um das Konzept eines Elements zu abstrahieren, das aktiviert oder deaktiviert werden kann, wie etwa ein \"LogicalDevice\" oder ein \"ServiceAccessPoint\".") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_EnabledLogicalElement : CIM_LogicalElement { [Description("\"EnabledState\" ist eine Aufzählung ganzer Zahlen, mit der die Aktiviert/Deaktiviert-Status eines Elements wiedergegeben werden. Sie kann auch die Übergänge zwischen diesen angeforderten Status anzeigen. Z.B. stellen \"Wird heruntergefahren\" (Wert = 4) und \"Wird gestartet\" (Wert =10) Übergangszustände zwischen \"Aktiviert\" und \"Deaktiviert\" dar. Der folgende Text fasst die verschiedenen Status für \"Aktiviert\"/\"Deaktiviert\" zusammen: \n\"Aktiviert\" (2) zeigt an, dass das Element Befehle ausführt oder Befehle ausführen kann, Befehle in der Warteschlange ausführt und neue Anforderungen in die Warteschlange einstellt. \n\"Deaktiviert\" (3) zeigt an, dass das Element keine Befehle ausführt und alle neuen Anforderungen verwirft. \n\"Wird heruntergefahren\" (4) zeigt an, dass das Element sich aktuell im Übergang zum Status \"Deaktiviert\" befindet. \n\"Nicht zutreffend\" (5) zeigt an, dass das Element die Aktivierung/Deaktivierung nicht unterstützt. \n\"Aktiviert, aber offline\" (6) zeigt an, dass das Element möglicherweise die Ausführung von Befehlen abschließt, aber alle neuen Anforderungen verwirft. \n\"Test\" (7) zeigt an, dass sich das Element in einem Teststatus befindet. \n\"Zurückgestellt\" (8) zeigt an, dass das Element möglicherweise die Ausführung von Befehlen abschließt, neue Befehle aber in die Warteschlange einstellt. \n\"Ruhe\" (9) zeigt an, dass das Element aktiviert ist, jedoch in einem eingeschränkten Modus. Das Verhalten des Elements ist ähnlich dem Status \"Aktiviert\", jedoch wird nur ein eingeschränkter Befehlssatz verarbeitet. Alle anderen Anforderungen werden in die Warteschlange eingestellt. \n\"Wird gestartet\" (10) zeigt an, dass das Element sich im Übergang zum Status \"Aktiviert\" befindet. Neue Anforderungen werden in die Warteschlange eingestellt.") : Amended ToSubclass,Values{"Unbekannt", "Andere", "Aktiviert", "Deaktiviert", "Herunterfahren", "Nicht zutreffend", "Aktiviert, aber offline", "Wird getestet", "Zurückgestellt", "Ruhe", "Wird gestartet", "Reserviert für DMTF", "Reserviert für Hersteller"} : Amended ToSubclass] uint16 EnabledState; [Description("Eine Zeichenfolge, die den Aktiviert/Deaktiviert-Status eines Elements beschreibt, wenn die EnabledState-Eigenschaft auf 1 (\"Andere\") festgelegt ist. Diese Eigenschaft MUSS auf NULL festgelegt sein, wenn \"EnabledState\" einen anderen Wert als 1 hat.") : Amended ToSubclass] string OtherEnabledState; [Description("\"RequestedState\" ist eine Aufzählung ganzer Zahlen, die den letzten angeforderten oder gewünschten Status für das Element anzeigt. Der tatsächliche Status des Elements wird durch \"EnabledState\" wiedergegeben. Diese Eigenschaft wird bereitgestellt, um den letzten angeforderten und den aktuellen Aktiviert/Deaktiviert-Status zu vergleichen. Beachten Sie, dass diese Eigenschaft keine Bedeutung hat, wenn \"EnabledState\" auf 5 (\"Nicht zutreffend\") festgelegt ist. Standardmäßig hat die RequestedState-Eigenschaft des Elements den Wert 5 (\"Keine Änderung\"). Erläuterungen der Werte in der RequestedState-Aufzählung finden Sie in der Beschreibung der EnabledState-Eigenschaft. \n\nEs sollte beachtet werden, dass \"RequestedState\" zwei neue Werte enthält, die auf Statuswerten von \"EnabledState\" aufbauen. Es sind dies \"Neustart\" (10) und \"Zurücksetzen\" (11). Der erste Wert, \"Neustart\", bezieht sich auf ein \"Herunterfahren\" und anschließendes Fortsetzen der Ausführung bis zum Status \"Aktiviert\". Der zweite Wert, \"Zurücksetzen\", zeigt an, dass ein Element zuerst \"Deaktiviert\" und dann \"Aktiviert\" wird. Auch der Unterschied zwischen dem Anfordern von \"Herunterfahren\" und \"Deaktiviert\" ist zu beachten. Der erste Wert, \"Herunterfahren\", fordert einen ordnungsgemäßen Übergang in den Status \"Deaktiviert\" und kann das Ausschalten des Stroms beinhalten, um jeden vorhandenen Status vollständig zu löschen. Der zweite Wert, der Status \"Deaktiviert\", fordert eine sofortige Deaktivierung des Elements, sodass es keine Befehle oder Verarbeitungsanforderungen mehr annimmt oder ausführt. \n\nDiese Eigenschaft wird als Ergebnis eines Methodenaufrufs (wie etwa \"Start\" oder \"StopService\" von \"CIM_Service\") festgelegt oder kann außer Kraft und in einer Unterklasse als schreibbar (WRITEable) definiert werden. Der Methodenansatz wird dabei gegenüber einer schreibbaren Eigenschaft als überlegen angesehen, da er den expliziten Aufruf des Vorgangs und die Rückgabe eines Ergebniscodes ermöglicht. \n\nEs ist möglich, dass eine bestimmte Instanz von \"EnabledLogicalElement\" die RequestedStateChange-Eigenschaft nicht unterstützt. In diesem Fall wird der Wert 12 (\"Nicht zutreffend\") verwendet.") : Amended ToSubclass,Values{"Aktiviert", "Deaktiviert", "Heruntergefahren", "Keine Änderung", "Offline", "Test", "Zurückgestellt", "Ruhe", "Neustart", "Zurücksetzen", "Nicht zutreffend", "Reserviert für DMTF", "Reserviert für Hersteller"} : Amended ToSubclass] uint16 RequestedState; [Description("Ein aufgezählter Wert, der die standardmäßige oder Startkonfiguration eines Administrators für den Aktivierungsstatus eines Elements anzeigt. Standardmäßig ist das Element \"Aktiviert\" (Wert=2).") : Amended ToSubclass,Values{"Aktiviert", "Deaktiviert", "Nicht zutreffend", "Aktiviert, aber offline", "Kein Standardwert", "Reserviert für DMTF", "Reserviert für Hersteller"} : Amended ToSubclass] uint16 EnabledDefault; [Description("Datum und Uhrzeit der letzten Änderung der EnabledState-Eigenschaft des Elements. Wenn sich der Status des Elements nicht geändert und diese Eigenschaft einen Wert hat, muss sie auf den Intervallwert 0 festgelegt werden. Wenn eine Statusänderung angefordert aber zurückgewiesen oder noch nicht verarbeitet wurde, darf die Eigenschaft nicht aktualisiert werden.") : Amended ToSubclass] datetime TimeOfLastStateChange; [Description("Fordert an, dass der Status des Elements auf den im RequestedState-Parameter angegebenen Wert geändert wird. Wenn die angeforderte Statusänderung erfolgt, stimmen der \"EnabledState\" und der \"RequestedState\" des Elements überein. Das mehrfache Aufrufen der RequestStateChange-Methode kann dazu führen, dass frühere Anforderungen überschrieben werden/verloren gehen. \nWenn \"0\" zurückgegeben wird, wurde die Aufgabe erfolgreich abgeschlossen, und die Verwendung von \"ConcreteJob\" war nicht erforderlich. Wenn \"4096\" (0x1000) zurückgegeben wird, beansprucht der Abschluss der Aufgabe einige Zeit, \"ConcreteJob\" wird erstellt, und der Verweis darauf wird im Job-Ausgabeparameter zurückgegeben. Alle anderen Rückgabecodes zeigen eine Fehlerbedingung an.") : Amended ToSubclass,Values{"Abgeschlossen ohne Fehler", "Nicht unterstützt", "Unbekannter/Nicht angegebener Fehler", "Abschluss innerhalb des Zeitlimits nicht möglich", "Fehler", "Ungültiger Parameter", "Verwendet", "Reserviert für DMTF", "Methodenparameter überprüft - Auftrag gestartet", "Ungültiger Statusübergang", "Die Verwendung des Zeitlimitparameters wird nicht unterstützt", "Besetzt", "Reserviert für Methode", "Herstellerspezifisch"} : Amended ToSubclass] uint32 RequestStateChange([IN,Description("Der für das Element angeforderte Status. Diese Informationen werden in der RequestedState-Eigenschaft der Instanz abgelegt, wenn der Rückgabecode der RequestStateChange-Methode gleich \"0\", \"3\" oder \"4096\" (0x1000) ist - d. h. \"Abgeschlossen ohne Fehler\", \"Zeitüberschreitung\", oder \"Auftrag gestartet\". Informationen über die Bedeutung der RequestedState-Werte im Einzelnen finden Sie in den Beschreibungen der Eigenschaften \"EnabledState\" und \"RequestedState\".") : Amended ToSubclass,Values{"Aktiviert", "Deaktiviert", "Heruntergefahren", "Offline", "Test", "Zurückstellen", "Ruhe", "Neustart", "Zurücksetzen", "Reserviert für DMTF", "Reserviert für Hersteller"} : Amended ToSubclass] uint16 RequestedState,[IN(FALSE),OUT,Description("Verweis auf den Auftrag (kann 0 sein, wenn die Aufgabe abgeschlossen wurde).") : Amended ToSubclass] CIM_ConcreteJob Ref Job,[IN,Description("Ein Zeitlimit, das die maximale Dauer angibt, die der Client für den Übergang in den neuen Status erwartet. Für die Angabe von \"TimeoutPeriod\" muss das Intervallformat verwendet werden. Der Wert \"0\" oder ein NULL-Parameter zeigt an, dass der Client keine Zeitanforderungen für den Übergang hat. \nWenn diese Eigenschaft nicht \"0\" oder NULL enthält und die Implementierung diesen Parameter nicht unterstützt, muss der Rückgabecode \"Die Verwendung des Zeitlimitparameters wird nicht unterstützt\" zurückgegeben werden.") : Amended ToSubclass] datetime TimeoutPeriod); }; [Description("\"CIM_System\" stellt eine aus Komponententeilen (die durch die SystemComponent-Beziehung definiert sind) zusammengesetzte Entität dar, die sich als \"funktionelles Ganzes\" verhält. Systeme sind Objekte der oberen Ebene in der CIM-Hierarchie, die keine Bereichszuordnungen oder schwache Beziehungen benötigen, um zu bestehen und einen Kontext zu haben. Auf Unternehmensebene ist es einleuchtend, ein System eindeutig zu benennen und zu verwalten. Beispielsweise stellt ein ComputerSystem-Objekt eine Art von System dar, das eindeutig benannt und in einem Unternehmen unabhängig verwaltet werden kann. Dies trifft jedoch auf das Netzteil (das Sub-\"System\" für die Stromversorgung) innerhalb des Computers nicht zu. \n\nZwar kann ein System als eine Sammlung aufgefasst werden, das ist jedoch kein zutreffendes Modell. Eine Sammlung ist einfach eine Tasche, die ihre Elemente enthält. Ein System stellt eine Abstraktion höherer Ebene dar, das aus seinen einzelnen Komponenten besteht. Es ist mehr als die Summe seiner Teile. Beachten Sie, dass \"System\" eine Unterklasse von \"EnabledLogicalElement\" ist, wodurch es möglich wird, die gesamte Abstraktion funktionell zu aktivieren/deaktivieren - auf einer höheren Ebene als das Aktivieren/Deaktivieren ihrer Komponententeile.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_System : CIM_EnabledLogicalElement { [Key,Description("\"CreationClassName\" zeigt den Namen der für die Erstellung einer Instanz verwendeten Klasse oder Unterklasse an. In Kombination mit den anderen Schlüsseleigenschaften dieser Klasse ermöglicht diese Eigenschaft die eindeutige Identifizierung aller Instanzen dieser Klasse und ihrer Unterklassen.") : Amended ToSubclass] string CreationClassName; [Key,Description("Der vererbte Name dient als Schlüssel einer Instanz von \"System\" in einer Unternehmensumgebung.") : Amended ToSubclass] string Name; [Description("Das System-Objekt und seine Ableitungen stellen Objekte der obersten Ebene von CIM dar. Sie stellen den Bereich für eine Vielzahl von Komponenten bereit. Es ist erforderlich, eindeutige Systemschlüssel zu verwenden. In einzelnen System-Unterklassen kann eine Heuristik definiert werden, um die Generierung des immer gleichen Systemnamensschlüssels zu versuchen. Die NameFormat-Eigenschaft ermittelt, wie der Systemname mithilfe der Heuristik der Unterklasse generiert wurde.") : Amended ToSubclass] string NameFormat; [Description("Der Name des primären Systembesitzers. Der Systembesitzer ist der Hauptbenutzer des Systems.") : Amended ToSubclass] string PrimaryOwnerName; [Description("Eine Zeichenfolge, die Informationen enthält, wie der primäre Systembesitzer erreicht werden kann (z.B. Telefonnummer, E-Mail-Adresse,...).") : Amended ToSubclass] string PrimaryOwnerContact; [Description("Ein Array (Tasche) von Zeichenfolgen, die die vom Administrator definierte Rolle angeben, die dieses System in der verwalteten Umgebung spielt. Beispiele sind etwa \"Druckerserver Gebäude 8\" oder \"Boise-Benutzerverzeichnisse\". Ein einzelnes System kann mehrere Rollen haben. \nBeachten Sie, dass die Ansicht der Instrumentierung hinsichtlich der Rollen eines Systems durch das Instanziieren einer bestimmten Unterklasse von \"System\" und/oder durch Eigenschaften in einer Unterklasse definiert wird. Beispielsweise wird der Zweck eines ComputerSystem-Objekts mithilfe der Eigenschaften \"Dedicated\" und \"OtherDedicatedDescription\" definiert.") : Amended ToSubclass] string Roles[]; }; [Description("Dies ist eine besondere Gruppierung von ManagedSystemElement-Objekten. Die Gruppierung wird als einzelne Entität angesehen, wodurch berücksichtigt wird, dass alle ihre Komponenten in ähnlicher Weise verwaltet werden - entweder durch den gleichen Benutzer, die gleiche Benutzergruppe oder die gleiche Richtlinie. Sie dient als Aggregationspunkt für mindestens eines der folgenden Elemente: Netzwerkgeräte, wie etwa Router und Switches, Server und andere Ressourcen, auf die von Endsystemen zugegriffen werden kann. Diese Gruppierung von Geräten spielt eine wesentliche Rolle beim Sicherstellen, dass die gleichen Verwaltungsrichtlinien und -aktionen auf alle in der Gruppierung enthaltenen Geräte angewendet werden. Das spezifische Verhalten und/oder die spezifische Semantik des AdminDomain-Objekts kann durch seine aggregierten und zugeordneten Entitäten identifiziert werden.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_AdminDomain : CIM_System { [Description("Die NameFormat-Eigenschaft identifiziert, wie der Name des AdminDomain-Objekts generiert wird. Dazu wird die in der Systemmodellspezifikation von CIM V2 angegebene Heuristik verwendet. Sie geht davon aus, dass die dokumentierten Regeln der Reihe nach durchsucht werden, um einen Namen zu bestimmen und zuzuordnen. Die NameFormat-Werteliste definiert die Vorrangreihenfolge für das Zuweisen des Namens des AdminDomain-Objekts. \n\n\"FC\" wurde verworfen und durch \"WWN\" ersetzt, um Konsistenz mit den anderen ValueMap-Wertelisten zu erreichen.") : Amended ToSubclass,Values{"Andere", "Autonomes System", "Netzwerkzugriffsanbieter", "Netzwerkbetriebszentrum", "Point of Presence", "Regionaler Netzwerkanbieter", "IP", "IPX", "SNA", "Wählen", "WAN", "LAN", "ISDN", "Frame Relay", "ATM", "E.164", "Infiniband", "Fibre Channel", "Richtlinienrepository", "Fibre Channel World Wide Name"} : Amended ToSubclass] string NameFormat; }; [Description("Eine aus \"System\" abgeleitete Klasse, die eine besondere Sammlung von ManagedSystemElement-Objekten darstellt. Diese Sammlung bietet Berechnungsfähigkeiten und dient als Aggregationspunkt zum Zuordnen eines oder mehrerer der folgenden Elemente: \"FileSystem\", \"OperatingSystem\", \"Processor\" und \"Memory\" (temporärer (Volatile) und/oder permanenter (NonVolatile) Speicher).") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_ComputerSystem : CIM_System { [Description("Das ComputerSystem-Objekt und dessen Ableitungen stellen Objekte der obersten Ebene von CIM dar. Sie bieten den Bereich für eine Vielzahl von Komponenten. Es ist erforderlich, eindeutige Systemschlüssel zu verwenden. Die NameFormat-Eigenschaft bestimmt, wie der Name des ComputerSystem-Objekts generiert wird. Der ValueMap-Kennzeichner von \"NameFormat\" definiert die verschiedenen Mechanismen für das Zuweisen des Namens. Beachten Sie, dass ein weiterer Name für das ComputerSystem-Objekt mithilfe der vererbten ElementName-Eigenschaft zugewiesen und verwendet werden kann, der für ein Unternehmen passender ist.") : Amended ToSubclass] string NameFormat; [Description("\"OtherIdentifyingInfo\" erfasst, über die Systemnamensinformation hinaus, weitere Daten, die zum Identifizieren eines ComputerSystem-Objekts verwendet werden können. Beispielsweise kann diese Eigenschaft den Fibre Channel World Wide Name (WWN) eines Knotens enthalten. Beachten Sie, dass für den Fall, dass nur der Fibre Channel-Name verfügbar und dieser eindeutig ist (und somit als der Systemschlüssel verwendet werden kann), diese Eigenschaft den Wert NULL hat und der WWN zum Systemschlüssel wird, dessen Daten in der Name-Eigenschaft abgelegt werden.") : Amended ToSubclass] string OtherIdentifyingInfo[]; [Description("Ein Array formfreier Zeichenfolgen, die Erläuterungen und Details zu den Einträgen im OtherIdentifying-Info-Array enthalten. Beachten Sie, dass jeder Eintrag in diesem Array dem Eintrag in \"OtherIdentifyingInfo\" zugeordnet ist, der denselben Index hat.") : Amended ToSubclass] string IdentifyingDescriptions[]; [Description("Aufzählung, die angibt, ob das ComputerSystem-Objekt ein System für einen besonderen Zweck (z.B. dediziert für eine bestimmte Verwendung) im Gegensatz zu einem Allzwecksystem ist. Beispielsweise kann angegeben werden, dass das System dediziert zum Drucken (\"Drucken\", Wert=11) verwendet wird oder als \"Hub\" (Wert=8) dient. \nWeitere Klarstellung ist hinsichtlich des Wertes 17 (\"Gerät für mobilen Benutzer\",) erforderlich. Ein Beispiel eines dedizierten Benutzergeräts ist ein Mobiltelefon oder ein Barcodeleser in einem Geschäft, der Daten über Hochfrequenz austauscht. Diese Systeme sind in ihrer Funktionalität und Programmierbarkeit ziemlich eingeschränkt und werden nicht als Plattformen für den allgemeinen Computereinsatz angesehen. Im Gegensatz dazu ist ein Beispiel für ein Allzweck-Mobilsystem (d. h. ein NICHT dediziertes System) etwa ein Handheldcomputer. Zwar ist seine Programmierbarkeit eingeschränkt, doch kann neue Software gedownloadet und seine Funktionalität durch den Benutzer erweitert werden.") : Amended ToSubclass,Values{"Nicht dediziert", "Unbekannt", "Andere", "Speicher", "Router", "Schalter", "Schicht 3-Switch", "Switch im Hauptbüro", "Hub", "Zugriffsserver", "Firewall", "Drucken", "E/A", "Web-Zwischenspeicherung", "Verwaltung", "Blockserver", "Dateiserver", "Gerät für mobilen Benutzer", "Repeater", "Brücke/Extender", "Gateway", "Speichervirtualisierer", "Medienbibliothek", "ExtenderNode", "NAS-Gateway", "Eigenständiges NAS", "UPS", "IP-Telefon", "Reserviert für DMTF", "Reserviert für Hersteller"} : Amended ToSubclass] uint16 Dedicated[]; [Description("Eine Zeichenfolge, die beschreibt, inwiefern oder warum das System dediziert ist, wenn das Dedicated-Array den Wert 2, \"Andere\" enthält.") : Amended ToSubclass] string OtherDedicatedDescriptions[]; [Description("Bei \"Aktiviert\" (Wert = 4) kann das ComputerSystem-Objekt per Hardware zurückgesetzt werden (z.B. mit dem Netzschalter oder der Rücksetztaste). Bei \"Deaktiviert\" (Wert = 3) ist Zurücksetzen per Hardware unzulässig. Über \"Aktiviert\" und \"Deaktiviert\" hinaus sind auch andere Werte für die Eigenschaft definiert - \"Nicht implementiert\" (5), \"Andere\" (1) und \"Unbekannt\" (2).") : Amended ToSubclass,Values{"Andere", "Unbekannt", "Deaktiviert", "Aktiviert", "Nicht implementiert"} : Amended ToSubclass] uint16 ResetCapability; [Description("Ein aufgezähltes Array, das die Fähigkeiten beschreibt, die das ComputerSystem-Objekt hinsichtlich der Energieverwaltung hat. Die Verwendung dieser Eigenschaft wurde verworfen. Stattdessen soll die Power Capabilites-Eigenschaft in einer zugeordneten PowerManagement Capabilities-Klasse verwendet werden.") : Amended ToSubclass,Values{"Unbekannt", "Nicht unterstützt", "Deaktiviert", "Aktiviert", "Automatische Energiesparmodi", "Energiestatus einstellbar", "Energiezyklus unterstützt", "Geplante Reaktivierung unterstützt"} : Amended ToSubclass] uint16 PowerManagementCapabilities[]; [Description("Legt den Energiestatus des Computers fest. Die Verwendung dieser Methode wurde verworfen. Stattdessen soll die SetPowerState-Methode in der zugeordneten PowerManagementService-Klasse verwendet werden.") : Amended ToSubclass] uint32 SetPowerState([IN,Description("Der gewünschte Status des ComputerSystem-Objekts.") : Amended ToSubclass,Values{"Kein Energiesparmodus", "Energiesparmodus - Niedriger Energiestatus", "Energiesparmodus - Standby", "Energiesparmodus - Anderer", "Energiezyklus", "Ausschalten", "Ruhezustand", "Standby"} : Amended ToSubclass] uint32 PowerState,[IN,Description("\"Time\" zeigt an, wann der Energiestatus festgelegt werden soll, entweder als gewöhnlicher datetime-Wert oder als Intervallwert (bei dem das Intervall beginnt, sobald der Methodenaufruf empfangen wurde).") : Amended ToSubclass] datetime Time); }; [Description("\"Collection\" ist eine abstrakte Klasse, die eine gemeinsame übergeordnete Klasse für Datenelemente bereitstellt, die Sammlungen von ManagedElement-Klassen und von deren Unterklassen darstellen.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_Collection : CIM_ManagedElement { }; [Description("\"SystemSpecificCollection\" stellt das allgemeine Konzept einer Sammlung dar, deren Umfang durch ein System-Objekt bestimmt wird (oder die in ihm enthalten ist). Dies stellt eine Sammlung dar, die nur im Kontext eines Systems eine Bedeutung hat und/oder deren Elemente durch die Definition des Systems eingeschränkt sind. Dies wird explizit durch die (erforderliche) Zuordnung (\"HostedCollection\") beschrieben. \nEin Beispiel für ein SystemSpecificCollection-Objekt ist eine Fibre Channel-Zone, die Netzwerkanschlüsse, Anschlussgruppierungen und Aliase (wie von einem Kunden verlangt) im Kontext eines AdminDomain-Objekts sammelt. Die Sammlung ist kein Bestandteil der Domäne, sondern lediglich eine willkürliche Gruppierung von Geräten und anderen Sammlungen in der Domäne. Anders ausgedrückt, der Kontext der Sammlung ist auf die Domäne beschränkt, und ihre Elemente sind ebenfalls durch die Domäne eingeschränkt.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_SystemSpecificCollection : CIM_Collection { [Key,Description("Innerhalb des Bereichs des instanziierenden Namespaces identifiziert \"InstanceID\" verdeckt und eindeutig eine Instanz dieser Klasse. Damit Eindeutigkeit innerhalb des Namespaces sichergestellt werden kann, sollte der Wert von \"InstanceID\" mithilfe des folgenden bevorzugten Algorithmus konstruiert werden: \n: \nWobei und durch einen Doppelpunkt (:) getrennt sind und einen urheberrechtlich oder markenrechtlich geschützten oder in anderer Weise eindeutigen Namen enthalten muss, der sich im Besitz des Unternehmens befindet, das \"InstanceID\" erstellt/definiert, oder eine registrierte ID darstellen muss, die dem Unternehmen durch eine anerkannte weltweite berechtigende Vergabestelle zugeordnet ist. (Dies ist ähnlich der _-Struktur von Schemaklassennamen.) Ferner darf keinen Doppelpunkt (:) enthalten, damit Eindeutigkeit sichergestellt ist. Bei der Verwendung dieses Algorithmus muss der erste in \"InstanceID\" erscheinende Doppelpunkt zwischen und auftreten. \n wird vom Unternehmen gewählt und darf nicht erneut zum Identifizieren verschiedener zugrundeliegender (der Realität entstammender) Elemente verwendet werden. Wenn der oben angegebene bevorzugte Algorithmus nicht verwendet wird, muss die definierende Entität sicherstellen, dass die resultierende \"InstanceID\" nicht in von diesem oder anderen Anbieter(n) produzierten InstanceID-Werten im Namespace dieser Instanz erneut verwendet wird. \nFür von DMTF definierte Instanzen muss der bevorzugte Algorithmus verwendet werden, wobei auf \"CIM\" festgelegt ist.") : Amended ToSubclass] string InstanceID; }; [Description("Eine Abstraktion oder Emulation einer Hardwareentität, die in physischer Hardware realisiert sein kann, jedoch nicht sein muss. Alle Merkmale eines logischen Geräts (LogicalDevice), die zum Verwalten seines Betriebs oder seiner Konfiguration verwendet werden, sind im LogicalDevice-Objekt enthalten oder diesem zugeordnet. Beispiele für die Betriebseigenschaften eines Druckers sind etwa die unterstützten Papierformate oder erkannte Fehler. Beispiele für die Konfigurationseigenschaften eines Sensorgeräts sind seine Schwellenwerteinstellungen. Für ein LogicalDevice-Objekt können verschiedene Konfigurationen vorhanden sein. Diese Konfigurationen können in Setting-Objekten enthalten und dem LogicalDevice-Objekt zugeordnet sein.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_LogicalDevice : CIM_EnabledLogicalElement { [Key,Description("Die CreationClassName-Eigenschaft des bereichsdefinierenden Systems.") : Amended ToSubclass] string SystemCreationClassName; [Key,Description("Der Name des bereichsdefinierenden Systems.") : Amended ToSubclass] string SystemName; [Key,Description("\"CreationClassName\" zeigt den Namen der für die Erstellung einer Instanz verwendeten Klasse oder Unterklasse an. In Kombination mit den anderen Schlüsseleigenschaften dieser Klasse ermöglicht diese Eigenschaft die eindeutige Identifizierung aller Instanzen dieser Klasse und ihrer Unterklassen.") : Amended ToSubclass] string CreationClassName; [Key,Description("Eine Adresse oder andere identifizierende Information zur eindeutigen Benennung des LogicalDevice-Objekts.") : Amended ToSubclass] string DeviceID; [Description("Boolescher Wert, der angibt, dass für das Gerät Energieverwaltung verfügbar ist. Die Verwendung dieser Eigenschaft wurde verworfen. Stattdessen zeigt das Bestehen einer zugeordneten PowerManagementCapabilities-Klasse (die mithilfe der ElementCapabilities-Beziehung zugeordnet ist) an, dass Energieverwaltung unterstützt wird.") : Amended ToSubclass] boolean PowerManagementSupported; [Description("Ein aufgezähltes Array, das die Fähigkeiten des Geräts zur Energieverwaltung beschreibt. Die Verwendung dieser Eigenschaft wurde verworfen. Stattdessen soll die PowerCapabilites-Eigenschaft in einer zugeordneten PowerManagementCapabilities-Klasse verwendet werden.") : Amended ToSubclass,Values{"Unbekannt", "Nicht unterstützt", "Deaktiviert", "Aktiviert", "Automatische Energiesparmodi", "Energiestatus einstellbar", "Energiezyklus unterstützt", "Geplante Reaktivierung unterstützt"} : Amended ToSubclass] uint16 PowerManagementCapabilities[]; [Description("Die primäre Verfügbarkeit und der Status des Geräts. (Weitere Statusinformationen können mithilfe der Additional Availability-Arrayeigenschaft angegeben werden.) Beispielsweise zeigt die Availability-Eigenschaft an, dass das Gerät in Betrieb ist und ohne Energieverwaltung (Wert=3) betrieben wird oder sich in einem Warn- (4), Test- (5), verringerten (10) oder Energiesparstatus (Werte 13-15 und 17) befindet. Die Energiesparmodi sind wie folgt definiert: Wert 13 (\"Energiesparmodus - Unbekannt\") zeigt an, dass das Gerät sich bekanntermaßen in einem Energiesparmodus befindet, sein genauer Status in diesem Modus jedoch unbekannt ist; 14 (\"Energiesparmodus - Niedriger Energiestatus\") zeigt an, dass sich das Gerät in einem Energiesparmodus befindet, aber noch funktioniert und eine verringerte Leistung aufweisen kann; 15 (\"Energiesparmodus - Standby\") beschreibt, dass das Gerät nicht funktioniert, aber schnell auf volle Leistung gebracht werden kann; und Wert 17 (\"Energiesparmodus - Warnung\") zeigt an, dass sich das Gerät sowohl in einem Warnungs- als auch in einem Energiesparmodus befindet.") : Amended ToSubclass,Values{"Andere", "Unbekannt", "Wird ausgeführt/Kein Energiesparmodus", "Warnung", "Wird getestet", "Nicht zutreffend", "Ausschalten", "Offline", "Außer Betrieb", "Heruntergestuft", "Nicht installiert", "Installationsfehler", "Energiesparmodus - Unbekannt", "Energiesparmodus - Niedriger Energiestatus", "Energiesparmodus - Standby", "Energiezyklus", "Energiesparmodus - Warnung", "Angehalten", "Nicht bereit", "Nicht konfiguriert", "Ruhe"} : Amended ToSubclass] uint16 Availability; [Description("Die StatusInfo-Eigenschaft zeigt an, ob sich das logische Gerät in einem aktivierten (Wert = 3), deaktivierten (Wert = 4) oder einem anderen (1) oder unbekannten (2) Status befindet. Wenn die Eigenschaft nicht auf das LogicalDevice zutrifft, soll der Wert \"5\" (\"Nicht zutreffend\") verwendet werden. \"StatusInfo\" wurde zugunsten einer klarer benannten Eigenschaft mit zusätzlichen aufgezählten Werten (EnabledState) verworfen, die von \"ManagedSystemElement\" geerbt wird. \nWenn ein Gerät (\"Aktiviert\")(Wert=3) ist, wurde es eingeschaltet und ist konfiguriert und betriebsbereit. Das Gerät kann funktional aktiv sein, muss dies aber nicht, je nachdem, ob seine Availability-Eigenschaft (oder \"AdditionalAvailability\") den Status (\"Wird ausgeführt/Kein Energiesparmodus\")(Wert=3) oder (\"Offline\") (Wert=8) anzeigt. Wenn ein Gerät aktiviert, aber offline ist, kann es Out-Of-Band-Anforderungen ausführen, wie etwa Diagnoseprogramme. Bei (\"Deaktiviert\") StatusInfo-Wert=4) kann ein Gerät nur \"Aktiviert\" oder ausgeschaltet werden. In einer PC-Umgebung bedeutet (\"Deaktiviert\"), dass sich der Treiber für das Gerät nicht im Stapel befindet. In anderen Umgebungen kann ein Gerät durch Entfernen seiner Konfigurationsdatei deaktiviert werden. Ein deaktiviertes Gerät ist physisch in einem System anwesend und beansprucht Ressourcen, es kann jedoch nicht mit ihm kommuniziert werden, bis das Laden eines Treibers, das Laden einer Konfigurationsdatei oder eine andere \"aktivierende\" Aktivität eingetreten ist.") : Amended ToSubclass,Values{"Andere", "Unbekannt", "Aktiviert", "Deaktiviert", "Nicht zutreffend"} : Amended ToSubclass] uint16 StatusInfo; [Description("\"LastErrorCode\" erfasst den letzten vom LogicalDevice-Objekt berichteten Fehlercode.") : Amended ToSubclass] uint32 LastErrorCode; [Description("\"ErrorDescription\" ist eine formfreie Zeichenfolge, die weitere Informationen über den in \"LastErrorCode\" aufgezeichneten Fehler und Informationen über mögliche Korrekturmaßnamen enthält.") : Amended ToSubclass] string ErrorDescription; [Description("\"ErrorCleared\" ist eine boolesche Eigenschaft, die anzeigt, dass der in \"LastErrorCode\" aufgezeichnete Fehler jetzt gelöscht ist.") : Amended ToSubclass] boolean ErrorCleared; [Description("\"OtherIdentifyingInfo\" erfasst, über DeviceID-Informationen hinaus, weitere Daten, die zum Identifizieren eines LogicalDevice-Objekts verwendet werden können. Ein Beispiel ist, dass der Anzeigename des Betriebssystems für das Gerät in dieser Eigenschaft abgelegt wird.") : Amended ToSubclass] string OtherIdentifyingInfo[]; [Description("Die Anzahl aufeinander folgender Stunden, die dieses Gerät seit seinem letzten Energiezyklus eingeschaltet war.") : Amended ToSubclass] uint64 PowerOnHours; [Description("Die Gesamtzahl der Stunden, die dieses Gerät eingeschaltet war.") : Amended ToSubclass] uint64 TotalPowerOnHours; [Description("Ein Array formfreier Zeichenfolgen, die Erläuterungen und Details zu den Einträgen im OtherIdentifyingInfo-Array enthalten. Beachten Sie, dass jeder Eintrag in diesem Array dem Eintrag in \"OtherIdentifyingInfo\" zugeordnet ist, der denselben Index hat.") : Amended ToSubclass] string IdentifyingDescriptions[]; [Description("Weitere Informationen zu Verfügbarkeit und Status des Geräts, über die in der Availability-Eigenschaft angegebenen hinaus. Die Availability-Eigenschaft bezeichnet den primären Status und die primäre Verfügbarkeit des Geräts. In einigen Fällen reicht dies nicht aus, um den Status des Geräts vollständig zu beschreiben. In diesen Fällen kann die AdditionalAvailability-Eigenschaft verwendet werden, um weitere Informationen bereitzustellen. Beispielsweise kann die primäre Verfügbarkeit eines Geräts \"Offline\" (Wert=8) sein, aber es kann sich außerdem in einem niedrigen Energiestatus befinden (AdditonalAvailability Wert=14) oder Diagnoseprogramme ausführen (AdditionalAvailability Wert=5, \"Wird getestet\").") : Amended ToSubclass,Values{"Andere", "Unbekannt", "Wird ausgeführt/Kein Energiesparmodus", "Warnung", "Wird getestet", "Nicht zutreffend", "Ausschalten", "Offline", "Außer Betrieb", "Heruntergestuft", "Nicht installiert", "Installationsfehler", "Energiesparmodus - Unbekannt", "Energiesparmodus - Niedriger Energiestatus", "Energiesparmodus - Standby", "Energiezyklus", "Energiesparmodus - Warnung", "Angehalten", "Nicht bereit", "Nicht konfiguriert", "Ruhe"} : Amended ToSubclass] uint16 AdditionalAvailability[]; [Description("Die MaxQuiesceTime-Eigenschaft wurde verworfen. Beim Auswerten der Verwendung von \"Ruhe\" wurde festgestellt, dass diese einzelne Eigenschaft nicht angemessen ist, um zu beschreiben, wann ein Gerät automatisch einen Ruhemodus verlässt. Tatsächlich wurde festgestellt, dass das wahrscheinlichste Szenario für den Übergang eines Geräts aus einem Ruhemodus auf der Anzahl der ausstehenden Anforderungen statt auf einem maximalen Zeitraum basiert. Dies wird zu einem späteren Zeitpunkt neu bewertet und neu positioniert. \nMaximaler Zeitraum in Millisekunden, die ein Gerät im Status \"Ruhe\" ausgeführt werden kann. Der Status eines Geräts ist in seinen Eigenschaften \"Availability\" und \"AdditionalAvailability\" definiert, wobei \"Ruhe\" durch den Wert \"21\" angegeben wird. Das Verhalten nach dem Ende des Zeitlimits ist gerätespezifisch. Das Gerät kann den Ruhemodus verlassen, einen Offlinestatus annehmen oder eine andere Aktion ausführen. Der Wert \"0\" zeigt an, dass ein Gerät unbeschränkt in Ruhe bleiben kann.") : Amended ToSubclass] uint64 MaxQuiesceTime; [Description("Legt den Energiestatus des Geräts fest. Die Verwendung dieser Methode wurde verworfen. Stattdessen soll die SetPowerState-Methode in der zugeordneten PowerManagementService-Klasse verwendet werden.") : Amended ToSubclass] uint32 SetPowerState([IN,Description("Der festzulegende Energiestatus.") : Amended ToSubclass,Values{"Kein Energiesparmodus", "Energiesparmodus - Niedriger Energiestatus", "Energiesparmodus - Standby", "Energiesparmodus - Anderer", "Energiezyklus", "Ausschalten"} : Amended ToSubclass] uint16 PowerState,[IN,Description("\"Time\" zeigt an, wann der Energiestatus festgelegt werden soll, entweder als gewöhnlicher datetime-Wert oder als Intervallwert (bei dem das Intervall beginnt, sobald der Methodenaufruf empfangen wurde).") : Amended ToSubclass] datetime Time); [Description("Erfordert ein Zurücksetzen von \"LogicalDevice\". Der Rückgabewert soll \"0\" sein, wenn die Anforderung erfolgreich ausgeführt wurde, \"1\", wenn die Anforderung nicht unterstützt wird, und ein anderer Wert, wenn ein Fehler aufgetreten ist. In einer Unterklasse kann die Menge möglicher Rückgabecodes angegeben werden; dazu wird ein ValueMap-Kennzeichner für die Methode verwendet. Die Zeichenfolgen, in die die Inhalte von \"ValueMap\" übersetzt werden, können ebenfalls in der Unterklasse in Form eines Values-Arraykennzeichners angegeben werden.") : Amended ToSubclass] uint32 Reset(); [Description("Die EnableDevice-Methode wurde zugunsten der allgemeineren RequestStateChange-Methode aufgegeben, die sich direkt mit der von dieser Methode bereitgestellten Funktionalität überschneidet. \nAnforderungen für die Aktivierung (Eingabeparameter für \"Aktiviert\" = TRUE) oder Deaktivierung (= FALSE) des LogicalDevice-Objekts. Bei Erfolg sollen die Eigenschaften \"StatusInfo\" und \"EnabledState\" des Geräts den gewünschten Status (aktiviert/deaktiviert) wiedergeben. Beachten Sie, dass die Funktion dieser Methode sich mit der RequestedState-Eigenschaft überschneidet. \"RequestedState\" wurde dem Modell hinzugefügt, um einen Datensatz (d. h. einen permanenten Wert) der letzten Statusanforderung zu erhalten. Beim Aufrufen der EnableDevice-Methode soll die RequestedState-Eigenschaft entsprechend festgelegt werden. \nDer Rückgabecode soll \"0\" sein, wenn die Anforderung erfolgreich ausgeführt wurde, \"1\", wenn die Anforderung nicht unterstützt wird, und ein anderer Wert, wenn ein Fehler aufgetreten ist. In einer Unterklasse kann die Menge möglicher Rückgabecodes angegeben werden; dazu wird ein ValueMap-Kennzeichner für die Methode verwendet. Die Zeichenfolgen, in die die Inhalte von \"ValueMap\" übersetzt werden, können ebenfalls in der Unterklasse in Form eines Values-Arraykennzeichners angegeben werden.") : Amended ToSubclass] uint32 EnableDevice([IN,Description("Bei TRUE wird das Gerät aktiviert, bei FALSE deaktiviert.") : Amended ToSubclass] boolean Enabled); [Description("Die OnlineDevice-Methode wurde zugunsten der allgemeineren RequestStateChange-Methode aufgegeben, die sich direkt mit der von dieser Methode bereitgestellten Funktionalität überschneidet. \nFordert an, dass das LogicalDevice-Objekt in den Online- (Eingabeparameter für \"Online\" = TRUE) oder Offlinemodus geschaltet (= FALSE) wird. \"Online\" zeigt an, dass das Gerät zur Annahme von Anforderungen bereit, betriebsbereit und voll funktionsfähig ist. In diesem Fall ist die Availability-Eigenschaft des Geräts auf den Wert \"3\" (\"Wird ausgeführt/Kein Energiesparmodus\") festgelegt. \"Offline\" zeigt an, dass ein Gerät eingeschaltet und betriebsbereit ist, aber keine funktionalen Anforderungen verarbeitet. In einem Offlinestatus kann ein Gerät in der Lage sein, Diagnoseprogramme auszuführen oder Betriebswarnungen zu generieren. Wenn beispielsweise an einem Drucker die Taste \"Offline\" gedrückt wird, ist das Gerät nicht mehr für die Verarbeitung von Druckaufträgen verfügbar, kann jedoch für Diagnose- oder Wartungsaufgaben verfügbar sein. \nWenn diese Methode erfolgreich ausgeführt wurde, sollen die Eigenschaften \"Availability\" und \"AdditionalAvailability\" des Geräts den aktualisierten Status wiedergeben. Wenn beim Wechsel in den Online- oder Offlinestatus ein Fehler auftritt, soll das Gerät in seinem aktuellen Status verbleiben. Das heißt, eine fehlschlagende Anforderung soll das Gerät nicht in einem unbestimmten Status zurücklassen. Wenn ein Gerät aus einem \"Offline\"-Modus wieder \"Online\" geschaltet wird, soll der letzte \"Online\"-Status des Geräts wiederhergestellt werden, wenn irgend möglich. Nur ein konfiguriertes Gerät mit dem EnabledState/StatusInfo-Wert \"Enabled\" kann in den Online- oder Offlinemodus geschaltet werden. \n\"OnlineDevice\" soll bei Erfolg \"0\" zurückgeben, \"1\", wenn die Anforderung überhaupt nicht unterstützt wird, \"2\", wenn die Anforderung aufgrund des aktuellen Status des Geräts nicht unterstützt wird, und einen anderen Wert, wenn ein anderer Fehler aufgetreten ist. In einer Unterklasse kann die Menge möglicher Rückgabecodes angegeben werden; dazu wird ein ValueMap-Kennzeichner für die Methode verwendet. Die Zeichenfolgen, in die die Inhalte von \"ValueMap\" übersetzt werden, können ebenfalls in der Unterklasse in Form eines Values-Arraykennzeichners angegeben werden. \nBeachten Sie, dass die Funktion dieser Methode sich mit der RequestedState-Eigenschaft überschneidet. \"RequestedState\" wurde dem Modell hinzugefügt, um einen Datensatz (d. h. einen permanenten Wert) der letzten Statusanforderung zu erhalten. Beim Aufrufen der OnlineDevice-Methode soll die RequestedState-Eigenschaft entsprechend festgelegt werden.") : Amended ToSubclass] uint32 OnlineDevice([IN,Description("Bei TRUE wird das Gerät in den Onlinemodus, bei FALSE in den Offlinemodus geschaltet.") : Amended ToSubclass] boolean Online); [Description("Die QuiesceDevice-Methode wurde zugunsten der allgemeineren RequestStateChange-Methode verworfen, die sich direkt mit der von dieser Methode bereitgestellten Funktionalität überschneidet. \nFordert an, dass das LogicalDevice-Objekt ordnungsgemäß jede aktuelle Aktivität beendet (Eingabeparameter für \"Ruhe\" = TRUE) oder wieder aufnimmt (= FALSE). Damit diese Methode ein Gerät in Ruhe versetzen kann, soll das Gerät für \"Availability\" (oder \"Additional Availability\") den Eigenschaftswert \"Wird ausgeführt/Kein Energiesparmodus\" (Wert=3) und für \"EnabledStatus\"/\"StatusInfo\" den Wert \"Aktiviert\" haben. Beispielsweise kann ein in Ruhe versetztes Gerät anschließend zu Diagnosezwecken in den Offlinemodus geschaltet oder zum Ausschalten oder Hotswapping deaktiviert werden. Damit die Methode ein Gerät \"aus dem Ruhemodus wecken\" kann, soll das betreffende Gerät für \"Availability\" (oder \"AdditionalAvailability\") den Wert \"Ruhe\" (Wert=21) und für \"EnabledStatus\"/\"StatusInfo\" den Wert \"Aktiviert\" haben. In diesem Fall wird der Status \"Aktiviert\" und \"Wird ausgeführt/Kein Energiesparmodus\" des Geräts wiederhergestellt. \nDer Rückgabewert der Methode soll den Erfolg oder das Fehlschlagen des Übergangs in den Ruhezustand anzeigen. Sie soll bei Erfolg \"0\" zurückgeben, \"1\", wenn die Anforderung überhaupt nicht unterstützt wird, \"2\", wenn die Anforderung aufgrund des aktuellen Status des Geräts nicht unterstützt wird, und einen anderen Wert, wenn ein anderer Fehler aufgetreten ist. In einer Unterklasse kann die Menge möglicher Rückgabecodes angegeben werden; dazu wird ein ValueMap-Kennzeichner für die Methode verwendet. Die Zeichenfolgen, in die die Inhalte von \"ValueMap\" übersetzt werden, können ebenfalls in der Unterklasse in Form eines Values-Arraykennzeichners angegeben werden.") : Amended ToSubclass] uint32 QuiesceDevice([IN,Description("Bei TRUE wird jede Aktivität ordnungsgemäß beendet, bei FALSE wieder aufgenommen.") : Amended ToSubclass] boolean Quiesce); [Description("Fordert an, dass das Gerät seine aktuellen Konfigurations-, Einrichtungs- und/oder Statusinformationen in einem Sicherungsspeicher erfasst. Dies wird auf einer allgemeineren Ebene von der ConfigurationData-Unterklasse von \"SettingData\" behandelt. Daher wurde diese Methode verworfen. \n\nDie von dieser Methode zurückgegebenen Informationen können zu einem späteren Zeitpunkt (mithilfe der RestoreProperties-Methode) verwendet werden, um ein Gerät in seinen aktuellen \"Zustand\" zurückzuversetzen. Die Methode wird möglicherweise nicht von allen Geräten unterstützt. Die Methode soll bei Erfolg \"0\" zurückgeben, \"1\", wenn die Anforderung nicht unterstützt wird, und einen anderen Wert, wenn ein anderer Fehler aufgetreten ist. In einer Unterklasse kann die Menge möglicher Rückgabecodes angegeben werden; dazu wird ein ValueMap-Kennzeichner für die Methode verwendet. Die Zeichenfolgen, in die die Inhalte von \"ValueMap\" übersetzt werden, können ebenfalls in der Unterklasse in Form eines Values-Arraykennzeichners angegeben werden.") : Amended ToSubclass] uint32 SaveProperties(); [Description("Fordert an, dass das Gerät seine Konfigurations-, Einrichtungs- und/oder Statusinformationen aus einem Sicherungsspeicher wiederherstellt. Dies wird auf einer allgemeineren Ebene von der ConfigurationData-Unterklasse \"SettingData\" behandelt. Daher wurde diese Methode verworfen. \n\nDie Informationen wurden zu einem früheren Zeitpunkt erfasst (mithilfe der SaveProperties-Methode). Die Methode wird möglicherweise nicht von allen Geräten unterstützt. Die Methode soll bei Erfolg \"0\" zurückgeben, \"1\", wenn die Anforderung nicht unterstützt wird, und einen anderen Wert, wenn ein anderer Fehler aufgetreten ist. In einer Unterklasse kann die Menge möglicher Rückgabecodes angegeben werden; dazu wird ein ValueMap-Kennzeichner für die Methode verwendet. Die Zeichenfolgen, in die die Inhalte von \"ValueMap\" übersetzt werden, können ebenfalls in der Unterklasse in Form eines Values-Arraykennzeichners angegeben werden.") : Amended ToSubclass] uint32 RestoreProperties(); }; [Description("Ein Sensor ist ein Hardwaregerät, das imstande ist, die Merkmale einer physischen Eigenschaft zu messen - z.B. die Temperatur- oder Spannungsmerkmale eines UnitaryComputer-Systems.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_Sensor : CIM_LogicalDevice { [Description("Der Typ des Sensors, z.B. Spannungs- oder Temperatursensor. Wenn der Typ auf \"Andere\" festgelegt ist, kann die OtherSensorType-Beschreibung zur weiteren Identifikation des Typs verwendet werden. Hat der Sensor Zahlenwerte, kann der Typ des Sensors implizit durch die verwendeten Einheiten bestimmt werden. Im Folgenden werden die verschiedenen Sensortypen beschrieben: Ein Temperatursensor misst die Umgebungstemperatur. Spannungs- und Stromsensoren messen die Werte für elektrische Spannung und elektrischen Strom. Ein Tachometer misst die Geschwindigkeit/Drehzahl eines Geräts. Beispielsweise kann einem Lüftergerät ein Tachometer zugeordnet sein, der dessen Drehzahl misst. Ein Zähler ist ein Allzwecksensor, der eine numerische Eigenschaft eines Geräts misst. Der Wert eines Zählers kann gelöscht werden, wird ansonsten aber nie verringert. Ein Schaltersensor hat Statuswerte wie Offen/Geschlossen, Ein/Aus oder Auf/Ab. Eine Sperre hat die Statuswerte Gesperrt/Sperrung aufgehoben. Feuchtigkeits-, Rauchmelder- und Luftströmungssensoren messen die entsprechenden Umgebungsmerkmale. Ein Anwesenheitssensor entdeckt die Anwesenheit eines PhysicalElement-Objekts.") : Amended ToSubclass,Values{"Unbekannt", "Andere", "Temperatur", "Spannung", "Aktuelle:", "Tachometer", "Zähler", "Schalter", "Sperre", "Feuchtigkeit", "Rauchmelder", "Anwesenheit", "Luftströmung"} : Amended ToSubclass] uint16 SensorType; [Description("Eine Zeichenfolge, die den Sensortyp beschreibt - wird verwendet, wenn die SensorType-Eigenschaft auf \"Andere\" festgelegt ist.") : Amended ToSubclass] string OtherSensorTypeDescription; [Description("\"PossibleStates\" zählt die Zeichenfolgenausgaben des Sensors auf. Beispielsweise kann ein \"Schalter\"-Sensor die Statuswerte \"Ein\" oder \"Aus\" ausgeben. Eine andere Implementierung des Schalters kann die Statuswerte \"Offen\" und \"Geschlossen\" ausgeben. Ein weiteres Beispiel ist ein NumericSensor-Objekt, das Schwellenwerte unterstützt. Dieser Sensor kann Statuswerte wie \"Normal\", \"Oberer kritischer Grenzwert\", \"Unterer nicht kritischer Grenzwert\" usw. melden. Ein NumericSensor-Objekt, das Mess- und Schwellenwerte nicht veröffentlicht, diese Daten jedoch intern speichert, kann trotzdem seine Statuswerte melden.") : Amended ToSubclass] string PossibleStates[]; [Description("Der aktuell vom Sensor angezeigte Status. Dies ist immer einer der Werte von \"PossibleStates\".") : Amended ToSubclass] string CurrentState; [Description("Das Abfrageintervall, das die Sensorhardware oder die Instrumentierung verwendet, um den aktuellen Status des Sensors zu ermitteln.") : Amended ToSubclass] uint64 PollingInterval; }; [Description("Ein numerischer Sensor kann Zahlenwerte zurückgeben und unterstützt optional Einstellungen für Schwellenwerte.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_NumericSensor : CIM_Sensor { [Description("Die Basiseinheit der von diesem Sensor zurückgegebenen Werte. Alle von diesem Sensor zurückgegebenen Werte werden in den Einheiten dargestellt, die sich wie folgt ergeben: (\"BaseUnits\" * 10 zur Potenz von \"UnitModifier\"). Wenn beispielsweise \"BaseUnits\" Volt ist und der \"UnitModifier\" den Wert -6 hat, dann ist die Einheit der zurückgegebenen Werte Mikrovolt. Wenn jedoch die RateUnits-Eigenschaft auf einen anderen Wert als \"Keine\" festgelegt ist, sind die Einheiten zusätzlich als bezogene Einheiten qualifiziert. Wenn im Beispiel oben \"RateUnits\" auf \"Pro Sekunde\" festgelegt ist, sind die vom Sensor zurückgegebenen Werte in Mikrovolt/Sekunde. Die Einheiten beziehen sich auf alle numerischen Eigenschaften des Sensors, sofern sie nicht explizit vom Units-Bezeichner außer Kraft gesetzt werden.") : Amended ToSubclass,Values{"Unbekannt", "Andere", "Grad C", "Grad F", "Grad K", "Volt", "Ampere", "Watt", "Joule", "Coulomb", "VA", "Nits", "Lumen", "Lux", "Candela", "kPa", "PSI", "Newton", "CFM", "RPM", "Hertz", "Sekunden", "Minuten", "Stunden", "Tage", "Wochen", "Mils", "Zoll", "Fuß", "Kubikzoll", "Kubikfuß", "Meter", "Kubikzentimeter", "Kubikmeter", "Liter", "Flüssigunzen", "Bogenmaß", "Steradiant", "Umdrehungen", "Zyklen", "g", "Unzen", "Pfund (amerik.)", "Fußpfund", "Unzenzoll", "Gauss", "Gilbert", "Henry", "Farad", "Ohm", "Siemens", "Mol", "Becquerel", "PPM (Parts/Million)", "Dezibel", "DbA", "DbC", "Gray", "Sievert", "Farbtemperatur Grad K", "Bit", "Bytes", "Wörter (Daten)", "DoubleWords", "QuadWords", "Prozentsatz"} : Amended ToSubclass] uint16 BaseUnits; [Description("Der Einheitenmultiplikator für die von diesem Sensor zurückgegebenen Werte. Alle von diesem Sensor zurückgegebenen Werte werden in den Einheiten dargestellt, die sich wie folgt ergeben: (\"BaseUnits\" * 10 zur Potenz von \"UnitModifier\"). Wenn beispielsweise \"BaseUnits\" Volt ist und der \"UnitModifier\" den Wert -6 hat, dann ist die Einheit der zurückgegebenen Werte Mikrovolt. Wenn jedoch die RateUnits-Eigenschaft auf einen anderen Wert als \"Keine\" festgelegt ist, sind die Einheiten zusätzlich als bezogene Einheiten qualifiziert. Wenn im Beispiel oben \"RateUnits\" auf \"Pro Sekunde\" festgelegt ist, sind die vom Sensor zurückgegebenen Werte in Mikrovolt/Sekunde. Die Einheiten beziehen sich auf alle numerischen Eigenschaften des Sensors, sofern sie nicht explizit vom Units-Bezeichner außer Kraft gesetzt werden.") : Amended ToSubclass] sint32 UnitModifier; [Description("Gibt an, ob die von diesem Sensor zurückgegebenen Einheiten bezogene Einheiten sind. Alle von diesem Sensor zurückgegebenen Werte werden in den Einheiten dargestellt, die sich wie folgt ergeben: (\"BaseUnits\" * 10 zur Potenz von \"UnitModifier\"). Dies trifft zu, sofern diese Eigenschaft (RateUnits) keinen anderen Wert als \"Keine\" hat. Wenn beispielsweise \"BaseUnits\" Volt ist und der \"UnitModifier\" den Wert -6 hat, ist die Einheit der zurückgegebenen Werte Mikrovolt. Wenn jedoch die RateUnits-Eigenschaft auf einen anderen Wert als \"Keine\" festgelegt ist, sind die Einheiten zusätzlich als bezogene Einheiten qualifiziert. Wenn im Beispiel oben \"RateUnits\" auf \"Pro Sekunde\" festgelegt ist, sind die vom Sensor zurückgegebenen Werte in Mikrovolt/Sekunde. Die Einheiten beziehen sich auf alle numerischen Eigenschaften des Sensors, sofern sie nicht explizit vom Units-Bezeichner außer Kraft gesetzt werden. Jede Implementierung von \"CurrentReading\" sollte entweder mit einem Zähler- (Counter) oder mit einem Maßstabskennzeichner (Gauge) qualifiziert werden, je nach den Merkmalen des modellierten Sensors.") : Amended ToSubclass,Values{"Keine", "Pro Mikrosekunde", "Pro Millisekunde", "Pro Sekunde", "Pro Minute", "Pro Stunde", "Pro Tag", "Pro Woche", "Pro Monat", "Pro Jahr"} : Amended ToSubclass] uint16 RateUnits; [Description("Der aktuell vom Sensor angegebene Wert.") : Amended ToSubclass] sint32 CurrentReading; [Description("\"NominalReading\" zeigt den \"normalen\" oder erwarteten Wert für das NumericSensor-Objekt an.") : Amended ToSubclass] sint32 NominalReading; [Description("\"NormalMax\" bietet Hilfestellung für den Benutzer hinsichtlich des normalen Maximalbereichs für das NumericSensor-Objekt.") : Amended ToSubclass] sint32 NormalMax; [Description("\"NormalMin\" bietet Hilfestellung für den Benutzer hinsichtlich des normalen Minimalbereichs für das NumericSensor-Objekt.") : Amended ToSubclass] sint32 NormalMin; [Description("\"MaxReadable\" zeigt den größten Wert der gemessenen Eigenschaft an, der vom NumericSensor-Objekt erfasst werden kann.") : Amended ToSubclass] sint32 MaxReadable; [Description("\"MinReadable\" zeigt den kleinsten Wert der gemessenen Eigenschaft an, der vom NumericSensor-Objekt erfasst werden kann.") : Amended ToSubclass] sint32 MinReadable; [Description("\"Resolution\" zeigt die Fähigkeit des Sensors an, Unterschiede in der gemessenen Eigenschaft aufzulösen. Die Einheiten für diese Messung werden durch BaseUnit*UnitModifier/RateUnit bestimmt.") : Amended ToSubclass] uint32 Resolution; [Description("Diese Eigenschaft wird zugunsten der Eigenschaften \"Resolution\" und \"Accuracy\" verworfen. \nZeigt die Toleranz des Sensors für die gemessene Eigenschaft an. \"Tolerance\" wird in Kombination mit \"Resolution\" und \"Accuracy\" verwendet, um den tatsächlichen Wert der gemessenen physischen Eigenschaft zu berechnen. \"Tolerance\" kann variieren, je nachdem, ob das Gerät sich über seinen Dynamikbereich linear verhält.") : Amended ToSubclass] sint32 Tolerance; [Description("Zeigt die Genauigkeit des Sensors für die gemessene Eigenschaft an. Ihr Wert wird als Plus/Minus hundertstel Prozent aufgezeichnet. \"Accuracy\" wird in Kombination mit \"Resolution\" verwendet, um den tatsächlichen Wert der gemessenen physischen Eigenschaft zu berechnen. \"Accuracy\" kann variieren, je nachdem, ob das Gerät sich über seinen Dynamikbereich linear verhält.") : Amended ToSubclass] sint32 Accuracy; [Description("Zeigt an, dass der Sensor in seinem Dynamikbereich linear arbeitet.") : Amended ToSubclass] boolean IsLinear; [Description("Zeigt den um die Schwellenwerte vorgesehenen Randbereich an. Dieser Randbereich verhindert unnötige Statuswechsel, wenn die Sensormesswerte sehr nahe an den Schwellenwerten fluktuieren. Die Ursache kann in der Toleranz/Genauigkeit/Auflösung des Sensors oder in Umgebungsfaktoren liegen. Sobald ein Schwellenwert überschritten wird, soll sich der Status des Sensors ändern. Der Status soll jedoch nicht zwischen dem alten und dem neuen Status fluktuieren, sofern die Änderung im Messwert des Sensors nicht den Hysteresewert übersteigt. Die Einheiten für diese Messung werden durch BaseUnit*UnitModifier/RateUnit bestimmt.") : Amended ToSubclass] uint32 Hysteresis; [Description("Die Schwellenwerte des Sensors geben die Bereiche (kleinste und größte Werte) an, mit denen bestimmt wird, ob der Sensor unter normalen, nicht kritischen, kritischen oder schwerwiegenden Bedingungen arbeitet. Wenn sich \"CurrentReading\" zwischen \"LowerThresholdNonCritical\" und \"UpperThresholdNonCritical\" befindet, meldet der Sensor einen normalen Wert. Wenn \"CurrentReading\" zwischen \"LowerThresholdNonCritical\" und \"LowerThresholdCritical\" liegt, ist \"CurrentState\" für den Sensor gleich \"NonCritical\".") : Amended ToSubclass] sint32 LowerThresholdNonCritical; [Description("Die Schwellenwerte des Sensors geben die Bereiche (kleinste und größte Werte) an, mit denen bestimmt wird, ob der Sensor unter normalen, nicht kritischen, kritischen oder schwerwiegenden Bedingungen arbeitet. Wenn sich \"CurrentReading\" zwischen \"LowerThresholdNonCritical\" und \"UpperThresholdNonCritical\" befindet, meldet der Sensor einen normalen Wert. Wenn \"CurrentReading\" zwischen \"UpperThresholdNonCritical\" und \"UpperThresholdCritical\" liegt, ist \"CurrentState\" für den Sensor gleich \"NonCritical\".") : Amended ToSubclass] sint32 UpperThresholdNonCritical; [Description("Die Schwellenwerte des Sensors geben die Bereiche (kleinste und größte Werte) an, mit denen bestimmt wird, ob der Sensor unter normalen, nicht kritischen, kritischen oder schwerwiegenden Bedingungen arbeitet. Wenn \"CurrentReading\" zwischen \"LowerThresholdCritical\" und \"LowerThresholdFatal\" liegt, ist \"CurrentState\" für den Sensor gleich \"Critical\".") : Amended ToSubclass] sint32 LowerThresholdCritical; [Description("Die Schwellenwerte des Sensors geben die Bereiche (kleinste und größte Werte) an, mit denen bestimmt wird, ob der Sensor unter normalen, nicht kritischen, kritischen oder schwerwiegenden Bedingungen arbeitet. Wenn \"CurrentReading\" zwischen \"UpperThresholdCritical\" und \"UpperThresholdFatal\" liegt, ist \"CurrentState\" für den Sensor gleich \"Critical\".") : Amended ToSubclass] sint32 UpperThresholdCritical; [Description("Die Schwellenwerte des Sensors geben die Bereiche (kleinste und größte Werte) an, mit denen bestimmt wird, ob der Sensor unter normalen, nicht kritischen, kritischen oder schwerwiegenden Bedingungen arbeitet. Wenn \"CurrentReading\" unterhalb von \"LowerThresholdFatal\" liegt, ist \"CurrentState\" für den Sensor gleich \"Fatal\".") : Amended ToSubclass] sint32 LowerThresholdFatal; [Description("Die Schwellenwerte des Sensors geben die Bereiche (kleinste und größte Werte) an, mit denen bestimmt wird, ob der Sensor unter normalen, nicht kritischen, kritischen oder schwerwiegenden Bedingungen arbeitet. Wenn \"CurrentReading\" oberhalb von \"UpperThresholdFatal\" liegt, ist \"CurrentState\" für den Sensor gleich \"Fatal\".") : Amended ToSubclass] sint32 UpperThresholdFatal; [Description("Ein Array, das die von diesem Sensor unterstützten Schwellenwerte darstellt.") : Amended ToSubclass,Values{"LowerThresholdNonCritical", "UpperThresholdNonCritical", "LowerThresholdCritical", "UpperThresholdCritical", "LowerThresholdFatal", "UpperThresholdFatal"} : Amended ToSubclass] uint16 SupportedThresholds[]; [Description("Ein Array, das die Schwellenwerte darstellt, die aktuell für diesen Sensor aktiviert sind.") : Amended ToSubclass,Values{"LowerThresholdNonCritical", "UpperThresholdNonCritical", "LowerThresholdCritical", "UpperThresholdCritical", "LowerThresholdFatal", "UpperThresholdFatal"} : Amended ToSubclass] uint16 EnabledThresholds[]; [Description("Ein Array, das die schreibbaren Schwellenwerte enthält, die von diesem Sensor unterstützt werden.") : Amended ToSubclass,Values{"LowerThresholdNonCritical", "UpperThresholdNonCritical", "LowerThresholdCritical", "UpperThresholdCritical", "LowerThresholdFatal", "UpperThresholdFatal"} : Amended ToSubclass] uint16 SettableThresholds[]; [Description("Diese Methode setzt die Schwellenwerte auf die Hardwarestandardwerte zurück. Die Methode gibt bei Erfolg \"0\" zurück, \"1\", wenn sie nicht unterstützt wird, und einen anderen Wert, wenn ein Fehler aufgetreten ist. In einer Unterklasse kann die Menge möglicher Rückgabecodes angegeben werden; dazu wird ein ValueMap-Kennzeichner für die Methode verwendet. Die Zeichenfolgen, in die die Inhalte von \"ValueMap\" übersetzt werden, können ebenfalls in der Unterklasse in Form eines Values-Arraykennzeichners angegeben werden.") : Amended ToSubclass] uint32 RestoreDefaultThresholds(); [Description("Die Verwendung dieser Methode wird verworfen, da der aktuelle Sensorwert über die Operation \"GetInstance\" abgerufen werden kann. \nBei nicht linearen Sensoren variieren Auflösung, Genauigkeit, Toleranz und Hysterese mit der Veränderung des aktuellen Messwerts. Diese Methode kann verwendet werden, um diese Faktoren für einen gegebenen Messwert abzurufen. Sie gibt bei Erfolg \"0\" zurück, \"1\", wenn sie nicht unterstützt wird, und einen anderen Wert, wenn ein Fehler aufgetreten ist. In einer Unterklasse kann die Menge möglicher Rückgabecodes angegeben werden; dazu wird ein ValueMap-Kennzeichner für die Methode verwendet. Die Zeichenfolgen, in die die Inhalte von \"ValueMap\" übersetzt werden, können ebenfalls in der Unterklasse in Form eines Values-Arraykennzeichners angegeben werden.") : Amended ToSubclass] uint32 GetNonLinearFactors([IN,Description("Der Sensormesswert, zu dem Informationen abgerufen werden sollen.") : Amended ToSubclass] sint32 SensorReading,[IN(FALSE),OUT,Description("Die Genauigkeit der Messung.") : Amended ToSubclass] sint32 Accuracy,[IN(FALSE),OUT,Description("Die Auflösung der Messung.") : Amended ToSubclass] uint32 Resolution,[IN(FALSE),OUT,Description("Die Toleranz der Messung.") : Amended ToSubclass] sint32 Tolerance,[IN(FALSE),OUT,Description("Die Hysterese der Messung.") : Amended ToSubclass] uint32 Hysteresis); }; [Description("\"Log\" stellt einen beliebigen Typ von Register oder Chronik für Ereignisse, Fehler oder Informationen dar. Das Objekt beschreibt das Vorhandensein des Protokolls sowie dessen Merkmale. \"Log\" schreibt die Form der dargestellten Daten oder die Art und Weise, wie Datensätze/Meldungen im Protokoll erfasst werden, ebenso wenig vor wie die Art des Zugriffs. Die entsprechenden Methoden und das entsprechende Verhalten sind in Unterklassen definiert.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_Log : CIM_EnabledLogicalElement { [Description("Die maximale Anzahl Datensätze, die im Protokoll erfasst werden können. Wenn keine Definition vorhanden ist, soll der Wert \"0\" angegeben werden.") : Amended ToSubclass] uint64 MaxNumberOfRecords; [Description("Aktuelle Anzahl der Datensätze im Protokoll.") : Amended ToSubclass] uint64 CurrentNumberOfRecords; [Description("Fordert an, dass alle Einträge aus dem Protokoll gelöscht werden. \nDer Rückgabewert soll \"0\" sein, wenn die Anforderung erfolgreich ausgeführt wurde, \"1\", wenn die Anforderung nicht unterstützt wird, und ein anderer Wert (entsprechend den Kennzeichnern \"ValueMap\" und \"Value\"), wenn ein Fehler aufgetreten ist.") : Amended ToSubclass,Values{"Abgeschlossen ohne Fehler", "Nicht unterstützt", "Nicht angegebener Fehler", "Zeitüberschreitung", "Fehler", "Ungültiger Parameter", "DMTF_Reserved", "Method_Reserved", "Vendor_Reserved"} : Amended ToSubclass] uint32 ClearLog(); }; [Description("Das LogRecord-Objekt kann das Definitionsformat für Einträge in einem Meldungsprotokoll (MessageLog) beschreiben, oder es kann verwendet werden, um die tatsächlichen Datensätze im Protokoll zu instanziieren. Das zweite Vorgehen bietet sehr viel mehr Kontrolle über die semantische Definition und Verwaltung der einzelnen Einträge in einem Meldungsprotokoll, als sie von den Methoden zur Datensatzbearbeitung der Log-Klasse bereitgestellt werden. Es wird empfohlen, die Daten in einzelnen Protokolleinträgen mithilfe von Unterklassen von \"LogRecord\" zu modellieren, um die Erstellung von Protokolldatensätzen (LogRecord-Objekten) mit einer Eigenschaft (wie etwa \"RecordData\") ohne Semantik zu vermeiden. \nDefinitionsformate für LogRecord-Datensätze können durch Definieren einer Benennungskonvention für die Schlüsseleigenschaften \"RecordID\" und \"MessageTimestamp\" angegeben werden.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_LogRecord : CIM_ManagedElement { [Key,Description("Die CreationClassName-Eigenschaft des bereichsdefinierenden Protokolls.") : Amended ToSubclass] string LogCreationClassName; [Key,Description("Der Name des bereichsdefinierenden Protokolls.") : Amended ToSubclass] string LogName; [Key,Description("\"CreationClassName\" zeigt den Namen der für die Erstellung einer Instanz verwendeten Klasse oder Unterklasse an. In Kombination mit den anderen Schlüsseleigenschaften dieser Klasse ermöglicht diese Eigenschaft die eindeutige Identifizierung aller Instanzen dieser Klasse und ihrer Unterklassen.") : Amended ToSubclass] string CreationClassName; [Key,Description("\"RecordID\" dient mit der MessageTimestamp-Eigenschaft dazu, den LogRecord-Datensatz in einem MessageLog-Objekt eindeutig zu identifizieren. Beachten Sie, dass sich diese Eigenschaft von den RecordNumber-Parametern der MessageLog-Methoden unterscheidet. Die zuletzt genannten stellen lediglich Ordinalwerte dar, die beim schrittweisen Durchlaufen eines Protokolls nützlich sind. \"RecordID\" ist dagegen eine echte Kennung für eine Instanz von \"LogRecord\". Sie kann auf die Ordinalposition des Datensatzes festgelegt werden, dies ist jedoch nicht erforderlich.") : Amended ToSubclass] string RecordID; [Key,Description("Die Schlüsselstruktur eines LogRecord-Objekts umfasst einen Zeitstempel für den Eintrag.") : Amended ToSubclass] datetime MessageTimestamp; [Description("Eine formfreie Zeichenfolge, die die Datenstruktur des LogRecord-Objekts beschreibt.") : Amended ToSubclass] string DataFormat; [Description("Eine Zeichenfolge zur Beschreibung der Datenstruktur der in der RecordData-Eigenschaft enthaltenen Informationen. Wenn die RecordFormat-Zeichenfolge ist, soll \"RecordData\" als formfreie Zeichenfolge interpretiert werden. \n\nZum Beschreiben der Datenstruktur von \"RecordData\" soll die RecordFormat-Zeichenfolge wie folgt konstruiert werden: \n- Das erste Zeichen ist ein Trennzeichen und wird verwendet, um den Rest der Zeichenfolge in Teilzeichenfolgen zu zerlegen. \n- Jede Teilzeichenfolge ist durch das Trennzeichen getrennt und soll in der Form einer CIM-Eigenschaftsdeklaration (d. h. Datentyp und Eigenschaftsname) vorliegen. Dieser Satz von Deklarationen kann verwendet werden, um die in ähnlicher Weise begrenzte RecordData-Eigenschaft zu interpretieren. \nWird zum Beispiel das Trennzeichen \"*\" verwendet, kann RecordFormat = \"*string ThisDay*uint32 ThisYear*datetime SomeTime\" \nverwendet werden, um Folgendes zu interpretieren: RecordData = \"*Heute ist Freitag*2002*20020807141000.000000-300\".") : Amended ToSubclass] string RecordFormat; [Description("Eine Zeichenfolge mit LogRecord-Daten. \nWenn die entsprechende RecordFormat-Eigenschaft ist oder nicht in Übereinstimmung mit dem empfohlenen Format analysiert werden kann, soll \"RecordData\" als eine formfreie Zeichenfolge interpretiert werden. Wenn die RecordFormat-Eigenschaft analysierbare Formatinformationen enthält (wie im RecordFormatDescription-Kennzeichner empfohlen), soll die RecordData-Zeichenfolge gemäß diesem Format analysiert werden. In diesem Fall soll \"RecordData\" mit dem Trennzeichen beginnen, und dieses Zeichen soll verwendet werden, um Teilzeichenfolgen in der angegebenen Weise zu trennen. Anschließend kann die RecordData-Zeichenfolge vom Datenverbraucher analysiert und mit entsprechenden Typen versehen werden.") : Amended ToSubclass] string RecordData; }; [Description("\"RecordLog\" dient als Aggregationspunkt für LogRecord-Objekte. Diese Klasse entspricht einer Protokollansicht auf höherer Ebene als ihre gleichgeordnete MessageLog-Klasse (die Iteratoren verwendet) und führt eine neue Schlüsselstruktur ein. Der Zugriff auf Datensätze in diesem Protokoll wird durch die Verwendung von standardmäßigen CIM-Operationen verwirklicht, die als Bestandteil von WBEM definiert sind.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_RecordLog : CIM_Log { [Key,Description("Innerhalb des Bereichs des instanziierenden Namespaces identifiziert \"InstanceID\" verdeckt und eindeutig eine Instanz dieser Klasse. Damit Eindeutigkeit innerhalb des Namespaces sichergestellt werden kann, sollte der Wert von \"InstanceID\" mithilfe des folgenden bevorzugten Algorithmus konstruiert werden: \n: \nWobei und durch einen Doppelpunkt (:) getrennt sind und einen urheberrechtlich oder markenrechtlich geschützten oder in anderer Weise eindeutigen Namen enthalten muss, der sich im Besitz des Unternehmens befindet, das \"InstanceID\" erstellt/definiert, oder eine registrierte ID darstellen muss, die dem Unternehmen durch eine anerkannte weltweite berechtigende Vergabestelle zugeordnet ist. (Dies ist ähnlich der _-Struktur von Schemaklassennamen.) Ferner darf keinen Doppelpunkt (:) enthalten, damit Eindeutigkeit sichergestellt ist. Bei der Verwendung dieses Algorithmus muss der erste in \"InstanceID\" erscheinende Doppelpunkt zwischen und auftreten. \n wird vom Unternehmen gewählt und darf nicht erneut zum Identifizieren verschiedener zugrundeliegender (der Realität entstammender) Elemente verwendet werden. Wenn der oben angegebene bevorzugte Algorithmus nicht verwendet wird, muss die definierende Entität sicherstellen, dass die resultierende \"InstanceID\" nicht in von diesem oder anderen Anbieter(n) produzierten InstanceID-Werten im Namespace dieser Instanz erneut verwendet wird. \nFür von DMTF definierte Instanzen muss der bevorzugte Algorithmus verwendet werden, wobei auf \"CIM\" festgelegt ist.") : Amended ToSubclass] string InstanceID; }; [Description("In einem RegisteredProfile wird eine Reihe von CIM-Schemaklassen mit erforderlichen Eigenschaften und/oder Methoden beschrieben. Es ist zur interoperablen Verwaltung einer existierenden Entität oder zur Unterstützung eines Nutzungsszenarios erforderlich. RegisteredProfiles werden von der DMTF oder von anderen Normungsorganisationen definiert. Diese Klasse ist nicht mit CIM_Profile zu verwechseln, in dem Instanzen von \"SettingData\" gesammelt werden, die als \"Konfigurationsprofil\" für ein Element angewendet werden. \nEin RegisteredProfile ist ein benannter \"Standard\" für die CIM-basierte Verwaltung eines bestimmten Systems, Teilsystems, eines Dienstes oder einer anderen Entität für bestimmte angegebene Verwendungszwecke. Es handelt sich um eine vollständige, eigenständige Definition, im Gegensatz zur Unterklasse \"RegisteredSubProfile\", die als Kontext ein Bereichsprofil benötigt. \nDie Verwendungszwecke eines RegisteredProfile oder SubProfile MÜSSEN in dem Dokument angegeben werden, in dem das Profil definiert wird. Profile dienen beispielsweise zur Verwaltung verschiedener Aspekte eines Betriebssystems, eines Speicherarrays oder einer Datenbank. Der Name des Profils sowie sein Bereich wird von der verfassenden Organisation definiert.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_RegisteredProfile : CIM_ManagedElement { [Key,Description("Innerhalb des Bereichs des instanziierenden Namespaces identifiziert \"InstanceID\" verdeckt und eindeutig eine Instanz dieser Klasse. Damit Eindeutigkeit innerhalb des Namespaces sichergestellt werden kann, sollte der Wert von \"InstanceID\" mithilfe des folgenden bevorzugten Algorithmus konstruiert werden: \n: \nWobei und durch einen Doppelpunkt (:) getrennt sind und einen urheberrechtlich oder markenrechtlich geschützten oder in anderer Weise eindeutigen Namen enthalten muss, der sich im Besitz des Unternehmens befindet, das \"InstanceID\" erstellt/definiert, oder eine registrierte ID darstellen muss, die dem Unternehmen durch eine anerkannte weltweite berechtigende Vergabestelle zugeordnet ist. (Dies ist ähnlich der _-Struktur von Schemaklassennamen.) Ferner darf keinen Doppelpunkt (:) enthalten, damit Eindeutigkeit sichergestellt ist. Bei der Verwendung dieses Algorithmus muss der erste in \"InstanceID\" erscheinende Doppelpunkt zwischen und auftreten. \n wird vom Unternehmen gewählt und darf nicht erneut zum Identifizieren verschiedener zugrundeliegender (der Realität entstammender) Elemente verwendet werden. Wenn der oben angegebene bevorzugte Algorithmus nicht verwendet wird, muss die definierende Entität sicherstellen, dass die resultierende \"InstanceID\" nicht in von diesem oder anderen Anbieter(n) produzierten InstanceID-Werten im Namespace dieser Instanz erneut verwendet wird. \nFür von DMTF definierte Instanzen muss der bevorzugte Algorithmus verwendet werden, wobei auf \"CIM\" festgelegt ist.") : Amended ToSubclass] string InstanceID; [Description("Die Organisation, die dieses Profil definiert.") : Amended ToSubclass,Values{"Andere", "DMTF", "CompTIA", "Consortium for Service Innovation", "FAST", "GGF", "INTAP", "itSMF", "NAC", "Northwest Energy Efficiency Alliance", "SNIA", "TM-Forum", "The Open Group", "ANSI", "IEEE", "IETF", "INCITS", "ISO", "W3C"} : Amended ToSubclass] uint16 RegisteredOrganization; [Description("Eine formfreie Zeichenfolge mit einer Beschreibung der Organisation, wenn für RegisteredOrganization 1, \"Andere\", angegeben wird.") : Amended ToSubclass] string OtherRegisteredOrganization; [Description("Der Name dieses registrierten Profils. Da von einem RegisteredName mehrere Versionen vorhanden sein können, MUSS das registrierte Profil innerhalb des Bereichs der Organisation durch die Verbindung von RegisteredName, RegisteredOrganization und RegisteredVersion eindeutig identifiziert werden.") : Amended ToSubclass] string RegisteredName; [Description("Die Version dieses Profils. Die Versionszeichenfolge MUSS folgende Form haben: \nM + \".\" + N + \".\" + U \nHierbei gilt Folgendes: \nM - Die Hauptversion (in numerischer Form), die die Erstellung oder letzte Änderung des Profils beschreibt. \nN - Die Nebenversion (in numerischer Form), die die Erstellung oder letzte Änderung des Profils beschreibt. \nU - Das Update (z.B. Errata, Patch usw. in numerischer Form), das die Erstellung oder letzte Änderung des Profils beschreibt.") : Amended ToSubclass] string RegisteredVersion; [Description("Diese Eigenschaft bestimmt die Ankündigung der Profilinformationen. Sie wird von den Ankündigungsdiensten der WBEM-Infrastruktur verwendet, um zu ermitteln, welche Elemente über welche Mechanismen angekündigt werden sollen. Die Eigenschaft ist ein Array, sodass das Profil über mehrere Mechanismen angekündigt werden KANN. Hinweis: Wenn diese Eigenschaft NULL/nicht initialisiert ist, entspricht dies der Angabe des Werts 2, \"Nicht angekündigt\".") : Amended ToSubclass,Values{"Andere", "Nicht angekündigt", "SLP"} : Amended ToSubclass] uint16 AdvertiseTypes[]; [Description("Eine formfreie Zeichenfolge mit zusätzlichen Informationen über den AdvertiseType. Eine Beschreibung ist ERFORDERLICH, wenn als AdvertiseType 1, \"Andere\" angegeben wird. Ein Eintrag in diesem Array entspricht dem Eintrag im Array \"AdvertiseTypes\" unter dem gleichen Index. Wenn Type auf \"Nicht angekündigt\" oder \"SLP\" festgelegt ist, ist nicht zu erwarten, dass weitere Beschreibungen erforderlich sind. Wenn jedoch die SLP-Vorlage erweitert wird oder zusätzliche Ankündigungsmechanismen definiert werden, ist möglicherweise die Unterstützung weiterer Beschreibungen notwendig. Hierfür wurde dieses Array definiert.") : Amended ToSubclass] string AdvertiseTypeDescriptions[]; }; [Description("Die Klasse \"Group\" dient dazu, ManagedElements in Gruppen zu sammeln. Diese Klasse bindet definitionsgemäß auch häufig verwendete LDAP-Attribute ein, damit Implementierungen diese Informationen problemlos aus über LDAP zugänglichen Verzeichnissen ableiten können. Die Eigenschaften dieser Klasse sind eine Teilmenge der verwandten Klasse \"OtherGroupInformation\", in der alle Gruppeneigenschaften aus Gründen der Verzeichniskompatibilität in Arrayform definiert sind.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_Group : CIM_Collection { [Key,Description("\"CreationClassName\" zeigt den Namen der für die Erstellung einer Instanz verwendeten Klasse oder Unterklasse an. In Kombination mit den anderen Schlüsseleigenschaften dieser Klasse ermöglicht diese Eigenschaft die eindeutige Identifizierung aller Instanzen dieser Klasse und ihrer Unterklassen.") : Amended ToSubclass] string CreationClassName; [Key,Description("Die Eigenschaft \"Name\" definiert die Bezeichnung, unter der das Objekt bekannt ist. Bei einer von LDAP abgeleiteten Instanz kann als Wert der Eigenschaft \"Name\" der definierte Name der Objektinstanz festgelegt werden, auf die über LDAP zugegriffen wird.") : Amended ToSubclass] string Name; [Description("Mit der Eigenschaft \"BusinessCategory\" kann die Art der geschäftlichen Aktivität beschrieben werden, der die Mitglieder der Gruppe nachgehen.") : Amended ToSubclass] string BusinessCategory; [Description("Ein allgemeiner Name ist ein (möglicherweise nicht eindeutiger) Name, unter dem die Gruppe in einem begrenzten Bereich (z.B. in einer Organisation) allgemein bekannt ist. Er entspricht den Namenskonventionen des Landes oder der Kultur, mit dem er verknüpft ist.") : Amended ToSubclass] string CommonName; }; [Description("CIM_Account bildet die Informationen in einem SecurityService zur Verfolgung der von dem betreffenden Dienst verwalteten Identität und Rechte. Allgemeine Beispiele für \"Account\" sind die Einträge in einer /etc/passwd-Datei unter UNIX. Verschiedene Sicherheitsdienste nutzen unterschiedliche Informationen aus diesen Einträgen. Das Programm \"/bin/login\" verwendet den Kontonamen (\"root\") und den Kennworthash zur Benutzerauthentifizierung. Der Dateidienst verwendet beispielsweise die Felder \"UserID\" (\"0\") und \"GroupID\" (\"0\"), um den Besitz aufzuzeichnen und die Zugriffssteuerungsrechte für Dateien im Dateisystem zu ermitteln. Diese Klasse bindet definitionsgemäß auch häufig verwendete LDAP-Attribute ein, damit Implementierungen diese Informationen problemlos aus über LDAP zugänglichen Verzeichnissen ableiten können. \n\nDie Semantik von \"Account\" überschneidet sich mit der der Klasse \"CIM_Identity\". Einige Aspekte von \"Account\", z.B. die spezifische Bindung an ein System, sind sinnvoll und weit verbreitet. Aus diesem Grund werden die Klassen \"Account\" und \"Identity\" mit einer Unterklasse von \"LogicalIdentity\" (\"AccountIdentity\") verknüpft, anstatt die Klasse \"Account\" im CIM-Schema zu verwerfen. Nach der Authentifizierung eines Kontos wird der boolesche TrustEstablished-Wert der entsprechenden Identity auf TRUE festgelegt. Anschließend kann die Klasse \"Identity\" wie definiert zu Autorisierungszwecken verwendet werden.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_Account : CIM_LogicalElement { [Key,Description("CCN des bereichsdefinierenden Systems.") : Amended ToSubclass] string SystemCreationClassName; [Key,Description("Der Name des bereichsdefinierenden Systems.") : Amended ToSubclass] string SystemName; [Key,Description("\"CreationClassName\" zeigt den Namen der für die Erstellung einer Instanz verwendeten Klasse oder Unterklasse an. In Kombination mit den anderen Schlüsseleigenschaften dieser Klasse ermöglicht diese Eigenschaft die eindeutige Identifizierung aller Instanzen dieser Klasse und ihrer Unterklassen.") : Amended ToSubclass] string CreationClassName; [Key,Description("Die Eigenschaft \"Name\" definiert die Bezeichnung, unter der das Objekt bekannt ist. Der Wert dieser Eigenschaft kann auf denselben Wert festgelegt werden wie die Eigenschaft \"UserID\". Bei einer von LDAP abgeleiteten Instanz kann als Wert der Eigenschaft \"Name\" der definierte Name der Objektinstanz festgelegt werden, auf die über LDAP zugegriffen wird.") : Amended ToSubclass] string Name; [Description("UserID ist der Wert, mit dem der SecurityService die Identität darstellt. Bei einem Authentifizierungsdienst kann die UserID der Name des Benutzers sein, bei einem Autorisierungsdienst der Wert, der als Handle für eine Zuordnung der Identität verwendet wird.") : Amended ToSubclass] string UserID; [Description("Bei einer von LDAP abgeleiteten Instanz können die Werte der Eigenschaft \"ObjectClass\" auf die objectClass-Attributwerte festgelegt werden.") : Amended ToSubclass] string ObjectClass[]; [Description("Die Werte der Eigenschaft \"Descriptions\" können lesbare Beschreibungen des Objekts enthalten. Bei einer von LDAP abgeleiteten Instanz kann das Beschreibungsattribut mehrere Werte aufweisen, die daher nicht in der geerbten Eigenschaft \"Description\" platziert werden können.") : Amended ToSubclass] string Descriptions[]; [Description("Gemäß RFC1274 der Hostname der Systeme, für die das Konto gilt. Der Hostname kann ein vollqualifizierter DNS-Name oder ein nicht qualifizierter Hostname sein.") : Amended ToSubclass] string Host[]; [Description("Diese Eigenschaft enthält den Namen eines Orts, z.B. einer Stadt, eines Landkreises oder einer anderen geografischen Region.") : Amended ToSubclass] string LocalityName[]; [Description("Der Name der Organisation, die zu dem Konto gehört.") : Amended ToSubclass] string OrganizationName[]; [Description("Der Name einer Organisationseinheit, die zu dem Konto gehört.") : Amended ToSubclass] string OU[]; [Description("Bei einer von LDAP abgeleiteten Instanz gibt die Eigenschaft \"SeeAlso\" den definierten Namen anderer Verzeichnisobjekte an, die in gewisser Weise andere Aspekte desselben physischen Objekts sein können.") : Amended ToSubclass] string SeeAlso[]; [Description("Die Eigenschaft \"UserCertificate\" basiert auf inetOrgPerson und bietet Verzeichniskompatibilität. Sie dient zur Angabe eines Zertifikats mit einem öffentlichen Schlüssel für die Person.") : Amended ToSubclass] string UserCertificate[]; [Description("Bei einer von LDAP abgeleiteten Instanz kann die Eigenschaft \"UserPassword\" ein verschlüsseltes Kennwort für den Zugriff auf die Ressourcen des Benutzers in einem Verzeichnis enthalten.") : Amended ToSubclass] string UserPassword[]; }; [Description("\"Privilege\" ist die Basisklasse für alle Aktivitäten, die von einer Rolle oder Identität gewährt oder verweigert werden. Ob ein einzelnes Recht gewährt oder verweigert wird, wird mit dem booleschen PrivilegeGranted-Wert definiert. Rechte, die nicht explizit gewährt werden, gelten als verweigert. Eine explizite Verweigerung (PrivilegeGranted = FALSE) hat Vorrang vor gewährten Rechten. \n\nDie Verknüpfung von Antragstellern (Rollen und Identitäten) mit Rechten erfolgt mithilfe von Richtlinien oder explizit über die Verknüpfungen mit einer Unterklasse. Die geschützten Entitäten (Ziele) können ähnlich definiert werden. \n\nRechte können über hierarchische Rollen vererbt werden oder sich überschneiden. Beispielsweise würde sich ein Recht, das das Schreiben von Instanzen in einem bestimmten CIM-Servernamespace verweigert, mit einem Recht überschneiden, das spezifische Zugriffsrechte auf einer Instanzebene innerhalb dieses Namespace definiert. In diesem Beispiel sind die AuthorizedSubjects entweder Identitäten oder Rollen, und die AuthorizedTargets sind im ersten Fall ein Namespace und im zweiten Fall eine bestimmte Instanz.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_Privilege : CIM_ManagedElement { [Key,Description("Innerhalb des Bereichs des instanziierenden Namespaces identifiziert \"InstanceID\" verdeckt und eindeutig eine Instanz dieser Klasse. Damit Eindeutigkeit innerhalb des Namespaces sichergestellt werden kann, sollte der Wert von \"InstanceID\" mithilfe des folgenden bevorzugten Algorithmus konstruiert werden: \n: \nWobei und durch einen Doppelpunkt (:) getrennt sind und einen urheberrechtlich oder markenrechtlich geschützten oder in anderer Weise eindeutigen Namen enthalten muss, der sich im Besitz des Unternehmens befindet, das \"InstanceID\" erstellt/definiert, oder eine registrierte ID darstellen muss, die dem Unternehmen durch eine anerkannte weltweite berechtigende Vergabestelle zugeordnet ist. (Dies ist ähnlich der _-Struktur von Schemaklassennamen.) Ferner darf keinen Doppelpunkt (:) enthalten, damit Eindeutigkeit sichergestellt ist. Bei der Verwendung dieses Algorithmus muss der erste in \"InstanceID\" erscheinende Doppelpunkt zwischen und auftreten. \n wird vom Unternehmen gewählt und darf nicht erneut zum Identifizieren verschiedener zugrundeliegender (der Realität entstammender) Elemente verwendet werden. Wenn der oben angegebene bevorzugte Algorithmus nicht verwendet wird, muss die definierende Entität sicherstellen, dass die resultierende \"InstanceID\" nicht in von diesem oder anderen Anbieter(n) produzierten InstanceID-Werten im Namespace dieser Instanz erneut verwendet wird. \nFür von DMTF definierte Instanzen muss der bevorzugte Algorithmus verwendet werden, wobei auf \"CIM\" festgelegt ist.") : Amended ToSubclass] string InstanceID; [Description("Boolescher Wert, der angibt, ob das Recht gewährt (TRUE) oder verweigert (FALSE) wird. Standard ist das Gewähren.") : Amended ToSubclass] boolean PrivilegeGranted; [Description("Eine Aufzählung der gewährten oder verweigerten Aktivitäten. Diese Aktivitäten gelten für alle Entitäten, die im Array \"ActivityQualifiers\" angegeben sind. Die Werte in der Aufzählung sind recht selbsterklärend, bis auf einen: 4=\"Erkennen\". Dieser Wert gibt an, dass das Vorhandensein einer Entität zwar festgestellt werden kann, aber nicht unbedingt bestimmte Daten (hierfür muss das Recht \"Read\" true sein). Ein Beispiel für diese Aktivitäten sind verborgene Dateien. Wenn Sie den Inhalt eines Verzeichnisses auflisten, werden verborgene Dateien nicht angezeigt. Wenn Sie jedoch einen bestimmten Dateinamen kennen oder wissen, wie Sie verborgene Dateien anzeigen können, dann können diese Dateien \"erkannt\" werden. Ein anderes Beispiel ist die Fähigkeit zur Definition von Suchrechten in Verzeichnisimplementierungen.") : Amended ToSubclass,Values{"Andere", "Erstellen", "Löschen", "Erkennen", "Lesen", "Schreiben", "Ausführen", "Reserviert für DMTF", "Reserviert für Hersteller"} : Amended ToSubclass] uint16 Activities[]; [Description("Die Eigenschaft \"ActivityQualifiers\" befindet sich in einem Array mit Zeichenfolgenwerten zur weiteren Qualifizierung und Angabe der gewährten oder verweigerten Rechte. Beispielsweise wird sie verwendet, um mehrere Dateien anzugeben, für die Lese-/Schreibzugriff gewährt oder verweigert wird. Oder sie definiert die Methoden einer Klasse, die ausgeführt werden können. Einzelheiten zur Semantik der einzelnen Einträge in \"ActivityQualifiers\" finden Sie im Array \"QualifierFormats\" unter den entsprechenden Einträgen.") : Amended ToSubclass] string ActivityQualifiers[]; [Description("Definiert die Semantik der entsprechenden Einträge im Array \"ActivityQualifiers\". Beispiele für jedes dieser Formate und ihre Verwendung folgen: \n- 2=Klassenname. Beispiele: Wenn es sich beim Autorisierungsziel um einen CIM-Dienst oder einen Namespace handelt, können die Einträge in \"ActivityQualifiers\" eine Liste der Klassen definieren, die der autorisierte Antragsteller erstellen oder löschen kann. \n- 3=Eigenschaft. Beispiel: Wenn es sich beim Autorisierungsziel um einen CIM-Dienst, Namespace oder eine Instanzenauflistung handelt, können die Einträge in \"ActivityQualifiers\" die Klasseneigenschaften definieren, auf die zugegriffen werden kann oder nicht. In diesem Fall werden die Klassennamen mit den Eigenschaftennamen angegeben, um eine Mehrdeutigkeit zu vermeiden, da ein CIM-Dienst, Namespace oder eine Auflistung mehrere Klassen verwalten kann. Andererseits besteht bei einer einzelnen Instanz als Autorisierungsziel keine Möglichkeit einer Mehrdeutigkeit - der Klassenname kann also weggelassen werden. Zur Angabe ALLER Eigenschaften sollte die Platzhalterzeichenfolge \"*\" verwendet werden. \n- 4=Methode. Dieses Beispiel ist dem Beispiel für \"Eigenschaft\" oben äußerst ähnlich. Auch hier können mit der Zeichenfolge \"*\" ALLE Methoden ausgewählt werden. \n- 5=Objektverweis. Beispiel: Wenn es sich beim Autorisierungsziel um einen CIM-Dienst oder einen Namespace handelt, können die Einträge in \"ActivityQualifiers\" eine Liste von Objektverweisen (als Zeichenfolgen) definieren, auf die der autorisierte Antragsteller zugreifen kann. \n- 6=Namespace. Beispiel: Wenn es sich beim Autorisierungsziel um einen CIM-Dienst handelt, können die Einträge in \"ActivityQualifiers\" eine Liste von Namespaces definieren, auf die der autorisierte Antragsteller zugreifen kann. \n- 7=URL. Beispiel: Selbst wenn kein Autorisierungsziel definiert ist, kann über ein Recht der Zugriff auf bestimmte URLs für bestimmte einzelne Identitäten oder spezifische Rollen verweigert werden, z.B. für die Rolle \"unter 17\". \n- 8=Verzeichnis-/Dateiname. Beispiel: Wenn es sich beim Autorisierungsziel um ein Dateisystem handelt, können die Einträge in \"ActivityQualifiers\" eine Liste der Verzeichnisse und Dateien definieren, auf die der Zugriff geschützt ist. \n- 9=Befehlszeilenanweisung. Beispiel: Wenn es sich beim Autorisierungsziel um ein Computersystem oder einen Dienst handelt, können die Einträge in \"ActivityQualifiers\" eine Liste der Befehlszeilenanweisungen definieren, die von den autorisierten Antragstellern ausgeführt werden dürfen oder nicht.") : Amended ToSubclass,Values{"Klassenname", "Eigenschaft", "Methode", "Objektverweis", "Namespace", "URL", "Verzeichnis-/Dateiname", "Befehlszeilenanweisung", "Reserviert für DMTF", "Reserviert für Hersteller"} : Amended ToSubclass] uint16 QualifierFormats[]; }; [Description("\"Privilege\" ist die Basisklasse für alle Aktivitäten, die einer Rolle oder Identität gewährt oder verweigert werden. \"AuthorizedPrivilege\" ist eine Unterklasse, in der statische Darstellungen der Autorisierungsrichtlinienregeln definiert werden. Die Verknüpfung von Rollen und Identitäten mit \"AuthorizedPrivilege\" erfolgt über die AuthorizedSubject-Beziehung. Die geschützten Entitäten werden mithilfe der AuthorizedTarget-Beziehung definiert.\n\nDiese Klasse und ihre Verknüpfungen mit \"AuthorizedSubject\"/\"AuthorizedTarget\" bieten einen schnellen, statischen Mechanismus zur Darstellung von Autorisierungsrichtlinien.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_AuthorizedPrivilege : CIM_Privilege { }; [Description("Eine konkrete Version von \"Collection\". Diese Klasse stellt eine generische, instanziierbare Auflistung dar, z.B. eine Gruppe von Computersystemen (beispielsweise ein Pool von Hosts, die zum Ausführen von Aufträgen verfügbar sind). Sie ist als konkrete Unterklasse der abstrakten Klasse \"CIM_Collection\" definiert und ist anstelle zahlreicher spezifischer Unterklassen zu verwenden, die die Semantik nicht erweitern. Beim Definieren zusätzlicher Semantik für \"Collection\" DARF sich diese Klasse nicht in einer Unterklasse befinden. Spezifische Semantik wird auch weiterhin in Unterklassen der abstrakten Klasse \"CIM_Collection\" definiert. \"ConcreteCollection\" ist in ihrer Verwendung als konkrete Form einer allgemeinen Auflistung (eines Behälters) eingeschränkt. Es wurde für sinnvoller erachtet, diese konkrete Unterklasse zu erstellen, als \"Collection\" von einer abstrakten in eine konkrete Klasse zu ändern.") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class CIM_ConcreteCollection : CIM_Collection { [Key,Description("Innerhalb des Bereichs des instanziierenden Namespaces identifiziert \"InstanceID\" verdeckt und eindeutig eine Instanz dieser Klasse. Damit Eindeutigkeit innerhalb des Namespaces sichergestellt werden kann, sollte der Wert von \"InstanceID\" mithilfe des folgenden bevorzugten Algorithmus konstruiert werden: \n: \nWobei und durch einen Doppelpunkt (:) getrennt sind und einen urheberrechtlich oder markenrechtlich geschützten oder in anderer Weise eindeutigen Namen enthalten muss, der sich im Besitz des Unternehmens befindet, das \"InstanceID\" erstellt/definiert, oder eine registrierte ID darstellen muss, die dem Unternehmen durch eine anerkannte weltweite berechtigende Vergabestelle zugeordnet ist. (Dies ist ähnlich der _-Struktur von Schemaklassennamen.) Ferner darf keinen Doppelpunkt (:) enthalten, damit Eindeutigkeit sichergestellt ist. Bei der Verwendung dieses Algorithmus muss der erste in \"InstanceID\" erscheinende Doppelpunkt zwischen und auftreten. \n\n wird vom Unternehmen gewählt und darf nicht erneut zum Identifizieren verschiedener zugrundeliegender (der Realität entstammender) Elemente verwendet werden. Wenn der oben angegebene bevorzugte Algorithmus nicht verwendet wird, muss die definierende Entität sicherstellen, dass die resultierende \"InstanceID\" nicht in von diesem oder anderen Anbieter(n) produzierten InstanceID-Werten im Namespace dieser Instanz erneut verwendet wird.") : Amended ToSubclass] string InstanceID; }; [Description("AdminDomain für IPMI") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class AdminDomain : CIM_AdminDomain { }; [Description("ComputerSystem für IPMI") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class ComputerSystem : CIM_ComputerSystem { }; [Description("SystemSpecificCollection für IPMI") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class SystemSpecificCollection : CIM_SystemSpecificCollection { }; [Description("Sensor (diskreter Sensor) für IPMI") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class Sensor : CIM_Sensor { }; [Description("NumericSensor für IPMI") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class NumericSensor : CIM_NumericSensor { }; [Description("RecordLog für IPMI") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class RecordLog : CIM_RecordLog { }; [Description("LogRecord für IPMI") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class LogRecord : CIM_LogRecord { }; [Description("RegisteredProfile für IPMI") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class RegisteredProfile : CIM_RegisteredProfile { }; [Description("PrivilegeGroup für IPMI") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class PrivilegeGroup : CIM_Group { }; [Description("Account für IPMI") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class Account : CIM_Account { }; [Description("AuthorizedPrivilege für IPMI") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class AuthorizedPrivilege : CIM_AuthorizedPrivilege { }; [Description("ConcreteCollection für IPMI") : Amended ToSubclass,AMENDMENT, LOCALE(0x0407)] class ConcreteCollection : CIM_ConcreteCollection { };