(file) Return to User_PrivilegeManagementService.mof CVS log (file) (dir) Up to [Pegasus] / pegasus / Schemas / CIMPrelim29

  1 karl  1.1 // ===================================================================
  2           // Title:       User-Security Privilege Management Service
  3           // $State: Preliminary $
  4           // $Date: 2004/06/25 17:56:15 $
  5           // $Source: /home/dmtf2/dotorg/var/cvs/repositories/dev/Schema/MOF/User_PrivilegeManagementService.mof,v $
  6           // $Revision: 1.2 $
  7           // ===================================================================
  8           //#pragma inLine ("Includes/copyright.inc")
  9           // Copyright 2003-2004 Distributed Management Task Force, Inc. (DMTF).
 10           // All rights reserved.
 11           // DMTF is a not-for-profit association of industry members dedicated
 12           // to promoting enterprise and systems management and interoperability.
 13           // DMTF specifications and documents may be reproduced for uses
 14           // consistent with this purpose by members and non-members,
 15           // provided that correct attribution is given.
 16           // As DMTF specifications may be revised from time to time,
 17           // the particular version and release date should always be noted.
 18           // 
 19           // Implementation of certain elements of this standard or proposed
 20           // standard may be subject to third party patent rights, including
 21           // provisional patent rights (herein "patent rights"). DMTF makes
 22 karl  1.1 // no representations to users of the standard as to the existence
 23           // of such rights, and is not responsible to recognize, disclose, or
 24           // identify any or all such third party patent right, owners or
 25           // claimants, nor for any incomplete or inaccurate identification or
 26           // disclosure of such rights, owners or claimants. DMTF shall have no
 27           // liability to any party, in any manner or circumstance, under any
 28           // legal theory whatsoever, for failure to recognize, disclose, or
 29           // identify any such third party patent rights, or for such party's
 30           // reliance on the standard or incorporation thereof in its product,
 31           // protocols or testing procedures. DMTF shall have no liability to
 32           // any party implementing such standard, whether such implementation
 33           // is foreseeable or not, nor to any patent owner or claimant, and shall
 34           // have no liability or responsibility for costs or losses incurred if
 35           // a standard is withdrawn or modified after publication, and shall be
 36           // indemnified and held harmless by any party implementing the
 37           // standard from any and all claims of infringement by a patent owner
 38           // for such implementations.
 39           // 
 40           // For information about patents held by third-parties which have
 41           // notified the DMTF that, in their opinion, such patent may relate to
 42           // or impact implementations of DMTF standards, visit
 43 karl  1.1 // http://www.dmtf.org/about/policies/disclosures.php.
 44           //#pragma inLine
 45           // ===================================================================
 46           // Description: The User Model extends the management concepts that
 47           //              are related to users and security.
 48           //              This file defines the concepts and classes related to
 49           //              hardware World Wide Names used as credentials
 50           //              for accessing Storage services and credentials.
 51           // 
 52           //              The object classes below are listed in an order that
 53           //              avoids forward references. Required objects, defined
 54           //              by other working groups, are omitted.
 55           // ===================================================================
 56           // Change Log for v2.9 Preliminary
 57           //  CR1342 - Add PrivilegeManagementService.ChangeAccess
 58           //           Add PrivilegeManagementService.ShowAccess
 59           // 
 60           // Change Log for v2.8 Final
 61           //  CR1186 - Modified AssignAccess to be atomic, clarified Description,
 62           //           and used AuthorizedPrivilege as an input template
 63           //  CR1221 - Promoted PrivilegeManagementService to Final
 64 karl  1.1 //  CR1229 - Removed ArrayType from properties that are not arrays
 65           //  CR1235 - Corrected copyright, changed RemoveAccess's return value
 66           //           from "Unknown" to "Unspecified Error", and corrected
 67           //           ValueMap/Values entries for the enumerated parameters of
 68           //           AssignAccess / Clarified that methods apply to Authorized
 69           //           Privilege and not the Privilege superclass
 70           // 
 71           // Change Log for v2.8 Preliminary (Company Review)
 72           //  CR1102 - Fixed PrivilegeManagementService for application to
 73           //           Storage LUN Masking.
 74           // 
 75           // Change Log for v2.8  Preliminary -
 76           //  CR1017 - Created this file
 77           // ===================================================================
 78           
 79           #pragma Locale ("en_US")
 80           
 81           
 82           // ==================================================================
 83           // PrivilegeManagementService
 84           // ==================================================================
 85 karl  1.1    [Version ( "2.8.0" ), Description (
 86                  "The PrivilegeManagementService is responsible for creating, "
 87                  "deleting, and associating AuthorizedPrivilege instances. "
 88                  "References to 'subject' and 'target' define the entities that "
 89                  "are associated with an AuthorizedPrivilege instance via the "
 90                  "relationships, AuthorizedSubject and AuthorizedTarget, "
 91                  "respectively. When created, an AuthorizedPrivilege instance is "
 92                  "related to this (PrivilegeManagement)Service via the "
 93                  "association, ConcreteDependency.")]
 94           class CIM_PrivilegeManagementService : CIM_AuthorizationService {
 95           
 96                 [Description (
 97                     "ChangeAccess updates the specified Subject's rights to the "
 98                     "Target according to the parameters of this call. The method "
 99                     "may be called to update the propagation of Privileges, "
100                     "and/or to define new Privileges for a Subject/Target pair. "
101                     "Because the Subject/Target pair is required in any usage "
102                     "scenario, these parameters are defined as Required. \n"
103                     "\n"
104                     "If an instance of Privilege is created, it is associated to "
105                     "this Service via ConcreteDependency. Further, if the "
106 karl  1.1           "Privilege is an AuthorizedPrivilege, it is linked to the "
107                     "specified Subject and Target via the AuthorizedSubject and "
108                     "AuthorizedTarget associations, respectively."), 
109                  ValueMap { "0", "1", "2", "3", "4", "5", "..", "16000", "16001",
110                     "16002", "16003", "16004", "16005..31999", "32000..65535" }, 
111                  Values { "Success", "Not Supported", "Unknown", "Timeout",
112                     "Failed", "Invalid Parameter", "DMTF Reserved",
113                     "Unsupported Subject", "Unsupported Privilege",
114                     "Unsupported Target", "Authorization Error",
115                     "NULL not supported", "Method Reserved", "Vendor Specific" }]
116              uint32 ChangeAccess (
117                 
118                    [Required, IN, Description (
119                        "The Subject parameter is required and references an "
120                        "instance of ManagedElement. The result of this operation "
121                        "is that the Subject SHALL be authorized to access or "
122                        "define the authorization rights for the Target, via one "
123                        "or more instances of the Privilege class - where the "
124                        "Privileges represent the cumulative rights of this "
125                        "Subject. The distinction between the Privileges "
126                        "specified in this method call and the 'cumulative "
127 karl  1.1              "rights' is that the implementation returns all rights "
128                        "that the Subject has in regards to the Target (that the "
129                        "requestor is authorized to review), versus the specific "
130                        "subset that may be specified in this method call. The "
131                        "exception to the above is when there are no remaining "
132                        "rights between the Subject and Target. In that case, the "
133                        "Privilege instance MAY be deleted. \n"
134                        "\n"
135                        "Note that even if the Subject element is a Collection, "
136                        "the operation is only applied to the Collection itself "
137                        "and NOT its members via MemberOfCollection unless an "
138                        "appropriate PolicyPropagationRule is specified. In "
139                        "either case, the output parameters for this method "
140                        "pertain only to the specified Subject/Collection and "
141                        "Target, and do not provide details on the individual "
142                        "members of the Collection. If this information is "
143                        "needed, use the ShowAccess method. \n"
144                        "\n"
145                        "As noted in the method Description, if the resultant "
146                        "Privileges are AuthorizedPrivileges, then "
147                        "AuthorizedSubject associations SHALL be created.")]
148 karl  1.1       CIM_ManagedElement REF Subject,
149                 
150                    [Required, IN, Description (
151                        "The Target parameter is required and references an "
152                        "instance of ManagedElement. The result of this operation "
153                        "is that the Subject SHALL be authorized to access or "
154                        "define the authorization rights for the Target, via one "
155                        "or more instances of the Privilege class - where the "
156                        "Privileges represent the cumulative rights of this "
157                        "Subject. The distinction between the Privileges "
158                        "specified in this method call and the 'cumulative "
159                        "rights' is that the implementation returns all rights "
160                        "that the Subject has in regards to this Target (that the "
161                        "requestor is authorized to review), versus the specific "
162                        "subset that may be specified in this method call. The "
163                        "exception to the above is when there are no remaining "
164                        "rights between the Subject and Target. In that case, the "
165                        "Privilege instance MAY be deleted. \n"
166                        "\n"
167                        "Note that even if the Target element is a Collection, "
168                        "the operation is only applied to the Collection itself "
169 karl  1.1              "and NOT its members via MemberOfCollection unless an "
170                        "appropriate PolicyPropagationRule is specified. In "
171                        "either case, the output parameters for this method "
172                        "pertain only to the specified Subject and "
173                        "Target/Collection, and do not provide details on the "
174                        "individual members of the Collection. If this "
175                        "information is needed, use the ShowAccess method. \n"
176                        "\n"
177                        "As noted in the method Description, if the resultant "
178                        "Privileges are AuthorizedPrivileges, then "
179                        "AuthorizedTarget associations SHALL be created.")]
180                 CIM_ManagedElement REF Target,
181                 
182                    [IN, Description (
183                        "If supplied, PropagationPolicy defines the policy rules "
184                        "that govern how the specified access rights are "
185                        "propagated to instances associated with the named "
186                        "Subject and/or Target. If a policy rule is not supplied, "
187                        "the rights defined in the Privilege are only granted or "
188                        "denied between the named Subject and Target.")]
189                 CIM_PrivilegePropagationRule REF PropagationPolicies[],
190 karl  1.1       
191                    [IN, OUT, Description (
192                        "A set of zero or more instances of CIM_Privilege (or a "
193                        "subclass of Privilege) that are passed 'by value' as "
194                        "embedded objects. An embedded object is used since the "
195                        "Privilege may only define a subset of the total rights "
196                        "that should be assigned or revoked. On input, "
197                        "Privilege.PrivilegeGranted MAY be set to False to "
198                        "indicate that the enclosed rights are denied. On return, "
199                        "the embedded Privilege objects represent the cumulative "
200                        "rights granted between the specified Subject and Target "
201                        "(filtered to return the information that the requestor "
202                        "is authorized to view). If the Privileges array is "
203                        "empty, then there exist NO rights that the requestor is "
204                        "authorized to view between the Subject/Target pair."), 
205                     EmbeddedObject]
206                 string Privileges[]); 
207           
208                 [Description (
209                     "ShowAccess reports the Privileges (i.e., rights) granted to "
210                     "a particular Subject and/or Target pair. Either a Subject, "
211 karl  1.1           "a Target or both MUST be specified. In the case where only "
212                     "one is specified, the method will return all rights to all "
213                     "Targets for the specified Subject, or all rights for all "
214                     "subjects which apply to the specified Target. \n"
215                     "\n"
216                     "ShowAccess returns the cumulative rights granted between "
217                     "the OutSubjects and OutTargets at the same array index "
218                     "(filtered to return the information that the requestor is "
219                     "authorized to view). If a specific array entry is NULL, "
220                     "then there exist NO rights that the requestor is authorized "
221                     "to view between the Subject/Target pair. \n"
222                     "\n"
223                     "Note that the Privileges returned by this method MAY NOT "
224                     "correspond to what is actually instantiated in the model, "
225                     "and MAY be optimized for ease of reporting. Hence, the data "
226                     "is passed 'by value', as embedded objects. Also, note that "
227                     "multiple Privileges MAY be defined for a given "
228                     "Subject/Target pair. \n"
229                     "\n"
230                     "Other mechanisms MAY also be used to retrieve this "
231                     "information. CIM Operations' EnumerateInstances MAY be used "
232 karl  1.1           "to return all Privileges currently instantiated within a "
233                     "namespace. Also, if the AuthorizedPrivilege subclass is "
234                     "instantiated, the CIM Operation Associators MAY be used to "
235                     "navigate from the Privilege to AuthorizedSubjects and "
236                     "AuthorizedTargets. These CIM Operations will not generally "
237                     "provide the functionality or optimizations available with "
238                     "ShowAccess."), 
239                  ValueMap { "0", "1", "2", "3", "4", "5", "..", "16000", "16002",
240                     "16003", "16004", "16005..31999", "32000..65535" }, 
241                  Values { "Success", "Not Supported", "Unknown", "Timeout",
242                     "Failed", "Invalid Parameter", "DMTF Reserved",
243                     "Unsupported Subject", "Unsupported Target",
244                     "Authorization Error", "NULL not supported",
245                     "Method Reserved", "Vendor Specific" }]
246              uint32 ShowAccess (
247                 
248                    [IN, Description (
249                        "The Subject parameter references an instance of "
250                        "ManagedElement. The result of this operation is that the "
251                        "cumulative rights of the Subject to access or define "
252                        "authorization rights for the Target will be reported. If "
253 karl  1.1              "no Subject is specified, then a Target MUST be supplied "
254                        "and ALL Subjects that have rights to access or define "
255                        "authorizations for the Target will be reported. (It "
256                        "should be noted that the information reported MUST be "
257                        "filtered by the rights of the requestor to view that "
258                        "data.) If the Subject element is a Collection, then the "
259                        "operation will specifically report the Privileges for "
260                        "all elements associated to the Collection via "
261                        "MemberOfCollection. These elements will be reported "
262                        "individually in the returned OutSubjects array."), 
263                     ModelCorrespondence { 
264                        "CIM_PrivilegeManagementService.ShowAccess.Target" }]
265                 CIM_ManagedElement REF Subject,
266                 
267                    [IN, Description (
268                        "The Target parameter references an instance of "
269                        "ManagedElement. The result of this operation is that the "
270                        "cumulative rights of the Subject to access or define "
271                        "authorization rights for the Target will be reported. If "
272                        "no Target is specified, then a Subject MUST be supplied "
273                        "and ALL Targets for which that the Subject has rights to "
274 karl  1.1              "access or define authorization will be reported. (It "
275                        "should be noted that the information reported MUST be "
276                        "filtered by the rights of the requestor to view that "
277                        "data.) If the Target element is a Collection, then the "
278                        "operation will be applied to all elements associated to "
279                        "the Collection via MemberOfCollection. These elements "
280                        "will be reported individually in the returned OutTargets "
281                        "array."), 
282                     ModelCorrespondence { 
283                        "CIM_PrivilegeManagementService.ShowAccess.Subject" }]
284                 CIM_ManagedElement REF Target,
285                 
286                    [IN ( false ), OUT, Description (
287                        "The array of Subject REFs corresponding to the "
288                        "individual Privileges and OutTargets arrays. The "
289                        "resulting OutSubjects, Privileges and OutTargets arrays "
290                        "define the cumulative rights granted between the "
291                        "Subject/Target at the corresponding index (filtered to "
292                        "return the information that the requestor is authorized "
293                        "to view)."), 
294                     ArrayType ( "Indexed" ), 
295 karl  1.1           ModelCorrespondence { 
296                        "CIM_PrivilegeManagementService.ShowAccess.Subject",
297                        "CIM_PrivilegeManagementService.ShowAccess.Privileges",
298                        "CIM_PrivilegeManagementService.ShowAccess.OutTargets" }]
299                 CIM_ManagedElement REF OutSubjects[],
300                 
301                    [IN ( false ), OUT, Description (
302                        "The array of Target REFs corresponding to the individual "
303                        "Privileges and OutSubjects arrays. The resulting "
304                        "OutSubjects, Privileges and OutTargets arrays define the "
305                        "cumulative rights granted between the Subject/Target at "
306                        "the corresponding index (filtered to return the "
307                        "information that the requestor is authorized to view)."), 
308                     ArrayType ( "Indexed" ), 
309                     ModelCorrespondence { 
310                        "CIM_PrivilegeManagementService.ShowAccess.Target",
311                        "CIM_PrivilegeManagementService.ShowAccess.Privileges",
312                        "CIM_PrivilegeManagementService.ShowAccess.OutSubjects" }]
313                 CIM_ManagedElement REF OutTargets[],
314                 
315                    [IN ( false ), OUT, Description (
316 karl  1.1              "The returned Privilege objects represent the cumulative "
317                        "rights granted between the OutSubjects and OutTargets at "
318                        "the same array index (filtered to return the information "
319                        "that the requestor is authorized to view). If a specific "
320                        "array entry is NULL, then there exist NO rights that the "
321                        "requestor is authorized to view between the "
322                        "Subject/Target pair."), 
323                     EmbeddedObject, ArrayType ( "Indexed" ), 
324                     ModelCorrespondence { 
325                        "CIM_PrivilegeManagementService.ShowAccess.OutTargets",
326                        "CIM_PrivilegeManagementService.ShowAccess.OutSubjects" }]
327                 string Privileges[]); 
328           
329                 [Description (
330                     "When this method is called, a provider updates the "
331                     "specified Subject's rights to the Target according to the "
332                     "parameters of this call. The rights are modeled via an "
333                     "AuthorizedPrivilege instance. If an AuthorizedPrivilege "
334                     "instance is created as a result of this call, it MUST be "
335                     "linked to the Subject and Target via the AuthorizedSubject "
336                     "and AuthorizedTarget associations, respectively. When "
337 karl  1.1           "created, the AuthorizedPrivilege instance is associated to "
338                     "this PrivilegeManagementService via ConcreteDependency. If "
339                     "the execution of this call results in no rights between the "
340                     "Subject and Target, then they MUST NOT be linked to a "
341                     "particular AuthorizedPrivilege instance via "
342                     "AuthorizedSubject and AuthorizedTarget respectively. \n"
343                     "\n"
344                     "Note that regardless of whether specified via parameter, or "
345                     "template, the Activities, ActivityQualifiers and "
346                     "QualifierFormats, are mutually indexed. Also note that "
347                     "Subject and Target references MUST be supplied. \n"
348                     "\n"
349                     "The successful completion of the method SHALL create any "
350                     "necessary AuthorizedSubject, AuthorizedTarget, "
351                     "AuthorizedPrivilege, HostedDependency, and "
352                     "ConcreteDependency instances."), 
353                  ValueMap { "0", "1", "2", "3", "4", "5", "6..15999", "16000",
354                     "16001", "16002", "16003", "16004", "16005..31999",
355                     "32000..65535" }, 
356                  Values { "Success", "Not Supported", "Unspecified Error",
357                     "Timeout", "Failed", "Invalid Parameter", "DMTF Reserved",
358 karl  1.1           "Unsupported Subject", "Unsupported Privilege",
359                     "Unsupported Target", "Authorization Error",
360                     "NULL not supported", "Method Reserved", "Vendor Specific" }]
361              uint32 AssignAccess (
362                 
363                    [Required, IN, Description (
364                        "The Subject parameter is a reference to a ManagedElement "
365                        "instance. This parameter MUST be supplied.")]
366                 CIM_ManagedElement REF Subject,
367                 
368                    [IN, Description (
369                        "MUST be NULL unless Privilege is NULL on input. The "
370                        "PrivilegeGranted flag indicates whether the rights "
371                        "defined by the parameters in this call should be granted "
372                        "or denied to the named Subject/Target pair."), 
373                     ModelCorrespondence { 
374                        "CIM_AuthorizedPrivilege.PrivilegeGranted",
375                        "CIM_PrivilegeManagementService.AssignAccess.Privilege" }]
376                 boolean PrivilegeGranted,
377                 
378                    [IN, Description (
379 karl  1.1              "MUST be NULL unless the Privilege is NULL on input. This "
380                        "parameter specifies the activities to be granted or "
381                        "denied."), 
382                     ValueMap { "1", "2", "3", "4", "5", "6", "7", "..",
383                        "16000..65535" }, 
384                     Values { "Other", "Create", "Delete", "Detect", "Read",
385                        "Write", "Execute", "DMTF Reserved", "Vendor Reserved" },
386                     ArrayType ( "Indexed" ), 
387                     ModelCorrespondence { "CIM_AuthorizedPrivilege.Activities",
388                        "CIM_PrivilegeManagementService.AssignAccess.Privilege" }]
389                 uint16 Activities[],
390                 
391                    [IN, Description (
392                        "MUST be NULL unless Privilege is NULL on input. This "
393                        "parameter defines the activity qualifiers for the "
394                        "Activities to be granted or denied."), 
395                     ArrayType ( "Indexed" ), 
396                     ModelCorrespondence { 
397                        "CIM_AuthorizedPrivilege.ActivityQualifers",
398                        "CIM_PrivilegeManagementService.AssignAccess.Privilege" }]
399                 string ActivityQualifiers[],
400 karl  1.1       
401                    [IN, Description (
402                        "MUST be NULL unless Privilege is NULL on input. This "
403                        "parameter defines the qualifier formats for the "
404                        "corresponding ActivityQualifiers."), 
405                     ValueMap { "2", "3", "4", "5", "6", "7", "8", "9",
406                        "10..15999", "16000..65535" }, 
407                     Values { "Class Name", "<Class.>Property", "<Class.>Method",
408                        "Object Reference", "Namespace", "URL",
409                        "Directory/File Name", "Command Line Instruction",
410                        "DMTF Reserved", "Vendor Reserved" },
411                        ArrayType ( "Indexed" ), 
412                     ModelCorrespondence { 
413                        "CIM_AuthorizedPrivilege.QualifierFormats",
414                        "CIM_PrivilegeManagementService.AssignAccess.Privilege" }]
415                 uint16 QualifierFormats[],
416                 
417                    [Required, IN, Description (
418                        "The Target parameter is a reference to an instance of "
419                        "ManagedElement. This parameter MUST be supplied.")]
420                 CIM_ManagedElement REF Target,
421 karl  1.1       
422                    [IN, OUT, Description (
423                        "On input, this reference MUST be either NULL or refer to "
424                        "an instance of AuthorizedPrivilege that is used as a "
425                        "template. The rights granted by corresponding entries in "
426                        "the Activities, ActivityQualifiers and QualifierFormats "
427                        "array properties are applied incrementally and do not "
428                        "affect unnamed rights. If the property, "
429                        "PrivilegeGranted, is false, then the named rights are "
430                        "removed. If PrivilegeGranted is True, then the named "
431                        "rights are added. (Note that the RemoveAccess method "
432                        "SHOULD be used to completely remove all privileges "
433                        "between a subject and a target. On output, this property "
434                        "references an AuthorizedPrivilege instance that "
435                        "represents the resulting rights between the named "
436                        "Subject and the named Target. AuthorizedPrivilege "
437                        "instances used as a templates in this property SHOULD "
438                        "have a HostedDependency association to the "
439                        "PriviligeManagementService and SHOULD NOT have any "
440                        "AuthorizedTarget or AuthorizedSubject associations to "
441                        "it.")]
442 karl  1.1       CIM_AuthorizedPrivilege REF Privilege ); 
443           
444                 [Description (
445                     "This method revokes a specific AuthorizedPrivilege or all "
446                     "privileges for a particular target, subject, or "
447                     "subject/target pair. If an AuthorizedPrivilege instance is "
448                     "left with no AuthorizedTarget associations, it SHOULD be "
449                     "deleted. The successful completion of the method SHALL "
450                     "remove the directly or indirectly requested "
451                     "AuthorizedSubject, AuthorizedTarget and AuthorizedPrivilege "
452                     "instances."), 
453                  ValueMap { "0", "1", "2", "3", "4", "5", "6..15999", "16000",
454                     "16001", "16002", "16003", "16004..32767", "32768..65535" }, 
455                  Values { "Success", "Not Supported", "Unspecified Error",
456                     "Timeout", "Failed", "Invalid Parameter", "DMTF Reserved",
457                     "Unsupported Privilege", "Unsupported Target",
458                     "Authorization Error", "Null parameter not supported",
459                     "Method Reserved", "Vendor Specific" }]
460              uint32 RemoveAccess ( 
461                    [IN, Description (
462                        "The Subject parameter is a reference to a ManagedElement "
463 karl  1.1              "instance (associated via AuthorizedSubject) for which "
464                        "privileges are to be revoked.")]
465                 CIM_ManagedElement REF Subject,
466                 
467                    [IN, Description (
468                        "A reference to the AuthorizedPrivilege to be revoked.")]
469                 CIM_AuthorizedPrivilege REF Privilege,
470                 
471                    [IN, Description (
472                        "The Target parameter is a reference to a ManagedElement "
473                        "(associated via AuthorizedTarget) which will no longer "
474                        "be protected via the AuthorizedPrivilege.")]
475                 CIM_ManagedElement REF Target ); 
476           };
477           
478           
479           // ===================================================================
480           // end of file
481           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2