[size=+3]安全架构(Security Schema)
webERP 的安全架构由下面的部分组成: - 用户:
应该为每个用户创建单独的账户。
用户账号可以由管理员添加或删除:
Main Menu(主菜单) > Setup(设置) > User Accounts(用户账号)(WWW_Users.php)
+++
通过选择标记为'安全角色(Security Role)'的下拉表选择为每个用户赋予一个'安全角色(Security Role)'。
默认地可用的安全角色列表参见下面内容。
+++ - 安全角色:
安全角色可以由管理员在 Main Menu(主菜单) > Setup(设置) > User Accounts(用户账号)(WWW_Users.php)菜单添加或删除。
+++
每个 '安全角色(Security Role)'被赋予一或多个 '安全令牌(Security Tokens)'。
被赋予特定的'安全角色(Security Role)'的'安全令牌(Security Tokens)'可以从Main Menu(主菜单) > Setup(设置) > Role Permissions(角色许可) (WWW_Access.php)菜单改变。
+++
请交互参见下面的默认的'安全角色(Security Role)'及赋予的'安全令牌(Security Tokens)'。 - 安全令牌(Security Tokens):
默认地,有15个'安全令牌(Security Token)'选择可用。
参见下面的默认的'安全令牌(Security Token)'列表。
每个'安全令牌(Security Token)'允许访问一或多个webERP页面。
+++
还没有工具可以添加或删除'安全令牌(Security Token)'。但是管理员可以编辑后面的表(securitytokens)。 - PageSecurity 值:
每个 webERP 页面包含一个1 到 15的“页面安全(Page Security)”的值。
这是放置在每个页面的硬代码;例如: $PageSecurity = 1;
对于用户对页面访问,“页面安全(Page Security)”值与 '安全令牌(Security Token)'值相对应。
+++
还没有改变PageSecurity值的工具。.
但是,管理员可以直接编辑每个页。
这些部分如下地协调运行。在登录时用户名和密码组合能够让系统识别出用户的'安全角色(Security Role)'。用户的安全角色决定对于该用户什么安全令牌可用。这个用户就允许访问“页安全”值等于该用户可用的“安全令牌”值的任何页面。
安全架构更全面的说明如下:
每个webERP页(脚本)被赋予一个特定的页安全(PageSecurity)值。这个页安全值是放置在每个脚本中的硬编码。在写作本文档时, 这是个1到15之间的数。如果有必要有更多的级别的话,这个值可能由管理员或开发者扩展。每个页的默认的页安全值在下面的表中确定。
如果页的页安全值(PageSecurity)是包含在SESSION AllowedPageSecurityTokens数组中作为确定用户访问级别(安全角色)的的一个数字,那么该用户允许访问这页。用户的访问级别(安 全角色)是个整数,表示在用户设置页(WWW_users.php)赋予用户的安全角色。
对于所有页的访问权限在session.inc脚本(或者对于PDF,在PDF_Starter.inc)中检查。在用户登录时(- session.inc)从数据库存取$_SESSION['AccessLevel'] 变量的值。这个变量指向该用户的安全角色。数字数组SESSION['AllowedPageSecurityTokens']的值夜从数据库取得,是基 于用户的访问级别(AccessLevel)-或者说是安全角色的。任何页都有个$PageSecurity 值,等于这个数组中被认为是代表授权页的数字值。
如果你想要添加更多的安全角色,那么你必须用角色许可(Role Permissions)脚本(WWW.Access.php)。你还必须为每个新安全角色指定安全令牌。赋予了新安全角色的用户就可以访问页安全值等于赋予新安全角色的安全令牌值的任何页了。这种机制允许管理员控制谁可以访问什么。
通过改变赋予每个用户的安全角色,和赋予每个安全角色的安全令牌,可以对所有用户的安全访问进行订制。做出这些修改时,可以参考下面表中的默认值。页安全(PageSecurity)值也必须知道。默认值设置必要时可以修改。
安全架构表(Security Scheme Tables):
表.字段 样本数据 说明
www_user.userid
www_user.fullaccess
demo
8
这些字段由WWW_Users.php更新。
securityroles.secroleid
securityroles.secrolename
8
System Administrator
这些字段在WWW_Access.php创建或删除‘安全角色’时改变。
securitygroups.secroleid
securitygroups.tokenid
8
1
这些字段在 WWW_Access.php赋予‘安全角色’以'安全令牌'或删除时更新。
securitytokens.tokenid
securitytokens.tokenname
1
Menu and Order Entry Only
预定义15个安全令牌。
这种数据不能用任何webERP工具编辑。
webERP page
CustomerInquiry.php
$PageSecurity = 1;
每个页的页安全值是预定义好的,不能用任何的webERP工具编辑。
安全角色:3.0.5版本默认的:
1 - 查询/订单(Inquiries/Order Entry)
2 - 生产、库存管理(Manufac/Stock Admin)
3 - 采购商务专员(Purchasing officer)
4 - 应付会计文员(AP Clerk)
5 - 应收账款对账员(AR Clerk)
6 - 会计师(Accountant)
7 - 仅客户登录(Customer logon only)
8 - 系统管理员(System Administrator)
安全令牌的指派 3.0.5版本默认的:
1 - 查询/订单令牌(Inquiries/Order Entry tokens) = 1, 2
2 - 生产、库存管理令牌(Manufac/Stock Admin tokens) = 1, 2, 11
3 - 采购商务专员令牌(Purchasing officer tokens) = 1, 2, 3, 4, 5, 11
4 - 应付会计文员令牌(AP Clerk tokens) = 1, 2, 5
5 - 应收账款对账员令牌(AR Clerk tokens) = 1, 2, 5, 11
6 - 会计师令牌(Accountant tokens) = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11
7 - 仅客户登录令牌(Customer logon only token) = 1
8 - 系统管理员令牌(System Administrator) = 目前定义的全部令牌
安全令牌:3.0.5版本默认的: (这段的这些名词拿不准,现在这样了。征集译法了,不过没有稿费哈)
1 - 仅菜单和订单
2 - 库存,AR & AP查询,&报表(Inventory, AR & AP inquiries & reports)
3 - AR设置,顾客,区域,收入,分派、贷方传票,salesfolk,信用状况(AR setup customers, areas, receipts, allocations, credit notes, salesfolk, credit status)
4 - PO Entry, Purchasing data & reorder levels
5 - AP Invoice, Credit, Payment entry. Supplier maintenance
6 - 未用
7 - 银行调节(Bank reconciliations)
8 - GL Journals, COA, sales/COGS GL postings, terms, cost update, company prefs
9 - 总帐维护(Ledger Maintenance and Manufacturing)
10 - GL Journals, COA, sales/COGS GL postings, terms, cost update, company prefs (真品证书(COA) Commission on Aduit
)
11 - Pricing & Inventory locations, categories, receiving & adjustments
12 - 未用
13 - 未用
14 - 未用
15 - 用户管理、系统管理设置工具(User management, System Admin setup & utilities)
(这段的这些名词拿不准,现在这样了。征集译法了,不过没有稿费哈:这段疑难的到此为止)
页安全值: 3.0.5版本默认的:
页 (脚本) 文件名 页安全值
CustomerInquiry.php
1
GetStockImage.php
1
index.php
1
Logout.php
1
MailInventoryValuation.php
1
PDFStockLocTransfer.php
1
PDFStockNegatives.php
1
PrintCustTrans.php
1
PrintCustTransPortrait.php
1
reportwriter/FormMaker.php
1
reportwriter/ReportMaker.php
1
SelectCompletedOrder.php
1
SelectOrderItems.php
1
AgedDebtors.php
2
AgedSuppliers.php
2
BOMInquiry.php
2
BOMListing.php
2
ConfirmDispatch_Invoice.php
2
CustomerTransInquiry.php
2
CustWhereAlloc.php
2
DebtorsAtPeriodEnd.php
2
EmailCustTrans.php
2
FTP_RadioBeacon.php
2
InventoryPlanning.php
2
InventoryValuation.php
2
OrderDetails.php
2
OutstandingGRNs.php
2
PDFCustomerList.php
2
PDFLowGP.php
2
PDFPriceList.php
2
PDFQuotation.php
2
PDFStockCheckComparison.php
2
PeriodsInquiry.php
2
PO_OrderDetails.php
2
PO_PDFPurchOrder.php
2
PO_SelectOSPurchOrder.php
2
PO_SelectPurchOrder.php
2
Prices.php
2
PrintCustOrder_generic.php
2
PrintCustOrder.php
2
PrintCustStatements.php
2
reportwriter/admin/ReportCreator.php
2
SalesAnalReptCols.php
2
SalesAnalRepts.php
2
SalesAnalysis_UserDefined.php
2
SelectCustomer.php
2
SelectProduct.php
2
SelectRecurringSalesOrder.php
2
SelectSalesOrder.php
2
SelectSupplier.php
2
ShiptsList.php
2
StockCheck.php
2
StockCostUpdate.php
2
StockCounts.php
2
StockLocMovements.php
2
StockLocStatus.php
2
StockMovements.php
2
StockQuantityByDate.php
2
StockSerialItems.php
2
StockStatus.php
2
StockUsage.php
2
StockUsageGraph.php
2
SupplierBalsAtPeriodEnd.php
2
SupplierTransInquiry.php
2
Tax.php
2
WhereUsedInquiry.php
2
Z_CheckAllocs.php
2
Areas.php
3
Credit_Invoice.php
3
CreditItemsControlled.php
3
CreditStatus.php
3
CustomerAllocations.php
3
CustomerBranches.php
3
CustomerReceipt.php
3
Customers.php
3
PDFBankingSummary.php
3
PDFChequeListing.php
3
PDFDeliveryDifferences.php
3
PDFDIFOT.php
3
PDFOrdersInvoiced.php
3
PDFOrderStatus.php
3
SalesPeople.php
3
SelectCreditItems.php
3
StockSerialItemResearch.php
3
PO_Header.php
4
PO_Items.php
4
PurchData.php
4
SpecialOrder.php
4
StockReorderLevel.php
4
Payments.php
5
PrintCheque.php
5
StockQties_csv.php
5
SuppCreditGRNs.php
5
SuppInvGRNs.php
5
SupplierAllocations.php
5
SupplierCredit.php
5
SupplierInvoice.php
5
Suppliers.php
5
SuppPaymentRun.php
5
SuppShiptChgs.php
5
SuppTransGLAnalysis.php
5
SalesGraph.php
6
BankMatching.php
7
BankReconciliation.php
7
GLAccountInquiry.php
8
GLBalanceSheet.php
8
GLCodesInquiry.php
8
GLProfit_Loss.php
8
GLTransInquiry.php
8
GLTrialBalance.php
8
SelectGLAccount.php
8
BOMs.php
9
Currencies.php
9
Z_CreateChartDetails.php
9
AccountGroups.php
10
AccountSections.php
10
BankAccounts.php
10
COGSGLPostings.php
10
CompanyPreferences.php
10
EDIMessageFormat.php
10
GLAccounts.php
10
GLJournal.php
10
PaymentTerms.php
10
SalesGLPostings.php
10
WorkOrderEntry.php
10
WorkOrderIssue.php
10
ConfirmDispatchControlled_Invoice.php
11
CustEDISetup.php
11
DiscountCategories.php
11
DiscountMatrix.php
11
EDIProcessOrders.php
11
FreightCosts.php
11
GoodsReceived.php
11
GoodsReceivedControlled.php
11
Locations.php
11
Prices_Customer.php
11
ReverseGRN.php
11
SalesCategories.php
11
ShipmentCosting.php
11
Shipments.php
11
Shipt_Select.php
11
StockAdjustments.php
11
StockAdjustmentsControlled.php
11
StockCategories.php
11
StockLocTransfer.php
11
StockLocTransferReceive.php
11
Stocks.php
11
StockTransferControlled.php
11
StockTransfers.php
11
TaxAuthorityRates.php
11
EDISendInvoices.php
15
PaymentMethods.php
15
SalesTypes.php
15
Shippers.php
15
SystemParameters.php
15
TaxCategories.php
15
TaxProvinces.php
15
UnitsOfMeasure.php
15
Z_CheckAllocationsFrom.php
15
Z_index.php
15
Z_MakeNewCompany.php
15
Z_poAddLanguage.php
15
Z_poAdmin.php
15
Z_poEditLangHeader.php
15
Z_poEditLangModule.php
15
Z_poRebuildDefault.php
15
Z_Upgrade_3.01-3.02.php
15
Z_Upgrade_3.04-3.05.php
15