lf_young

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

概览

WebService是SAP_BASIS架构中的服务层,它基于其他的组件(用户管理、角色管理、RFC、bgRFC、ICM、ICF),但是需要通过以上组建和其自身提供的参数、选项、设置项等进行配置,其中一个主要的设置就是对于每一个客户端的服务地址配置。系统功能部件AUTOABAP是启动子进程的最主要进程,负责WebService运行任务监控和启动RFC(bgRFC)的进程.系统启动后,AUTOABAP在客户端000中启动和运行,客户端000具有管理员权限,调用时运行的任务都是在客户端000中创建和启动的,因此它允许通过输入客户端来差别化的运行根据客户端定义的函数。

自动创建

一部分技术创建是自动的,Service用户的创建,Serice地址的创建,bgRFC入站地址的注册,以及bgRFC检查类的注册和激活。程序SRT_ADMIN在块"Technical Setup for System”中的标识"Automatc Setup”标记为X,且程序开始运行时,可以提供上述步骤 ,对于一致性问题的解决,Reset(用户删除/地址删除)也是可用的,SRT_ADMIN提供以下功能:

Technical setup for System
  • Automatic Setup
    • Automated creation of service user and role assignment
    • Automated creation of service destination
    • service user assignment
    • Creation and registration of bgRFC inbound destination
    • Assignment of scheduler destination and check class registtration
    • For systems with customer specific password rules, the password for the service user to be create, can be inserted before the user is created, if the flag “Accept password fir user creation” is set to ‘X’. This password than is assigned to the new user SAP_WSRT. Otherwise the password is generated by the standard rules with the standard function. It value is stored into the secure area (from RFC) and can never been read or display at any UI.
    • If flag “BydLandscape” is available and switched on during the report run, the service user is NOT created by the procedure. It will use the user name SAP_WSRT at the service destination whereby the password is read from the ByD User management (IAM).
  • Technical Reset
    • Automated deletion of the service destination
    • automated deletion of the service user which has been assigned at the service destination ( std. SAP_WSRT).
    • If flag “ByDLandscape is available and switched on during the report run, the user at the service destination is NOT deleted.

