Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1930 lines
49 KiB

  1. /*++
  2. Copyright (c) 2001 Microsoft Corporation
  3. Module Name:
  4. azroles.idl
  5. Abstract:
  6. IDL definition for all AZ IDispatch interfaces
  7. This file will be processed by the MIDL tool to
  8. produce the type library (azroles.tlb) and marshalling code.
  9. Author:
  10. Xiaoxi Tan (xtan) 11-May-2001
  11. --*/
  12. cpp_quote("//")
  13. cpp_quote("// IAzAuthorizationStore interface id")
  14. cpp_quote("//")
  15. cpp_quote("//edbd9ca9-9b82-4f6a-9e8b-98301e450f14")
  16. cpp_quote("DEFINE_GUID(IID_IAzAuthorizationStore, 0xedbd9ca9, 0x9b82, 0x4f6a, 0x9e, 0x8b, 0x98, 0x30, 0x1e, 0x45, 0x0f, 0x14);")
  17. cpp_quote("")
  18. cpp_quote("//")
  19. cpp_quote("// AzAuthorizationStore class id")
  20. cpp_quote("//")
  21. cpp_quote("//b2bcff59-a757-4b0b-a1bc-ea69981da69e")
  22. cpp_quote("DEFINE_GUID(CLSID_AzAuthorizationStore, 0xb2bcff59, 0xa757, 0x4b0b, 0xa1, 0xbc, 0xea, 0x69, 0x98, 0x1d, 0xa6, 0x9e);")
  23. cpp_quote("")
  24. cpp_quote("//")
  25. cpp_quote("// IAzBizRuleContext interface id")
  26. cpp_quote("//")
  27. cpp_quote("//e192f17d-d59f-455e-a152-940316cd77b2")
  28. cpp_quote("DEFINE_GUID(IID_IAzBizRuleContext, 0xe192f17d, 0xd59f, 0x455e, 0xa1, 0x52, 0x94, 0x03, 0x16, 0xcd, 0x77, 0xb2);")
  29. cpp_quote("")
  30. cpp_quote("//")
  31. cpp_quote("// AzBizRuleContext class id")
  32. cpp_quote("//")
  33. cpp_quote("//5c2dc96f-8d51-434b-b33c-379bccae77c3")
  34. cpp_quote("DEFINE_GUID(CLSID_AzBizRuleContext, 0x5c2dc96f, 0x8d51, 0x434b, 0xb3, 0x3c, 0x37, 0x9b, 0xcc, 0xae, 0x77, 0xc3);")
  35. import "oaidl.idl";
  36. import "ocidl.idl";
  37. //interface forward
  38. interface IAzApplication;
  39. interface IAzApplications;
  40. interface IAzApplicationGroup;
  41. interface IAzApplicationGroups;
  42. interface IAzOperation;
  43. interface IAzOperations;
  44. interface IAzTask;
  45. interface IAzTasks;
  46. interface IAzScope;
  47. interface IAzScopes;
  48. interface IAzRole;
  49. interface IAzRoles;
  50. interface IAzClientContext;
  51. //IAzAuthorizationStore
  52. [
  53. object,
  54. uuid(edbd9ca9-9b82-4f6a-9e8b-98301e450f14),
  55. dual,
  56. helpstring("IAzAuthorizationStore Interface"),
  57. pointer_default(unique)
  58. ]
  59. interface IAzAuthorizationStore : IDispatch
  60. {
  61. [propget]
  62. HRESULT Description(
  63. [out, retval] BSTR *pbstrDescription
  64. );
  65. [propput]
  66. HRESULT Description(
  67. [in] BSTR bstrDescription
  68. );
  69. [propget]
  70. HRESULT ApplicationData(
  71. [out, retval] BSTR *pbstrApplicationData
  72. );
  73. [propput]
  74. HRESULT ApplicationData(
  75. [in] BSTR bstrApplicationData
  76. );
  77. [propget]
  78. HRESULT DomainTimeout(
  79. [out, retval] LONG *plProp
  80. );
  81. [propput]
  82. HRESULT DomainTimeout(
  83. [in] LONG lProp
  84. );
  85. [propget]
  86. HRESULT ScriptEngineTimeout(
  87. [out, retval] LONG *plProp
  88. );
  89. [propput]
  90. HRESULT ScriptEngineTimeout(
  91. [in] LONG lProp
  92. );
  93. [propget]
  94. HRESULT MaxScriptEngines(
  95. [out, retval] LONG *plProp
  96. );
  97. [propput]
  98. HRESULT MaxScriptEngines(
  99. [in] LONG lProp
  100. );
  101. [propget]
  102. HRESULT GenerateAudits(
  103. [out, retval] BOOL *pbProp
  104. );
  105. [propput]
  106. HRESULT GenerateAudits(
  107. [in] BOOL bProp
  108. );
  109. [propget]
  110. HRESULT Writable(
  111. [out,retval] BOOL *pfProp
  112. );
  113. HRESULT GetProperty(
  114. [in] LONG lPropId,
  115. [in, optional] VARIANT varReserved,
  116. [out, retval] VARIANT* pvarProp
  117. );
  118. HRESULT SetProperty(
  119. [in] LONG lPropId,
  120. [in] VARIANT varProp,
  121. [in, optional] VARIANT varReserved
  122. );
  123. HRESULT AddPropertyItem(
  124. [in] LONG lPropId,
  125. [in] VARIANT varProp,
  126. [in, optional] VARIANT varReserved
  127. );
  128. HRESULT DeletePropertyItem(
  129. [in] LONG lPropId,
  130. [in] VARIANT varProp,
  131. [in, optional] VARIANT varReserved
  132. );
  133. [propget]
  134. HRESULT PolicyAdministrators(
  135. [out, retval] VARIANT* pvarAdmins
  136. );
  137. [propget]
  138. HRESULT PolicyReaders(
  139. [out, retval] VARIANT* pvarReaders
  140. );
  141. HRESULT AddPolicyAdministrator(
  142. [in] BSTR bstrAdmin,
  143. [in, optional] VARIANT varReserved
  144. );
  145. HRESULT DeletePolicyAdministrator(
  146. [in] BSTR bstrAdmin,
  147. [in, optional] VARIANT varReserved
  148. );
  149. HRESULT AddPolicyReader(
  150. [in] BSTR bstrReader,
  151. [in, optional] VARIANT varReserved
  152. );
  153. HRESULT DeletePolicyReader(
  154. [in] BSTR bstrReader,
  155. [in, optional] VARIANT varReserved
  156. );
  157. HRESULT Initialize(
  158. [in] LONG lFlags,
  159. [in] BSTR bstrPolicyURL,
  160. [in, optional] VARIANT varReserved
  161. );
  162. HRESULT UpdateCache(
  163. [in, optional] VARIANT varReserved
  164. );
  165. HRESULT Delete(
  166. [in, optional] VARIANT varReserved
  167. );
  168. // application methods
  169. [propget]
  170. HRESULT Applications(
  171. [out, retval] IAzApplications** ppAppCollection
  172. );
  173. HRESULT OpenApplication(
  174. [in] BSTR bstrApplicationName,
  175. [in, optional] VARIANT varReserved,
  176. [out, retval] IAzApplication** ppApplication
  177. );
  178. HRESULT CreateApplication(
  179. [in] BSTR bstrApplicationName,
  180. [in, optional] VARIANT varReserved,
  181. [out, retval] IAzApplication** ppApplication
  182. );
  183. HRESULT DeleteApplication(
  184. [in] BSTR bstrApplicationName,
  185. [in, optional] VARIANT varReserved
  186. );
  187. //group methods
  188. [propget]
  189. HRESULT ApplicationGroups(
  190. [out, retval] IAzApplicationGroups** ppGroupCollection
  191. );
  192. HRESULT CreateApplicationGroup(
  193. [in] BSTR bstrGroupName,
  194. [in, optional] VARIANT varReserved,
  195. [out, retval] IAzApplicationGroup** ppGroup
  196. );
  197. HRESULT OpenApplicationGroup(
  198. [in] BSTR bstrGroupName,
  199. [in, optional] VARIANT varReserved,
  200. [out, retval] IAzApplicationGroup** ppGroup
  201. );
  202. HRESULT DeleteApplicationGroup(
  203. [in] BSTR bstrGroupName,
  204. [in, optional] VARIANT varReserved
  205. );
  206. HRESULT Submit(
  207. [in, defaultvalue(0)] LONG lFlags,
  208. [in, optional] VARIANT varReserved
  209. );
  210. [propget]
  211. HRESULT DelegatedPolicyUsers(
  212. [out, retval] VARIANT* pvarDelegatedPolicyUsers
  213. );
  214. HRESULT AddDelegatedPolicyUser(
  215. [in] BSTR bstrDelegatedPolicyUser,
  216. [in, optional] VARIANT varReserved
  217. );
  218. HRESULT DeleteDelegatedPolicyUser(
  219. [in] BSTR bstrDelegatedPolicyUser,
  220. [in, optional] VARIANT varReserved
  221. );
  222. [propget]
  223. HRESULT TargetMachine(
  224. [out, retval] BSTR *pbstrTargetMachine
  225. );
  226. [propget]
  227. HRESULT ApplyStoreSacl(
  228. [out, retval] BOOL * pbApplyStoreSacl
  229. );
  230. [propput]
  231. HRESULT ApplyStoreSacl(
  232. [in] BOOL bApplyStoreSacl
  233. );
  234. [propget]
  235. HRESULT PolicyAdministratorsName(
  236. [out, retval] VARIANT* pvarAdmins
  237. );
  238. [propget]
  239. HRESULT PolicyReadersName(
  240. [out, retval] VARIANT* pvarReaders
  241. );
  242. HRESULT AddPolicyAdministratorName(
  243. [in] BSTR bstrAdmin,
  244. [in, optional] VARIANT varReserved
  245. );
  246. HRESULT DeletePolicyAdministratorName(
  247. [in] BSTR bstrAdmin,
  248. [in, optional] VARIANT varReserved
  249. );
  250. HRESULT AddPolicyReaderName(
  251. [in] BSTR bstrReader,
  252. [in, optional] VARIANT varReserved
  253. );
  254. HRESULT DeletePolicyReaderName(
  255. [in] BSTR bstrReader,
  256. [in, optional] VARIANT varReserved
  257. );
  258. [propget]
  259. HRESULT DelegatedPolicyUsersName(
  260. [out, retval] VARIANT* pvarDelegatedPolicyUsers
  261. );
  262. HRESULT AddDelegatedPolicyUserName(
  263. [in] BSTR bstrDelegatedPolicyUser,
  264. [in, optional] VARIANT varReserved
  265. );
  266. HRESULT DeleteDelegatedPolicyUserName(
  267. [in] BSTR bstrDelegatedPolicyUser,
  268. [in, optional] VARIANT varReserved
  269. );
  270. HRESULT CloseApplication(
  271. [in] BSTR bstrApplicationName,
  272. [in] LONG lFlag
  273. );
  274. };
  275. //IAzApplication
  276. [
  277. object,
  278. uuid(987bc7c7-b813-4d27-bede-6ba5ae867e95),
  279. helpstring("IAzApplication Interface"),
  280. pointer_default(unique)
  281. ]
  282. interface IAzApplication : IDispatch
  283. {
  284. [propget]
  285. HRESULT Name(
  286. [out, retval] BSTR *pbstrName
  287. );
  288. [propput]
  289. HRESULT Name(
  290. [in] BSTR bstrName
  291. );
  292. [propget]
  293. HRESULT Description(
  294. [out, retval] BSTR *pbstrDescription
  295. );
  296. [propput]
  297. HRESULT Description(
  298. [in] BSTR bstrDescription
  299. );
  300. [propget]
  301. HRESULT ApplicationData(
  302. [out, retval] BSTR *pbstrApplicationData
  303. );
  304. [propput]
  305. HRESULT ApplicationData(
  306. [in] BSTR bstrApplicationData
  307. );
  308. [propget]
  309. HRESULT AuthzInterfaceClsid(
  310. [out,retval] BSTR *pbstrProp);
  311. [propput]
  312. HRESULT AuthzInterfaceClsid(
  313. [in] BSTR bstrProp);
  314. [propget]
  315. HRESULT Version(
  316. [out,retval] BSTR *pbstrProp);
  317. [propput]
  318. HRESULT Version(
  319. [in] BSTR bstrProp);
  320. [propget]
  321. HRESULT GenerateAudits(
  322. [out,retval] BOOL *pbProp);
  323. [propput]
  324. HRESULT GenerateAudits(
  325. [in] BOOL bProp);
  326. [propget]
  327. HRESULT ApplyStoreSacl(
  328. [out,retval] BOOL *pbProp);
  329. [propput]
  330. HRESULT ApplyStoreSacl(
  331. [in] BOOL bProp);
  332. [propget]
  333. HRESULT Writable(
  334. [out,retval] BOOL *pfProp
  335. );
  336. HRESULT GetProperty(
  337. [in] LONG lPropId,
  338. [in, optional] VARIANT varReserved,
  339. [out, retval] VARIANT* pvarProp
  340. );
  341. HRESULT SetProperty(
  342. [in] LONG lPropId,
  343. [in] VARIANT varProp,
  344. [in, optional] VARIANT varReserved
  345. );
  346. [propget]
  347. HRESULT PolicyAdministrators(
  348. [out, retval] VARIANT* pvarAdmins
  349. );
  350. [propget]
  351. HRESULT PolicyReaders(
  352. [out, retval] VARIANT* pvarReaders
  353. );
  354. HRESULT AddPolicyAdministrator(
  355. [in] BSTR bstrAdmin,
  356. [in, optional] VARIANT varReserved
  357. );
  358. HRESULT DeletePolicyAdministrator(
  359. [in] BSTR bstrAdmin,
  360. [in, optional] VARIANT varReserved
  361. );
  362. HRESULT AddPolicyReader(
  363. [in] BSTR bstrReader,
  364. [in, optional] VARIANT varReserved
  365. );
  366. HRESULT DeletePolicyReader(
  367. [in] BSTR bstrReader,
  368. [in, optional] VARIANT varReserved
  369. );
  370. //scope methods
  371. [propget]
  372. HRESULT Scopes(
  373. [out, retval] IAzScopes** ppScopeCollection
  374. );
  375. HRESULT OpenScope(
  376. [in] BSTR bstrScopeName,
  377. [in, optional] VARIANT varReserved,
  378. [out, retval] IAzScope** ppScope
  379. );
  380. HRESULT CreateScope(
  381. [in] BSTR bstrScopeName,
  382. [in, optional] VARIANT varReserved,
  383. [out, retval] IAzScope** ppScope
  384. );
  385. HRESULT DeleteScope(
  386. [in] BSTR bstrScopeName,
  387. [in, optional] VARIANT varReserved
  388. );
  389. //operation methods
  390. [propget]
  391. HRESULT Operations(
  392. [out, retval] IAzOperations** ppOperationCollection
  393. );
  394. HRESULT OpenOperation(
  395. [in] BSTR bstrOperationName,
  396. [in, optional] VARIANT varReserved,
  397. [out, retval] IAzOperation** ppOperation
  398. );
  399. HRESULT CreateOperation(
  400. [in] BSTR bstrOperationName,
  401. [in, optional] VARIANT varReserved,
  402. [out, retval] IAzOperation** ppOperation
  403. );
  404. HRESULT DeleteOperation(
  405. [in] BSTR bstrOperationName,
  406. [in, optional] VARIANT varReserved
  407. );
  408. // task methods
  409. [propget]
  410. HRESULT Tasks(
  411. [out, retval] IAzTasks** ppTaskCollection
  412. );
  413. HRESULT OpenTask(
  414. [in] BSTR bstrTaskName,
  415. [in, optional] VARIANT varReserved,
  416. [out, retval] IAzTask** ppTask
  417. );
  418. HRESULT CreateTask(
  419. [in] BSTR bstrTaskName,
  420. [in, optional] VARIANT varReserved,
  421. [out, retval] IAzTask** ppTask
  422. );
  423. HRESULT DeleteTask(
  424. [in] BSTR bstrTaskName,
  425. [in, optional] VARIANT varReserved
  426. );
  427. //group methods
  428. [propget]
  429. HRESULT ApplicationGroups(
  430. [out, retval] IAzApplicationGroups** ppGroupCollection
  431. );
  432. HRESULT OpenApplicationGroup(
  433. [in] BSTR bstrGroupName,
  434. [in, optional] VARIANT varReserved,
  435. [out, retval] IAzApplicationGroup** ppGroup
  436. );
  437. HRESULT CreateApplicationGroup(
  438. [in] BSTR bstrGroupName,
  439. [in, optional] VARIANT varReserved,
  440. [out, retval] IAzApplicationGroup** ppGroup
  441. );
  442. HRESULT DeleteApplicationGroup(
  443. [in] BSTR bstrGroupName,
  444. [in, optional] VARIANT varReserved
  445. );
  446. //role methods
  447. [propget]
  448. HRESULT Roles(
  449. [out, retval] IAzRoles** ppRoleCollection
  450. );
  451. HRESULT OpenRole(
  452. [in] BSTR bstrRoleName,
  453. [in, optional] VARIANT varReserved,
  454. [out, retval] IAzRole** ppRole
  455. );
  456. HRESULT CreateRole(
  457. [in] BSTR bstrRoleName,
  458. [in, optional] VARIANT varReserved,
  459. [out, retval] IAzRole** ppRole
  460. );
  461. HRESULT DeleteRole(
  462. [in] BSTR bstrRoleName,
  463. [in, optional] VARIANT varReserved
  464. );
  465. HRESULT InitializeClientContextFromToken(
  466. [in] ULONGLONG ullTokenHandle,
  467. [in, optional] VARIANT varReserved,
  468. [out, retval] IAzClientContext** ppClientContext
  469. );
  470. HRESULT AddPropertyItem(
  471. [in] LONG lPropId,
  472. [in] VARIANT varProp,
  473. [in, optional] VARIANT varReserved
  474. );
  475. HRESULT DeletePropertyItem(
  476. [in] LONG lPropId,
  477. [in] VARIANT varProp,
  478. [in, optional] VARIANT varReserved
  479. );
  480. HRESULT Submit(
  481. [in, defaultvalue(0)] LONG lFlags,
  482. [in, optional] VARIANT varReserved
  483. );
  484. HRESULT InitializeClientContextFromName(
  485. [in] BSTR ClientName,
  486. [in, optional] BSTR DomainName,
  487. [in, optional] VARIANT varReserved,
  488. [out, retval] IAzClientContext** ppClientContext
  489. );
  490. [propget]
  491. HRESULT DelegatedPolicyUsers(
  492. [out, retval] VARIANT* pvarDelegatedPolicyUsers
  493. );
  494. HRESULT AddDelegatedPolicyUser(
  495. [in] BSTR bstrDelegatedPolicyUser,
  496. [in, optional] VARIANT varReserved
  497. );
  498. HRESULT DeleteDelegatedPolicyUser(
  499. [in] BSTR bstrDelegatedPolicyUser,
  500. [in, optional] VARIANT varReserved
  501. );
  502. HRESULT InitializeClientContextFromStringSid(
  503. [in] BSTR SidString,
  504. [in] LONG lOptions,
  505. [in, optional] VARIANT varReserved,
  506. [out, retval] IAzClientContext** ppClientContext
  507. );
  508. [propget]
  509. HRESULT PolicyAdministratorsName(
  510. [out, retval] VARIANT* pvarAdmins
  511. );
  512. [propget]
  513. HRESULT PolicyReadersName(
  514. [out, retval] VARIANT* pvarReaders
  515. );
  516. HRESULT AddPolicyAdministratorName(
  517. [in] BSTR bstrAdmin,
  518. [in, optional] VARIANT varReserved
  519. );
  520. HRESULT DeletePolicyAdministratorName(
  521. [in] BSTR bstrAdmin,
  522. [in, optional] VARIANT varReserved
  523. );
  524. HRESULT AddPolicyReaderName(
  525. [in] BSTR bstrReader,
  526. [in, optional] VARIANT varReserved
  527. );
  528. HRESULT DeletePolicyReaderName(
  529. [in] BSTR bstrReader,
  530. [in, optional] VARIANT varReserved
  531. );
  532. [propget]
  533. HRESULT DelegatedPolicyUsersName(
  534. [out, retval] VARIANT* pvarDelegatedPolicyUsers
  535. );
  536. HRESULT AddDelegatedPolicyUserName(
  537. [in] BSTR bstrDelegatedPolicyUser,
  538. [in, optional] VARIANT varReserved
  539. );
  540. HRESULT DeleteDelegatedPolicyUserName(
  541. [in] BSTR bstrDelegatedPolicyUser,
  542. [in, optional] VARIANT varReserved
  543. );
  544. };
  545. //IAzApplications
  546. [
  547. object,
  548. uuid(929b11a9-95c5-4a84-a29a-20ad42c2f16c),
  549. helpstring("IAzApplications Interface"),
  550. pointer_default(unique)
  551. ]
  552. interface IAzApplications : IDispatch
  553. {
  554. [propget, id(0)]
  555. HRESULT Item(
  556. [in] long Index,
  557. [out, retval] VARIANT *pvarObtPtr
  558. );
  559. [propget, id(1)]
  560. HRESULT Count(
  561. [out, retval] long *plCount
  562. );
  563. [propget, id(DISPID_NEWENUM)]
  564. HRESULT _NewEnum(
  565. [out, retval] LPUNKNOWN* ppEnumPtr
  566. );
  567. };
  568. //IAzOperation
  569. [
  570. object,
  571. uuid(5e56b24f-ea01-4d61-be44-c49b5e4eaf74),
  572. helpstring("IAzOperation Interface"),
  573. pointer_default(unique)
  574. ]
  575. interface IAzOperation : IDispatch
  576. {
  577. [propget]
  578. HRESULT Name(
  579. [out, retval] BSTR *pbstrName
  580. );
  581. [propput]
  582. HRESULT Name(
  583. [in] BSTR bstrName
  584. );
  585. [propget]
  586. HRESULT Description(
  587. [out, retval] BSTR *pbstrDescription
  588. );
  589. [propput]
  590. HRESULT Description(
  591. [in] BSTR bstrDescription
  592. );
  593. [propget]
  594. HRESULT ApplicationData(
  595. [out, retval] BSTR *pbstrApplicationData
  596. );
  597. [propput]
  598. HRESULT ApplicationData(
  599. [in] BSTR bstrApplicationData
  600. );
  601. [propget]
  602. HRESULT OperationID(
  603. [out, retval] LONG *plProp
  604. );
  605. [propput]
  606. HRESULT OperationID(
  607. [in] LONG lProp
  608. );
  609. [propget]
  610. HRESULT Writable(
  611. [out,retval] BOOL *pfProp
  612. );
  613. HRESULT GetProperty(
  614. [in] LONG lPropId,
  615. [in, optional] VARIANT varReserved,
  616. [out, retval] VARIANT* pvarProp
  617. );
  618. HRESULT SetProperty(
  619. [in] LONG lPropId,
  620. [in] VARIANT varProp,
  621. [in, optional] VARIANT varReserved
  622. );
  623. HRESULT Submit(
  624. [in, defaultvalue(0)] LONG lFlags,
  625. [in, optional] VARIANT varReserved
  626. );
  627. };
  628. //IAzOperations
  629. [
  630. object,
  631. uuid(90ef9c07-9706-49d9-af80-0438a5f3ec35),
  632. helpstring("IAzOperations Interface"),
  633. pointer_default(unique)
  634. ]
  635. interface IAzOperations : IDispatch
  636. {
  637. [propget, id(0)]
  638. HRESULT Item(
  639. [in] LONG Index,
  640. [out, retval] VARIANT *pvarObtPtr
  641. );
  642. [propget, id(1)]
  643. HRESULT Count(
  644. [out, retval] LONG *plCount
  645. );
  646. [propget, id(DISPID_NEWENUM)]
  647. HRESULT _NewEnum(
  648. [out, retval] LPUNKNOWN* ppEnumPtr
  649. );
  650. };
  651. //IAzTask
  652. [
  653. object,
  654. uuid(cb94e592-2e0e-4a6c-a336-b89a6dc1e388),
  655. helpstring("IAzTask Interface"),
  656. pointer_default(unique)
  657. ]
  658. interface IAzTask : IDispatch
  659. {
  660. [propget]
  661. HRESULT Name(
  662. [out, retval] BSTR *pbstrName
  663. );
  664. [propput]
  665. HRESULT Name(
  666. [in] BSTR bstrName
  667. );
  668. [propget]
  669. HRESULT Description(
  670. [out, retval] BSTR *pbstrDescription
  671. );
  672. [propput]
  673. HRESULT Description(
  674. [in] BSTR bstrDescription
  675. );
  676. [propget]
  677. HRESULT ApplicationData(
  678. [out, retval] BSTR *pbstrApplicationData
  679. );
  680. [propput]
  681. HRESULT ApplicationData(
  682. [in] BSTR bstrApplicationData
  683. );
  684. [propget]
  685. HRESULT BizRule(
  686. [out,retval] BSTR *pbstrProp);
  687. [propput]
  688. HRESULT BizRule(
  689. [in] BSTR bstrProp);
  690. [propget]
  691. HRESULT BizRuleLanguage(
  692. [out,retval] BSTR *pbstrProp);
  693. [propput]
  694. HRESULT BizRuleLanguage(
  695. [in] BSTR bstrProp);
  696. [propget]
  697. HRESULT BizRuleImportedPath(
  698. [out,retval] BSTR *pbstrProp);
  699. [propput]
  700. HRESULT BizRuleImportedPath(
  701. [in] BSTR bstrProp);
  702. [propget]
  703. HRESULT IsRoleDefinition(
  704. [out,retval] BOOL *pfProp);
  705. [propput]
  706. HRESULT IsRoleDefinition(
  707. [in] BOOL fProp);
  708. [propget]
  709. HRESULT Operations(
  710. [out,retval] VARIANT *pvarProp);
  711. [propget]
  712. HRESULT Tasks(
  713. [out,retval] VARIANT *pvarProp);
  714. HRESULT AddOperation(
  715. [in] BSTR bstrOp,
  716. [in, optional] VARIANT varReserved
  717. );
  718. HRESULT DeleteOperation(
  719. [in] BSTR bstrOp,
  720. [in, optional] VARIANT varReserved
  721. );
  722. HRESULT AddTask(
  723. [in] BSTR bstrTask,
  724. [in, optional] VARIANT varReserved
  725. );
  726. HRESULT DeleteTask(
  727. [in] BSTR bstrTask,
  728. [in, optional] VARIANT varReserved
  729. );
  730. [propget]
  731. HRESULT Writable(
  732. [out,retval] BOOL *pfProp
  733. );
  734. HRESULT GetProperty(
  735. [in] LONG lPropId,
  736. [in, optional] VARIANT varReserved,
  737. [out, retval] VARIANT* pvarProp
  738. );
  739. HRESULT SetProperty(
  740. [in] LONG lPropId,
  741. [in] VARIANT varProp,
  742. [in, optional] VARIANT varReserved
  743. );
  744. HRESULT AddPropertyItem(
  745. [in] LONG lPropId,
  746. [in] VARIANT varProp,
  747. [in, optional] VARIANT varReserved
  748. );
  749. HRESULT DeletePropertyItem(
  750. [in] LONG lPropId,
  751. [in] VARIANT varProp,
  752. [in, optional] VARIANT varReserved
  753. );
  754. HRESULT Submit(
  755. [in, defaultvalue(0)] LONG lFlags,
  756. [in, optional] VARIANT varReserved
  757. );
  758. };
  759. //IAzTasks
  760. [
  761. object,
  762. uuid(b338ccab-4c85-4388-8c0a-c58592bad398),
  763. helpstring("IAzTasks Interface"),
  764. pointer_default(unique)
  765. ]
  766. interface IAzTasks : IDispatch
  767. {
  768. [propget, id(0)]
  769. HRESULT Item(
  770. [in] LONG Index,
  771. [out, retval] VARIANT *pvarObtPtr
  772. );
  773. [propget, id(1)]
  774. HRESULT Count(
  775. [out, retval] LONG *plCount
  776. );
  777. [propget, id(DISPID_NEWENUM)]
  778. HRESULT _NewEnum(
  779. [out, retval] LPUNKNOWN* ppEnumPtr
  780. );
  781. };
  782. //IAzScope
  783. [
  784. object,
  785. uuid(00e52487-e08d-4514-b62e-877d5645f5ab),
  786. helpstring("IAzScope Interface"),
  787. pointer_default(unique)
  788. ]
  789. interface IAzScope : IDispatch
  790. {
  791. [propget]
  792. HRESULT Name(
  793. [out, retval] BSTR *pbstrName
  794. );
  795. [propput]
  796. HRESULT Name(
  797. [in] BSTR bstrName
  798. );
  799. [propget]
  800. HRESULT Description(
  801. [out, retval] BSTR *pbstrDescription
  802. );
  803. [propput]
  804. HRESULT Description(
  805. [in] BSTR bstrDescription
  806. );
  807. [propget]
  808. HRESULT ApplicationData(
  809. [out, retval] BSTR *pbstrApplicationData
  810. );
  811. [propput]
  812. HRESULT ApplicationData(
  813. [in] BSTR bstrApplicationData
  814. );
  815. [propget]
  816. HRESULT Writable(
  817. [out,retval] BOOL *pfProp
  818. );
  819. HRESULT GetProperty(
  820. [in] LONG lPropId,
  821. [in, optional] VARIANT varReserved,
  822. [out, retval] VARIANT* pvarProp
  823. );
  824. HRESULT SetProperty(
  825. [in] LONG lPropId,
  826. [in] VARIANT varProp,
  827. [in, optional] VARIANT varReserved
  828. );
  829. HRESULT AddPropertyItem(
  830. [in] LONG lPropId,
  831. [in] VARIANT varProp,
  832. [in, optional] VARIANT varReserved
  833. );
  834. HRESULT DeletePropertyItem(
  835. [in] LONG lPropId,
  836. [in] VARIANT varProp,
  837. [in, optional] VARIANT varReserved
  838. );
  839. [propget]
  840. HRESULT PolicyAdministrators(
  841. [out, retval] VARIANT* pvarAdmins
  842. );
  843. [propget]
  844. HRESULT PolicyReaders(
  845. [out, retval] VARIANT* pvarReaders
  846. );
  847. HRESULT AddPolicyAdministrator(
  848. [in] BSTR bstrAdmin,
  849. [in, optional] VARIANT varReserved
  850. );
  851. HRESULT DeletePolicyAdministrator(
  852. [in] BSTR bstrAdmin,
  853. [in, optional] VARIANT varReserved
  854. );
  855. HRESULT AddPolicyReader(
  856. [in] BSTR bstrReader,
  857. [in, optional] VARIANT varReserved
  858. );
  859. HRESULT DeletePolicyReader(
  860. [in] BSTR bstrReader,
  861. [in, optional] VARIANT varReserved
  862. );
  863. //group methods
  864. [propget]
  865. HRESULT ApplicationGroups(
  866. [out, retval] IAzApplicationGroups** ppGroupCollection
  867. );
  868. HRESULT OpenApplicationGroup(
  869. [in] BSTR bstrGroupName,
  870. [in, optional] VARIANT varReserved,
  871. [out, retval] IAzApplicationGroup** ppGroup
  872. );
  873. HRESULT CreateApplicationGroup(
  874. [in] BSTR bstrGroupName,
  875. [in, optional] VARIANT varReserved,
  876. [out, retval] IAzApplicationGroup** ppGroup
  877. );
  878. HRESULT DeleteApplicationGroup(
  879. [in] BSTR bstrGroupName,
  880. [in, optional] VARIANT varReserved
  881. );
  882. //role methods
  883. [propget]
  884. HRESULT Roles(
  885. [out, retval] IAzRoles** ppRoleCollection
  886. );
  887. HRESULT OpenRole(
  888. [in] BSTR bstrRoleName,
  889. [in, optional] VARIANT varReserved,
  890. [out, retval] IAzRole** ppRole
  891. );
  892. HRESULT CreateRole(
  893. [in] BSTR bstrRoleName,
  894. [in, optional] VARIANT varReserved,
  895. [out, retval] IAzRole** ppRole
  896. );
  897. HRESULT DeleteRole(
  898. [in] BSTR bstrRoleName,
  899. [in, optional] VARIANT varReserved
  900. );
  901. //task methods
  902. [propget]
  903. HRESULT Tasks(
  904. [out, retval] IAzTasks** ppTaskCollection
  905. );
  906. HRESULT OpenTask(
  907. [in] BSTR bstrTaskName,
  908. [in, optional] VARIANT varReserved,
  909. [out, retval] IAzTask** ppTask
  910. );
  911. HRESULT CreateTask(
  912. [in] BSTR bstrTaskName,
  913. [in, optional] VARIANT varReserved,
  914. [out, retval] IAzTask** ppTask
  915. );
  916. HRESULT DeleteTask(
  917. [in] BSTR bstrTaskName,
  918. [in, optional] VARIANT varReserved
  919. );
  920. HRESULT Submit(
  921. [in, defaultvalue(0)] LONG lFlags,
  922. [in, optional] VARIANT varReserved
  923. );
  924. // delegate methods
  925. [propget]
  926. HRESULT CanBeDelegated(
  927. [out,retval] BOOL *pfProp
  928. );
  929. [propget]
  930. HRESULT BizrulesWritable(
  931. [out,retval] BOOL *pfProp
  932. );
  933. [propget]
  934. HRESULT PolicyAdministratorsName(
  935. [out, retval] VARIANT* pvarAdmins
  936. );
  937. [propget]
  938. HRESULT PolicyReadersName(
  939. [out, retval] VARIANT* pvarReaders
  940. );
  941. HRESULT AddPolicyAdministratorName(
  942. [in] BSTR bstrAdmin,
  943. [in, optional] VARIANT varReserved
  944. );
  945. HRESULT DeletePolicyAdministratorName(
  946. [in] BSTR bstrAdmin,
  947. [in, optional] VARIANT varReserved
  948. );
  949. HRESULT AddPolicyReaderName(
  950. [in] BSTR bstrReader,
  951. [in, optional] VARIANT varReserved
  952. );
  953. HRESULT DeletePolicyReaderName(
  954. [in] BSTR bstrReader,
  955. [in, optional] VARIANT varReserved
  956. );
  957. };
  958. //IAzScopes
  959. [
  960. object,
  961. uuid(78e14853-9f5e-406d-9b91-6bdba6973510),
  962. helpstring("IAzScopes Interface"),
  963. pointer_default(unique)
  964. ]
  965. interface IAzScopes : IDispatch
  966. {
  967. [propget, id(0)]
  968. HRESULT Item(
  969. [in] LONG Index,
  970. [out, retval] VARIANT *pvarObtPtr
  971. );
  972. [propget, id(1)]
  973. HRESULT Count(
  974. [out, retval] LONG *plCount
  975. );
  976. [propget, id(DISPID_NEWENUM)]
  977. HRESULT _NewEnum(
  978. [out, retval] LPUNKNOWN* ppEnumPtr
  979. );
  980. };
  981. //IAzApplicationGroup
  982. [
  983. object,
  984. uuid(f1b744cd-58a6-4e06-9fbf-36f6d779e21e),
  985. helpstring("IAzApplicationGroup Interface"),
  986. pointer_default(unique)
  987. ]
  988. interface IAzApplicationGroup : IDispatch
  989. {
  990. [propget]
  991. HRESULT Name(
  992. [out, retval] BSTR *pbstrName
  993. );
  994. [propput]
  995. HRESULT Name(
  996. [in] BSTR bstrName
  997. );
  998. [propget]
  999. HRESULT Type(
  1000. [out, retval] LONG *plProp
  1001. );
  1002. [propput]
  1003. HRESULT Type(
  1004. [in] LONG lProp
  1005. );
  1006. [propget]
  1007. HRESULT LdapQuery(
  1008. [out, retval] BSTR *pbstrProp
  1009. );
  1010. [propput]
  1011. HRESULT LdapQuery(
  1012. [in] BSTR bstrProp
  1013. );
  1014. [propget]
  1015. HRESULT AppMembers(
  1016. [out, retval] VARIANT *pvarProp
  1017. );
  1018. [propget]
  1019. HRESULT AppNonMembers(
  1020. [out, retval] VARIANT *pvarProp
  1021. );
  1022. [propget]
  1023. HRESULT Members(
  1024. [out, retval] VARIANT *pvarProp
  1025. );
  1026. [propget]
  1027. HRESULT NonMembers(
  1028. [out, retval] VARIANT *pvarProp
  1029. );
  1030. [propget]
  1031. HRESULT Description(
  1032. [out, retval] BSTR *pbstrDescription
  1033. );
  1034. [propput]
  1035. HRESULT Description(
  1036. [in] BSTR bstrDescription
  1037. );
  1038. HRESULT AddAppMember(
  1039. [in] BSTR bstrProp,
  1040. [in,optional] VARIANT varReserved
  1041. );
  1042. HRESULT DeleteAppMember(
  1043. [in] BSTR bstrProp,
  1044. [in,optional] VARIANT varReserved
  1045. );
  1046. HRESULT AddAppNonMember(
  1047. [in] BSTR bstrProp,
  1048. [in,optional] VARIANT varReserved
  1049. );
  1050. HRESULT DeleteAppNonMember(
  1051. [in] BSTR bstrProp,
  1052. [in,optional] VARIANT varReserved
  1053. );
  1054. HRESULT AddMember(
  1055. [in] BSTR bstrProp,
  1056. [in,optional] VARIANT varReserved
  1057. );
  1058. HRESULT DeleteMember(
  1059. [in] BSTR bstrProp,
  1060. [in,optional] VARIANT varReserved
  1061. );
  1062. HRESULT AddNonMember(
  1063. [in] BSTR bstrProp,
  1064. [in,optional] VARIANT varReserved
  1065. );
  1066. HRESULT DeleteNonMember(
  1067. [in] BSTR bstrProp,
  1068. [in,optional] VARIANT varReserved
  1069. );
  1070. [propget]
  1071. HRESULT Writable(
  1072. [out,retval] BOOL *pfProp
  1073. );
  1074. HRESULT GetProperty(
  1075. [in] LONG lPropId,
  1076. [in, optional] VARIANT varReserved,
  1077. [out, retval] VARIANT* pvarProp
  1078. );
  1079. HRESULT SetProperty(
  1080. [in] LONG lPropId,
  1081. [in] VARIANT varProp,
  1082. [in, optional] VARIANT varReserved
  1083. );
  1084. HRESULT AddPropertyItem(
  1085. [in] LONG lPropId,
  1086. [in] VARIANT varProp,
  1087. [in, optional] VARIANT varReserved
  1088. );
  1089. HRESULT DeletePropertyItem(
  1090. [in] LONG lPropId,
  1091. [in] VARIANT varProp,
  1092. [in, optional] VARIANT varReserved
  1093. );
  1094. HRESULT Submit(
  1095. [in, defaultvalue(0)] LONG lFlags,
  1096. [in, optional] VARIANT varReserved
  1097. );
  1098. HRESULT AddMemberName(
  1099. [in] BSTR bstrProp,
  1100. [in,optional] VARIANT varReserved
  1101. );
  1102. HRESULT DeleteMemberName(
  1103. [in] BSTR bstrProp,
  1104. [in,optional] VARIANT varReserved
  1105. );
  1106. HRESULT AddNonMemberName(
  1107. [in] BSTR bstrProp,
  1108. [in,optional] VARIANT varReserved
  1109. );
  1110. HRESULT DeleteNonMemberName(
  1111. [in] BSTR bstrProp,
  1112. [in,optional] VARIANT varReserved
  1113. );
  1114. [propget]
  1115. HRESULT MembersName(
  1116. [out, retval] VARIANT *pvarProp
  1117. );
  1118. [propget]
  1119. HRESULT NonMembersName(
  1120. [out, retval] VARIANT *pvarProp
  1121. );
  1122. };
  1123. //IAzApplicationGroups
  1124. [
  1125. object,
  1126. uuid(4ce66ad5-9f3c-469d-a911-b99887a7e685),
  1127. helpstring("IAzApplicationGroups Interface"),
  1128. pointer_default(unique)
  1129. ]
  1130. interface IAzApplicationGroups : IDispatch
  1131. {
  1132. [propget, id(0)]
  1133. HRESULT Item(
  1134. [in] LONG Index,
  1135. [out, retval] VARIANT *pvarObtPtr
  1136. );
  1137. [propget, id(1)]
  1138. HRESULT Count(
  1139. [out, retval] LONG *plCount
  1140. );
  1141. [propget, id(DISPID_NEWENUM)]
  1142. HRESULT _NewEnum(
  1143. [out, retval] LPUNKNOWN* ppEnumPtr
  1144. );
  1145. };
  1146. //IAzRole
  1147. [
  1148. object,
  1149. uuid(859e0d8d-62d7-41d8-a034-c0cd5d43fdfa),
  1150. helpstring("IAzRole Interface"),
  1151. pointer_default(unique)
  1152. ]
  1153. interface IAzRole : IDispatch
  1154. {
  1155. [propget]
  1156. HRESULT Name(
  1157. [out, retval] BSTR *pbstrName
  1158. );
  1159. [propput]
  1160. HRESULT Name(
  1161. [in] BSTR bstrName
  1162. );
  1163. [propget]
  1164. HRESULT Description(
  1165. [out, retval] BSTR *pbstrDescription
  1166. );
  1167. [propput]
  1168. HRESULT Description(
  1169. [in] BSTR bstrDescription
  1170. );
  1171. [propget]
  1172. HRESULT ApplicationData(
  1173. [out, retval] BSTR *pbstrApplicationData
  1174. );
  1175. [propput]
  1176. HRESULT ApplicationData(
  1177. [in] BSTR bstrApplicationData
  1178. );
  1179. HRESULT AddAppMember(
  1180. [in] BSTR bstrProp,
  1181. [in,optional] VARIANT varReserved
  1182. );
  1183. HRESULT DeleteAppMember(
  1184. [in] BSTR bstrProp,
  1185. [in,optional] VARIANT varReserved
  1186. );
  1187. HRESULT AddTask(
  1188. [in] BSTR bstrProp,
  1189. [in,optional] VARIANT varReserved
  1190. );
  1191. HRESULT DeleteTask(
  1192. [in] BSTR bstrProp,
  1193. [in,optional] VARIANT varReserved
  1194. );
  1195. HRESULT AddOperation(
  1196. [in] BSTR bstrProp,
  1197. [in,optional] VARIANT varReserved
  1198. );
  1199. HRESULT DeleteOperation(
  1200. [in] BSTR bstrProp,
  1201. [in,optional] VARIANT varReserved
  1202. );
  1203. HRESULT AddMember(
  1204. [in] BSTR bstrProp,
  1205. [in,optional] VARIANT varReserved
  1206. );
  1207. HRESULT DeleteMember(
  1208. [in] BSTR bstrProp,
  1209. [in,optional] VARIANT varReserved
  1210. );
  1211. [propget]
  1212. HRESULT Writable(
  1213. [out,retval] BOOL *pfProp
  1214. );
  1215. HRESULT GetProperty(
  1216. [in] LONG lPropId,
  1217. [in, optional] VARIANT varReserved,
  1218. [out, retval] VARIANT *pvarProp
  1219. );
  1220. HRESULT SetProperty(
  1221. [in] LONG lPropId,
  1222. [in] VARIANT varProp,
  1223. [in, optional] VARIANT varReserved
  1224. );
  1225. [propget]
  1226. HRESULT AppMembers(
  1227. [out,retval] VARIANT *pvarProp
  1228. );
  1229. [propget]
  1230. HRESULT Members(
  1231. [out,retval] VARIANT *pvarProp
  1232. );
  1233. [propget]
  1234. HRESULT Operations(
  1235. [out,retval] VARIANT *pvarProp
  1236. );
  1237. [propget]
  1238. HRESULT Tasks(
  1239. [out,retval] VARIANT *pvarProp
  1240. );
  1241. HRESULT AddPropertyItem(
  1242. [in] LONG lPropId,
  1243. [in] VARIANT varProp,
  1244. [in, optional] VARIANT varReserved
  1245. );
  1246. HRESULT DeletePropertyItem(
  1247. [in] LONG lPropId,
  1248. [in] VARIANT varProp,
  1249. [in, optional] VARIANT varReserved
  1250. );
  1251. HRESULT Submit(
  1252. [in, defaultvalue(0)] LONG lFlags,
  1253. [in, optional] VARIANT varReserved
  1254. );
  1255. HRESULT AddMemberName(
  1256. [in] BSTR bstrProp,
  1257. [in,optional] VARIANT varReserved
  1258. );
  1259. HRESULT DeleteMemberName(
  1260. [in] BSTR bstrProp,
  1261. [in,optional] VARIANT varReserved
  1262. );
  1263. [propget]
  1264. HRESULT MembersName(
  1265. [out, retval] VARIANT *pvarProp
  1266. );
  1267. };
  1268. //IAzRoles
  1269. [
  1270. object,
  1271. uuid(95e0f119-13b4-4dae-b65f-2f7d60d822e4),
  1272. helpstring("IAzRoles Interface"),
  1273. pointer_default(unique)
  1274. ]
  1275. interface IAzRoles : IDispatch
  1276. {
  1277. [propget, id(0)]
  1278. HRESULT Item(
  1279. [in] LONG Index,
  1280. [out, retval] VARIANT *pvarObtPtr
  1281. );
  1282. [propget, id(1)]
  1283. HRESULT Count(
  1284. [out, retval] LONG *plCount
  1285. );
  1286. [propget, id(DISPID_NEWENUM)]
  1287. HRESULT _NewEnum(
  1288. [out, retval] LPUNKNOWN* ppEnumPtr
  1289. );
  1290. };
  1291. //IAzClientContext
  1292. [
  1293. object,
  1294. uuid(eff1f00b-488a-466d-afd9-a401c5f9eef5),
  1295. helpstring("IAzClientContext Interface"),
  1296. pointer_default(unique)
  1297. ]
  1298. interface IAzClientContext : IDispatch
  1299. {
  1300. HRESULT AccessCheck(
  1301. [in] BSTR bstrObjectName,
  1302. [in] VARIANT varScopeNames,
  1303. [in] VARIANT varOperations,
  1304. [in,optional] VARIANT varParameterNames,
  1305. [in,optional] VARIANT varParameterValues,
  1306. [in,optional] VARIANT varInterfaceNames,
  1307. [in,optional] VARIANT varInterfaceFlags,
  1308. [in,optional] VARIANT varInterfaces,
  1309. [out, retval] VARIANT* pvarResults
  1310. );
  1311. HRESULT GetBusinessRuleString(
  1312. [out, retval] BSTR* pbstrBusinessRuleString
  1313. );
  1314. [propget]
  1315. HRESULT UserDn(
  1316. [out,retval] BSTR *pbstrProp
  1317. );
  1318. [propget]
  1319. HRESULT UserSamCompat(
  1320. [out,retval] BSTR *pbstrProp
  1321. );
  1322. [propget]
  1323. HRESULT UserDisplay(
  1324. [out,retval] BSTR *pbstrProp
  1325. );
  1326. [propget]
  1327. HRESULT UserGuid(
  1328. [out,retval] BSTR *pbstrProp
  1329. );
  1330. [propget]
  1331. HRESULT UserCanonical(
  1332. [out,retval] BSTR *pbstrProp
  1333. );
  1334. [propget]
  1335. HRESULT UserUpn(
  1336. [out,retval] BSTR *pbstrProp
  1337. );
  1338. [propget]
  1339. HRESULT UserDnsSamCompat(
  1340. [out,retval] BSTR *pbstrProp
  1341. );
  1342. HRESULT GetProperty(
  1343. [in] LONG lPropId,
  1344. [in, optional] VARIANT varReserved,
  1345. [out, retval] VARIANT* pvarProp
  1346. );
  1347. HRESULT GetRoles(
  1348. [in, optional] BSTR bstrScopeName,
  1349. [out, retval] VARIANT* pvarRoleNames
  1350. );
  1351. [propget]
  1352. HRESULT RoleForAccessCheck(
  1353. [out,retval] BSTR *pbstrProp
  1354. );
  1355. [propput]
  1356. HRESULT RoleForAccessCheck(
  1357. [in] BSTR bstrProp
  1358. );
  1359. };
  1360. //IAzBizRuleContext
  1361. [
  1362. object,
  1363. uuid(e192f17d-d59f-455e-a152-940316cd77b2),
  1364. helpstring("IAzBizRuleContext Interface"),
  1365. pointer_default(unique)
  1366. ]
  1367. interface IAzBizRuleContext : IDispatch
  1368. {
  1369. [propput]
  1370. HRESULT BusinessRuleResult(
  1371. [in] BOOL bResult
  1372. );
  1373. [propput]
  1374. HRESULT BusinessRuleString(
  1375. [in] BSTR bstrBusinessRuleString
  1376. );
  1377. [propget]
  1378. HRESULT BusinessRuleString(
  1379. [out, retval] BSTR* pbstrBusinessRuleString
  1380. );
  1381. HRESULT GetParameter(
  1382. [in] BSTR bstrParameterName,
  1383. [out, retval] VARIANT* pvarParameterValue
  1384. );
  1385. };
  1386. //AZROLESLib
  1387. [
  1388. uuid(11A8B8EE-BF30-409A-8EF7-3A143EF70332),
  1389. version(1.0),
  1390. helpstring("azroles 1.0 Type Library")
  1391. ]
  1392. library AZROLESLib
  1393. {
  1394. importlib("stdole32.tlb");
  1395. importlib("stdole2.tlb");
  1396. //AzAuthorizationStore
  1397. [
  1398. uuid(b2bcff59-a757-4b0b-a1bc-ea69981da69e),
  1399. helpstring("AzAuthorizationStore Class")
  1400. ]
  1401. coclass AzAuthorizationStore
  1402. {
  1403. [default] interface IAzAuthorizationStore;
  1404. };
  1405. //AzBizRuleContext
  1406. [
  1407. uuid(5c2dc96f-8d51-434b-b33c-379bccae77c3),
  1408. helpstring("AzBizRuleContext Class")
  1409. ]
  1410. coclass AzBizRuleContext
  1411. {
  1412. [default] interface IAzBizRuleContext;
  1413. };
  1414. // constant defines in type library
  1415. //
  1416. // Common Property IDs
  1417. //
  1418. // This list of property IDs are common to all objects.
  1419. // Each object should pick specific property ids
  1420. //
  1421. cpp_quote("")
  1422. cpp_quote("// List of poperty IDs for Az objects.")
  1423. cpp_quote("")
  1424. typedef enum tagAZ_PROP_CONSTANTS
  1425. {
  1426. // Common Property IDs
  1427. AZ_PROP_NAME = 1,
  1428. AZ_PROP_DESCRIPTION = 2,
  1429. AZ_PROP_WRITABLE = 3,
  1430. AZ_PROP_APPLICATION_DATA = 4,
  1431. AZ_PROP_CHILD_CREATE = 5,
  1432. //
  1433. // Maximum length (in characters) of the object name
  1434. //
  1435. AZ_MAX_APPLICATION_NAME_LENGTH = 512,
  1436. AZ_MAX_OPERATION_NAME_LENGTH = 64,
  1437. AZ_MAX_TASK_NAME_LENGTH = 64,
  1438. AZ_MAX_SCOPE_NAME_LENGTH = 65536,
  1439. AZ_MAX_GROUP_NAME_LENGTH = 64,
  1440. AZ_MAX_ROLE_NAME_LENGTH = 64,
  1441. AZ_MAX_NAME_LENGTH = 65536,
  1442. //
  1443. // Maximum length (in characters) of the description of an object
  1444. //
  1445. AZ_MAX_DESCRIPTION_LENGTH = 1024,
  1446. //
  1447. // Maximum length (in characters) of the opaque data
  1448. //
  1449. AZ_MAX_APPLICATION_DATA_LENGTH = 4096,
  1450. //
  1451. // Flags to Submit methods
  1452. //
  1453. AZ_SUBMIT_FLAG_ABORT = 0x0001, // Abort the operation instead of commiting it
  1454. //
  1455. // Object specific property IDs
  1456. //
  1457. // AzAuthorizationStore specific IDs
  1458. AZ_MAX_POLICY_URL_LENGTH = 65536,
  1459. AZ_AZSTORE_FLAG_CREATE = 0x0001, // Create the policy instead of opening it
  1460. AZ_AZSTORE_FLAG_MANAGE_STORE_ONLY = 0x0002, // Open the store for administrative purposes only
  1461. // There will be no runtime actions performed
  1462. AZ_AZSTORE_FLAG_BATCH_UPDATE = 0x0004, // Implies update should be performed in batch mode
  1463. AZ_AZSTORE_FLAG_AUDIT_IS_CRITICAL = 0x0008, // Audit is critical, fail if cannot do audit
  1464. AZ_AZSTORE_FORCE_APPLICATION_CLOSE = 0x0010, // Forcefully unload an AzApplication object from cache
  1465. AZ_PROP_AZSTORE_DOMAIN_TIMEOUT = 100,
  1466. AZ_AZSTORE_DEFAULT_DOMAIN_TIMEOUT = (15*1000),
  1467. AZ_PROP_AZSTORE_SCRIPT_ENGINE_TIMEOUT = 101,
  1468. AZ_AZSTORE_MIN_DOMAIN_TIMEOUT = 500, // 0.5 seconds
  1469. AZ_AZSTORE_MIN_SCRIPT_ENGINE_TIMEOUT = (5*1000), // 5 seconds
  1470. AZ_AZSTORE_DEFAULT_SCRIPT_ENGINE_TIMEOUT = (45*1000), // 45 seconds
  1471. AZ_PROP_AZSTORE_MAX_SCRIPT_ENGINES = 102,
  1472. AZ_AZSTORE_DEFAULT_MAX_SCRIPT_ENGINES = 120, // 120 scripts cahced by default
  1473. AZ_PROP_AZSTORE_MAJOR_VERSION = 103,
  1474. AZ_PROP_AZSTORE_MINOR_VERSION = 104,
  1475. AZ_PROP_AZSTORE_TARGET_MACHINE = 105,
  1476. // Operation specific IDs
  1477. AZ_PROP_OPERATION_ID = 200,
  1478. // Task specific IDs
  1479. AZ_PROP_TASK_OPERATIONS = 300,
  1480. AZ_PROP_TASK_BIZRULE = 301,
  1481. AZ_PROP_TASK_BIZRULE_LANGUAGE = 302,
  1482. AZ_PROP_TASK_TASKS = 303,
  1483. AZ_PROP_TASK_BIZRULE_IMPORTED_PATH = 304,
  1484. AZ_PROP_TASK_IS_ROLE_DEFINITION = 305,
  1485. AZ_MAX_TASK_BIZRULE_LENGTH = 65536,
  1486. AZ_MAX_TASK_BIZRULE_LANGUAGE_LENGTH = 64,
  1487. AZ_MAX_TASK_BIZRULE_IMPORTED_PATH_LENGTH = 512,
  1488. AZ_MAX_BIZRULE_STRING = 65536,
  1489. // Group specific IDs
  1490. AZ_PROP_GROUP_TYPE = 400,
  1491. AZ_GROUPTYPE_LDAP_QUERY = 1,
  1492. AZ_GROUPTYPE_BASIC = 2,
  1493. AZ_PROP_GROUP_APP_MEMBERS = 401,
  1494. AZ_PROP_GROUP_APP_NON_MEMBERS = 402,
  1495. AZ_PROP_GROUP_LDAP_QUERY = 403,
  1496. AZ_MAX_GROUP_LDAP_QUERY_LENGTH = 4096,
  1497. AZ_PROP_GROUP_MEMBERS = 404,
  1498. AZ_PROP_GROUP_NON_MEMBERS = 405,
  1499. AZ_PROP_GROUP_MEMBERS_NAME = 406,
  1500. AZ_PROP_GROUP_NON_MEMBERS_NAME = 407,
  1501. // Role specific IDs
  1502. AZ_PROP_ROLE_APP_MEMBERS = 500,
  1503. AZ_PROP_ROLE_MEMBERS = 501,
  1504. AZ_PROP_ROLE_OPERATIONS = 502,
  1505. AZ_PROP_ROLE_TASKS = 504,
  1506. AZ_PROP_ROLE_MEMBERS_NAME = 505,
  1507. // Scope specific IDs
  1508. AZ_PROP_SCOPE_BIZRULES_WRITABLE = 600,
  1509. AZ_PROP_SCOPE_CAN_BE_DELEGATED = 601,
  1510. // Client Context specific IDs
  1511. // CN=John Doe, OU=Software, OU=Engineering, O=Widget, C=US
  1512. AZ_PROP_CLIENT_CONTEXT_USER_DN = 700,
  1513. // Engineering\JohnDoe
  1514. AZ_PROP_CLIENT_CONTEXT_USER_SAM_COMPAT = 701,
  1515. // John Doe
  1516. AZ_PROP_CLIENT_CONTEXT_USER_DISPLAY = 702,
  1517. // String-ized GUID as returned by IIDFromString().
  1518. // eg: {4fa050f0-f561-11cf-bdd9-00aa003a77b6}
  1519. AZ_PROP_CLIENT_CONTEXT_USER_GUID = 703,
  1520. // engineering.widget.com/software/John Doe
  1521. AZ_PROP_CLIENT_CONTEXT_USER_CANONICAL = 704,
  1522. // [email protected]
  1523. AZ_PROP_CLIENT_CONTEXT_USER_UPN = 705,
  1524. // DNS domain name + SAM username
  1525. // eg: engineering.widget.com\JohnDoe
  1526. AZ_PROP_CLIENT_CONTEXT_USER_DNS_SAM_COMPAT = 707,
  1527. //
  1528. // role name for access check, e.g., bank teller, admin
  1529. //
  1530. AZ_PROP_CLIENT_CONTEXT_ROLE_FOR_ACCESS_CHECK = 708,
  1531. // Application specific IDs
  1532. AZ_PROP_APPLICATION_AUTHZ_INTERFACE_CLSID = 800,
  1533. AZ_PROP_APPLICATION_VERSION = 801,
  1534. AZ_MAX_APPLICATION_VERSION_LENGTH = 512,
  1535. AZ_PROP_APPLICATION_NAME = 802,
  1536. // container object specific IDs
  1537. AZ_PROP_APPLY_STORE_SACL = 900,
  1538. AZ_PROP_GENERATE_AUDITS = 901,
  1539. AZ_PROP_POLICY_ADMINS = 902,
  1540. AZ_PROP_POLICY_READERS = 903,
  1541. AZ_PROP_DELEGATED_POLICY_USERS = 904,
  1542. AZ_PROP_POLICY_ADMINS_NAME = 905,
  1543. AZ_PROP_POLICY_READERS_NAME = 906,
  1544. AZ_PROP_DELEGATED_POLICY_USERS_NAME = 907,
  1545. // options for InitializeClientContextFromStringSid
  1546. AZ_CLIENT_CONTEXT_SKIP_GROUP = 1,
  1547. } AZ_PROP_CONSTANTS;
  1548. };
  1549. cpp_quote("#ifndef OLESCRIPT_E_SYNTAX")
  1550. cpp_quote("#define OLESCRIPT_E_SYNTAX _HRESULT_TYPEDEF_(0x80020101L)")
  1551. cpp_quote("#endif // OLESCRIPT_E_SYNTAX")