国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

教你輕松給流程增加權限控制程序

2019-11-17 05:02:45
字體:
來源:轉載
供稿:網友
  WF提供權限控制的功能,其中包括兩種方式:ActiveDirectoryRole(通過活動目錄用戶)和WebWorkflowRole(asp.net Role)。下面我以WebWorkflowRole的方式作為權限控制例子做介紹,首先需要安裝ASPnetdb數據庫(通過運行微軟提供的aspnet_regsql.exe文件);App.config文件配置如下:
以下是引用片段:
<?xmlversion="1.0"encoding="utf-8" ?>
<configuration>
 <connectionStrings>
    <addname="SqlServerConnection"
         connectionString="Integrated Security = SSPI;server=localhost/SQLEX </connectionStrings>
 <system.web>
    <roleManagerenabled="true"defaultProvider="SqlProvider">
      <providers>
        <addname="SqlProvider"connectionStringName="SqlServerConnection"
applicationName="ConsoleAppSample"
          type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
      </providers>
    </roleManager>
 </system.web>
</configuration>
 
  通過下面的代碼產生角色:
 
以下是引用片段:
        ///<summary>
        ///產生角色
        ///</summary>
        private void CreateRoles()
        {
            if (!System.Web.Security.Roles.RoleExists("Personnel"))
            {
                System.Web.Security.Roles.CreateRole("Personnel");

                string[] users = { "Amanda", "Jones", "Simpson", "Peter" };
                string[] PersonnelRole = { "Personnel" };

                System.Web.Security.Roles.AddUsersToRoles(users, PersonnelRole);
            }

            if (!System.Web.Security.Roles.RoleExists("DeptManager"))
            {
                System.Web.Security.Roles.CreateRole("DeptManager");

                string[] users1 = { "Betty", "Chris", "Anil", "Derek" };
                string[] DeptManagerRole = { "DeptManager" };

                System.Web.Security.Roles.AddUsersToRoles(users1, DeptManagerRole);
            }            
        }

  假如用登錄用戶"Betty"為部門經理角色,通過下面的代碼可以把登錄用戶和權限控制相結合:GenericIdentity genIdentity = new GenericIdentity("Betty ");通過調用外部事件Activity的方法把genIdentity作為事件的參數傳入流程中。  在流程定義的文件中(Workflow1.cs)定義公共變量:以下是引用片段:
public WorkflowRoleCollection eaInitiators = new System.Workflow.Activities.WorkflowRoleCollection();  通過下面的代碼把部門經理角色增加到流程角色列表:
以下是引用片段:
            //裝載部門經理角色
            WebWorkflowRole eaInitiatorsRole = new WebWorkflowRole("DeptManager");
        eaInitiators.Add(eaInitiatorsRole);
 
  WF通過檢查傳入的登錄名參數是否存在于流程角色列表的某個角色中來實現流程權限控制。
更多文章 更多內容請看Windows權限設置專題,或

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 青河县| 含山县| 镇安县| 华宁县| 镇平县| 民乐县| 杭锦旗| 岳阳市| 西宁市| 司法| 绥阳县| 通城县| 平潭县| 北票市| 普安县| 永泰县| 华安县| 安阳县| 长海县| 宁明县| 阜平县| 黑河市| 宜川县| 东安县| 阜新| 阿合奇县| 保德县| 汉中市| 莒南县| 伊川县| 阿拉尔市| 方山县| 永善县| 靖江市| 永登县| 正定县| 滨海县| 通化县| 青海省| 阿图什市| 桂林市|