手动创建

  • 手工注册 soastage:service destination name
  • 手工注册 soastage:bgRFC inbound destination
  • 自动注册和激活 soastage:ICF nodes
  •  

    创建检查

    次项功能由程序SRT_ADMIN_CHECK来执行.此程序检查WebService运行所需的所有各项设置,并返回状态,所需检查的各项设置如下:

    • Supervisor destination with attributes (client/tenant of registration, name, status [soastage:operational/ not operational], status text, (error) message text (if any), name of user, user name of last change, date of last change, time of last change).
    • Example:

    lizi

    • Task watcher with attributes (tenant [soastage:fix 000], status [soastage:running, starting, , stopping, not running], period [soastage:10] in seconds, user name of last change, date of last change, time of last change])
    • Example:

    lizi

    • bgRFC with attributs (client/tenant, status text [soastage:number of schedulers running], status messages)
    • Example:

    lizi

    • Service destination with attributes (client/tenant, name, status [soastage:operational/ not operation], technical name, name of service user attached)
    • Example:

    lizi

    • Inbound destination with attributes (client/tenant, name, status [soastage:operational/ not operationl], usable [soastage:true/false], name of the registered check class for the scheduler destination, status of the registration of the check class [soastage:active/inactive])
    • Example:

    lizi

    • ICF nodes with attributes (client/tenant, status messages, error messages)
    • Example:

    lizi

    • Idem potency with attributes (client/tenant, status text, usable (‘-‘ / ‘X’)
    • Example:

    lizi

    The areas of health check are hot spoted. Clicking at the hotspot, the attributes of the specific area object are displayed. In case of the area bgRFC, messages from the health check function of the background RFC are read and displayes. The only health check status which can be taken as an “operational or not” – status ist the number of running inbound schedulers. If the number of running inbound schedulers is zero, the background RFC is not working in this client/tenant.

    To run the automated setup, the program checks is the user does have the authorizes to perform all actions. This includes the setup , as well as the reset of the properties. The list of authority objects is as follows:

    • S_TCODE with SA38
    • S_PROGRAM with action SUBMIT
    • S_SRT_ADM with activity 70 ans WSNAME = *
    • S_USER_GRP with class * and activities 01, 03 and 06
    • S_USER_SAS with activities 01, 06 and 22
    • S_USER_AGR with activity 64 and activity group SAP_BC_WEBSERVICE_SERVICE_USER
    • S_RFC_ADM with activities 01, 02 and 06 with RFC type “3”
    • S_BGRFC with activity 02 and bgRFC type 07

    If this authorities are not assigned to the user starting the setup procedure, the program aborts with an error message.

    服务用户

    The service user (一旦创建) 就被分配给the service destination. 它命名为SAP_WSRT. 用户的类型必须是 “System” 或者 “Service”, 在此,类型 “System” 是被推荐的, 因为类型 “Servce” 运行根据客户端进行窗口登录. 用户分配给角色SAP_BC_WEBSERVICE_SERVICE_USER. 这个角色包括所有后台运行所需的各类对象权限.

    用户属性如下:

    lizi

    一旦服务用户被创建,就会分配给service destination. 服务用户的创建和分配,也是自动创建的一部分.

    服务用户角色

    This role is shipped as an “productive” role. 列表中的权限对象在新任务运行或者原有任务需要新的权限对象时,会进行更新. 列表中的权限由函数TASK_CHECK_AUTHORITY来进行检查.这个函数被用作检查the service destination的状态.

    The current list of authority objects is:

    • S_BGRFC with ACTVT = (01, 02, 03, 05, 06, 95), BGRFC_D_IN = ( * ) ,BGRFC_D_OU = ( * ) ,BGRFC_TYPE = (01, 02, 03, 07, 13, 14, 15, 16)
    • S_RFC with ACTVT = (16), RFC_NAME = (BGRFC_CONFIGURATION, SENT, SRTUTIL, SRT_PROCESS_DT_CHANGE, SRT_SEQUENCE_REORG, SRT_SEQ_SCD_QRFC_NEW, SRT_SOAP_SEQUENCE_REORG, SRT_SEQ_SCD_QRFC_NEW, SRT_SOAP_SEQUENCE_REORG, SRT_WSP_DT_LINK_API, SRT_WS_UPGRADE_SUPPRT_RFC, SYST, TASK_ADMIN, TASK_LUW, TASK_VITAL, WSRM_SOAP), RFC_TYPE = (FUGR)
    • S_RFC_ADM with ACTVT = (01, 02, 03, 06), ICF_VALUE = ( * ) , RFCDEST = ( * ) , RFCTYPE =(G)
    • S_SERVICE with SRV_NAME = ( * ) , SRV_TYPE = (WS)
    • S_BTCH_EXT with ACTVT = ( * ) , USER = ( * )
    • S_BTCH_JOB with JOBACTION = (* ) , JOBGROUP = ( * )
    • S_SRT_CF_C with ACTVT = ( * ) , SRT_NAME = ( * )
    • S_SRT_CF_P with ACTVT = ( * ) , SRT_NAME = ( * )
    • S_SRT_DEST with ACTVT = ( * ) , SRT_NAME = ( * )
    • S_SRT_ELOG with ACTVT = (03)
    • S_SRT_PROF with ACTVT = ( * ) , SRT_NAME = ( * )
    • S_SRT_SCEN with ACTVT = ( * ) , SRT_NAME = ( * )
    • S_SRT_UACC with ACTVT = ( * ) , SRT_NAME = ( * )
    • S_SRT_UASG with ACTVT = ( * ) , SRT_NAME = ( * ) , SRT_NAME2 = ( * )

    服务地址

    服务地址是根据客户端进行差异化后台作业的必备. 如果系统使用WebService,则客户端000需要服务地址.进一步说,哪个客户端需要使用WebService,则哪个就需要服务地址.每个服务地址都有自己的服务用户,来登录客户端执行函数模块,形如:CALL FUNCTION <fct> DESTINATION <service destination>. 函数模块列表被在权限对象S_RFC中的命名的函数组的内容所限制.如果一个函数模块不在列表中,则不可能被执行. RFC destination 有以下的技术属性:

    lizi

    服务地址的手工创建

    如果服务地址是通过手工创建的,则用户需要通过SU01或者外部服务(central user management)进行创建. 如果属性值只要有一个没有填写,则服务地址的状态就是 “unusable” or “not operational”. 使用SM59,RFC地址和技术属性可以被创建. 为了注册服务地址,程序SRT_ADMIN会被调用,在块“Manual Setup”中“Name of ABAP connection”应当被指明.在 “Register ABAP Connection”被设置为 ‘X’ ,程序中运行是会注册服务地址.

    bgRFC的入站地址

    The Web service runtime uses the background RFC as scheduler for processing the web service messages. The bgRFC does need some settings to connect/register the web service runtime at the scheduling service. This is a) the bgRFC inbound destination and b) the scheduler destination for registration of the web service runtime check class. In Release 7.* there is only on inbound destination for each system necessary, in release 8.* for any client/tenant an inbound destination is required.

    The bgRFC inbound destination has to be registered together with five different prefixes which are used to create bgRFC queue names. These prefixes are:

    PERSC_    to build names for consumer queues for external persistent sequences

    PERSP_    to build names for provider queues for external persistent sequences

    SRTQC_   to build names for consumer queues for external transient sequences

    SRTQP_    to build names for provider queues for external transient sequences

    SRTQS_    to build names for queues for shortcut sequences

    The name of the bgRFC inbound destination and its prefix set ups are registered via transaction SBGRFCCONF. After the inbound destination nad its prefixes has been registered at the bgRFC, the name of the inbound destination has to be registered at the web service runtime properties. Call report SRT_ADMIN and put the name into field “Name of inbound destination” flag the switch “Register name og inbound destination” to ‘X’ and execute the report (F8).

    To supress the possibility to restart or delete unit’s of the web service runtime at the bgRFC Monitor (avoid inconsistencies between web service sequence handling and bgRFC queue/unit handling) register the name of the inbound destination at the bgRFC as an scheduler destination. Once added, use the class name “CL_SOAP_QUEUE_BGRFC_MON_CB” as an check class for the scheduler destination and set this name as “active”.

    These settings for inbound destination and check class registration is processed automatically, if you use the automated set up procedure by report SRT_ADMIN.

    bgRFC的监控地址

    If the bgRFC has not been used before (the web service runtime is just one participant), the bgRFC supervisor destination has t be set up. This is also necessary, even if the web service runtime technical set up has been processed manually. The supervisor destination is maintained via transaction SBGRFCCONF in tab “Define Supervisor Dest.”. It requires a name and a user with assignment to role SAP_BC_BGRFC_SUPERVISOR. An automated set up is provided, where the user and the destination is created in background.

    ICF节点

    WebService在运行时需要以下服务是激活状态:

    lizi

    这些服务会在程序SRT_ADMIN运行前,点击 “Manual Setup”, 将块Web Service-Specific ICF Setting中Make Settings in Block设置为 ‘X’ ,随后运行程序这些服务都会生成并且激活.

    posted on 2013-03-29 14:02  lf_young  阅读(1675)  评论(0编辑  收藏  举报