db_schema.xml 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?xml version="1.0"?>
  2. <!--
  3. /**
  4. * Copyright © Magento, Inc. All rights reserved.
  5. * See COPYING.txt for license details.
  6. */
  7. -->
  8. <schema xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  9. xsi:noNamespaceSchemaLocation="urn:magento:framework:Setup/Declaration/Schema/etc/schema.xsd">
  10. <table name="authorization_role" resource="default" engine="innodb" comment="Admin Role Table">
  11. <column xsi:type="int" name="role_id" padding="10" unsigned="true" nullable="false" identity="true"
  12. comment="Role ID"/>
  13. <column xsi:type="int" name="parent_id" padding="10" unsigned="true" nullable="false" identity="false"
  14. default="0" comment="Parent Role ID"/>
  15. <column xsi:type="smallint" name="tree_level" padding="5" unsigned="true" nullable="false" identity="false"
  16. default="0" comment="Role Tree Level"/>
  17. <column xsi:type="smallint" name="sort_order" padding="5" unsigned="true" nullable="false" identity="false"
  18. default="0" comment="Role Sort Order"/>
  19. <column xsi:type="varchar" name="role_type" nullable="false" length="1" default="0" comment="Role Type"/>
  20. <column xsi:type="int" name="user_id" padding="10" unsigned="true" nullable="false" identity="false" default="0"
  21. comment="User ID"/>
  22. <column xsi:type="varchar" name="user_type" nullable="true" length="16" comment="User Type"/>
  23. <column xsi:type="varchar" name="role_name" nullable="true" length="50" comment="Role Name"/>
  24. <constraint xsi:type="primary" referenceId="PRIMARY">
  25. <column name="role_id"/>
  26. </constraint>
  27. <index referenceId="AUTHORIZATION_ROLE_PARENT_ID_SORT_ORDER" indexType="btree">
  28. <column name="parent_id"/>
  29. <column name="sort_order"/>
  30. </index>
  31. <index referenceId="AUTHORIZATION_ROLE_TREE_LEVEL" indexType="btree">
  32. <column name="tree_level"/>
  33. </index>
  34. </table>
  35. <table name="authorization_rule" resource="default" engine="innodb" comment="Admin Rule Table">
  36. <column xsi:type="int" name="rule_id" padding="10" unsigned="true" nullable="false" identity="true"
  37. comment="Rule ID"/>
  38. <column xsi:type="int" name="role_id" padding="10" unsigned="true" nullable="false" identity="false" default="0"
  39. comment="Role ID"/>
  40. <column xsi:type="varchar" name="resource_id" nullable="true" length="255" comment="Resource ID"/>
  41. <column xsi:type="varchar" name="privileges" nullable="true" length="20" comment="Privileges"/>
  42. <column xsi:type="varchar" name="permission" nullable="true" length="10" comment="Permission"/>
  43. <constraint xsi:type="primary" referenceId="PRIMARY">
  44. <column name="rule_id"/>
  45. </constraint>
  46. <constraint xsi:type="foreign" referenceId="AUTHORIZATION_RULE_ROLE_ID_AUTHORIZATION_ROLE_ROLE_ID"
  47. table="authorization_rule" column="role_id" referenceTable="authorization_role"
  48. referenceColumn="role_id" onDelete="CASCADE"/>
  49. <index referenceId="AUTHORIZATION_RULE_RESOURCE_ID_ROLE_ID" indexType="btree">
  50. <column name="resource_id"/>
  51. <column name="role_id"/>
  52. </index>
  53. <index referenceId="AUTHORIZATION_RULE_ROLE_ID_RESOURCE_ID" indexType="btree">
  54. <column name="role_id"/>
  55. <column name="resource_id"/>
  56. </index>
  57. </table>
  58. </schema>