浙商银行LDAP设计SOA

摘要:

本文档是IBM为浙商银行SOA暨柜面业务系统项目所提供的实施报告书。具体实施内容和范围请参照服务工作说明书。

 
文档名称
浙商银行SOA暨柜面业务系统项目

LDAP设计方案
作者
刘英学

国际商业机器(中国)投资有限公司
审批者
国际商业机器(中国)有限公司
浙商银行
审批者签名:
签名:

日期:
签名:

日期:
说明
根据国际商业机器(中国)有限公司与浙商银行签订的工作说明书的工作内容,本文档为最终用户浙商银行SOA暨柜面业务系统项目的详细设计方案。
文件名称
浙商银行LDAP子系统设计方案.doc
修订历史 (REVISION HISTORY)
Rev
Section
Type
Date
Author
Remarks
1.0
ALL
New
2008.07
刘英学
创建设计方案的第一版本。
 
 
 
 
 
 
 

 
内容范围

 
本文档是IBM为浙商银行SOA暨柜面业务系统项目所提供的实施报告书。具体实施内容和范围请参照服务工作说明书。

 
 

适用的对象
 

本文档仅适用浙商银行SOA暨柜面业务系统项目
 

 
 

 
 

目录
 

1      用户验证(Authentication)实现方案
1.1     用户名+密码验证:

1.2     指纹验证
2      LDAP Schema设计

2.1     柜员
2.2     机构

2.3     柜组
2.4     交易

2.5     角色
3      目录树设计

3.1     设计原则
3.2     全行目录信息树架构

 
 

 
 

 
 

 
 

 
 

 
 

 
1         用户验证(Authentication)实现方案

本系统需要支持两种方式的单因子用户验证:用户名+密码,指纹验证。
1.1       用户名+密码验证:

目前,有两种方案用于实现LDAP的用户名+密码用户验证,分别是LDAP Simple Bind API以及DIGEST-MD5 SASL Bind
LDAP Simple Bind API的特点如下:

1.        简单,易于使用,Out-of-Box function
2.        存在潜在的安全漏洞,认证过程中密码以明文方式传递

DIGEST-MD5 SASL Bind的特点如下:
1.        IBM 基于业界规范:SASL DIGEST-MD5 的实现方式

2.        安全性更高:在认证过程中不需要传递密码; 
IBM建议采用DIGEST-MD5 SASL Bind方式实现LDAP用户名+密码验证功能。

1.2       指纹验证
通过遵循SASL规范,编写LDAP plug-in,通过扩展LDAP的认证功能,并调用指纹采集设备提供商提供的API,可以实现基于LDAP的指纹用户身份认证。柜员的10个指纹模数据将存储于LDAP中。该方案的优点在于向柜员系统提供了统一的柜员身份认证调用接口。

缺点在于:
      需扩展LDAP的用户身份认证功能,开发/测试工作量大;

      需要第三方指纹信息管理设备提供C/JAVA API,用于实现指纹比对;
      可靠性需通过高质量代码以及LDAPHA设计来保证;

2         LDAP Schema设计
在浙商银行LDAP schema设计中,制定了以下对象的schema,分别是:柜员、机构、柜组、交易、角色。

2.1       柜员
所有人员信息存放在用户目录树中cn=users分支下,所有人员信息的存储不再进行分级存储,所有人员信息都是采用扁平结构进行存储的。

全行的柜员信息都存放在“cn=users,dc=czbank,dc=com”这个分支节点下。

柜员对象类:CZBankTeller

属性名
属性说明
属性类型
CZBankTellerNumber
柜员号
Directory String syntax
CZBankTellerRoles
柜员所拥有的角色 (多值)
Directory String syntax
CZBankTellerTransactions
柜员所能执行的交易(多值)
Directory String syntax
CZBankYWED
柜员的业务额度(业务类型(现金收/现金付/转账)+币种+金额;多值)
Directory String syntax
CZBankYWXE
柜员的业务限额(业务类型+币种+金额;多值)
Directory String syntax
CZBankZGSQED
主管/主办的授权额度(业务类型+币种+金额;多值)
Directory String syntax
CZBankAuthenticationType
柜员认证类型(密码/指纹)
Directory String syntax
CZBankFingerprint
存储采集的指纹模
Directory String syntax
CZBankFingerprint2
存储采集的指纹模
Directory String syntax
CZBankFingerprint3
存储采集的指纹模
Directory String syntax
CZBankFingerprint4
存储采集的指纹模
Directory String syntax
CZBankFingerprint5
存储采集的指纹模
Directory String syntax
CZBankFingerprint6
存储采集指纹模
Directory String syntax
CZBankFingerprint7
存储采集的指纹模
Directory String syntax
CZBankFingerprint8
存储采集的指纹模
Directory String syntax
CZBankFingerprint9
存储采集的指纹模
Directory String syntax
CZBankTellerStatus
柜员状态
Directory String syntax
CZBankLastLoginIP
最后登录IP地址
Directory String syntax
employeenumber
员工号
Directory String syntax
departmentnumber
所属机构编号
Directory String syntax
displayname
柜员名称
Directory String syntax
userpassword
柜员密码
Binary - octet string
business category
所属柜组编号
Directory String syntax
title
柜员等级
Directory String syntax

2.2       机构

所有机构的信息在整个目录树中会采用扁平的方式存储在cn=orgs下。DN为:o=xxx,cn=orgs,dc=czbank,dc=com

机构对象类:CZBankOrganization

属性名
属性说明
属性类型
CZBankOrganizationName
机构名称(中文)
Directory String syntax
CZBankOrganizationNumber
机构编码
Directory String syntax
CZBankOrganizationStatus
机构状态
Directory String syntax
CZBankSupervisoryDepartment
上级机构
Directory String syntax
CZBankJGLX
机构类型(总中心,分中心,网点等等)
Directory String syntax
CZBankJGYWZLSQED
需要授权的业务种类额度(按业务种类设定,业务种类+币种+金额)
Directory String syntax
CZBankJGJYSQED
(按交易(例如:汇票出票,)设定,业务种类+交易码+币种+金额)特例授权
Directory String syntax
CZBankJZJY
本机构禁止交易清单(多值)
Directory String syntax
o
机构名称
Directory String syntax

2.3       柜组

所有柜组的信息在整个目录树中会存放在o=xxx,cn=orgs,dc=czbank,dc=com这个分支下,柜组信息的存储会在这个分支下进行扁平存储,机构与柜组之间的关系通过CZBankSupervisoryDepartment属性进行关联。

柜组对象类:CZBankOrganizationUnit对象类

属性名
属性说明
属性类型
CZBankOrganizationName
柜组名称(中文)
Directory String syntax
CZBankOrganizationNumber
柜组编码
Directory String syntax
CZBankOrganizationStatus
柜组状态
Directory String syntax
CZBankSupervisoryDepartment
上级机构
Directory String syntax
ou
柜组名称
Directory String syntax

2.4       交易

所有交易的信息在整个目录树中会存放在cn=trans,dc=czbank,dc=com这个分支下。

交易对象类:CZBankTransaction

属性名
属性说明
属性类型
cn
交易代码
Directory String syntax
CZBankTransName
交易名称
Directory String syntax
CZBankWDSQ
本交易是否需要网点授权,True/False
Boolean - TRUE/FALSE
CZBankHTZYSXSQ
本交易是否需要进行后台重要事项授权,True/False
Boolean - TRUE/FALSE
CZBankSWJYSQJB
本事务类交易的授权级别;无需授权/到网点为止/到分中心为止/到总中心为止
Directory String syntax
CZBankSFTJSQ
本交易是否需要同机授权True/False(异机)
Boolean - TRUE/FALSE

2.5       角色

所有角色的信息在整个目录树中会存放在cn=groups,dc=czbank,dc=com这个分支下。

角色对象类:CZBankRole

属性名
属性说明
属性类型
CZBankTransactions
本角色可以执行的交易清单(多值)
Directory String syntax
cn
角色名称
Directory String syntax
description
角色描述
Directory String syntax
member
角色成员(多值)
Directory String syntax

 

 
3         目录树设计

3.1       设计原则
目录树的结构设计为目录数据的命名和应用访问提供基本框架,目录树的结构设计应符合LDAP层次模型,目录树提供一种组织目录数据的方法。

目录树设计的基本原则如下:
² 有利于简化目录数据的管理;

² 可以灵活的创建数据复制和访问策略;
² 支持应用系统对目录数据的访问要求;

3.2       全行目录信息树架构
 

浙商银行目录信息树架构示意图(插入一幅新图,来源于PPT)
cn=users子树下,放置柜员条目

cn=orgs子树下,放置机构和柜组信息
cn=groups子树下,放置角色信息

cn=trans子树下,放置交易相关的的信息
 

上一篇: 张江男挤车上班
下一篇: 安装FileNet之后,各项checklist.
 评论 ( What Do You Think )
名称
邮箱
网址
评论
验证
   
 

 


  • 微信公众号

  • 我的微信

站点声明:

1、一号门博客CMS,由Python, MySQL, Nginx, Wsgi 强力驱动

2、部分文章或者资源来源于互联网, 有时候很难判断是否侵权, 若有侵权, 请联系邮箱:summer@yihaomen.com, 同时欢迎大家注册用户,主动发布无版权争议的 文章/资源.

3、鄂ICP备14001754号-3, 鄂公网安备 42280202422812号