semi合集-English.pdf - 第3390页

SEMI E132.1-0305 © SEMI 2005 17 8.2.6 SEMI E132 Op eration Errors 8.2.6.1 Co mmon Error 8.2.6.1. 1 All errors returned by SEMI E132 operations uses t he Error type defined in SEMI E138 . The comm on error is in a ddition…

100%1 / 7923
SEMI E132.1-0305 © SEMI 2005 16
Table 12 SecurityAdmin Port Type
SEMI E132 Class Name SecurityAdmin
WSDL Port Type Name SecurityAdmin
SEMI E132 Operation
WSDL Operation
GetDefinedPrivileges GetDefinedPrivileges
GetACL GetACL
AddACLEntry AddACLEntry
DeleteACLEntry DeleteACLEntry
GetActiveSessions GetActiveSessions
SetMaxSessions SetMaxSessions
GetMaxSessions GetMaxSessions
8.2.4 WSDL Binding Overview
8.2.4.1 The WSDL SecurityAdmin binding definition specifies a message and transport protocol to use for a given
portType (SOAP and HTTP for SEMI E132.1), the interface style used (document style for SEMI E132.1). These
settings are shown in Table 13. For each WSDL portType operation, the binding defines any SOAP headers used
and whether or not they are required, the HTTP SOAPAction header value to use for that operation, and the XML
encoding to use (literal for SEMI E132.1). The binding definitions for each portType operation are described in
¶¶8.2.9 through 8.2.15.
Table 13 SecurityAdmin Binding
SEMI E132 Class Name SecurityAdmin
WSDL Binding Name SecurityAdminBinding
SOAP Binding Style document
SOAP Transport http://schemas.xmlsoap.org/soap/http
8.2.5 WSDL Service Overview
8.2.5.1 This specification does not provide a WSDL service definition. WSDL service definitions provide one way
to define and locate the endpoint(s) at which a given interface can be accessed by a client. Such information cannot
be determined until the equipment has been installed on a factory network, and therefore is out of scope for this
specification. Users are responsible for defining the mechanisms by which clients locate SEMI E132 equipment
services in the factory. A sample SecurityAdmin service definition is provided in Figure 8 for reference only.
<?xml version="1.0" encoding="UTF-8"?>
<
wsdl:definitions name="SecurityAdmin"
xmlns="urn:semi-org:ws.E132-1.V0305.secAdmin-service"
targetNamespace="urn:semi-org:ws.E132-1.V0305.secAdmin-service"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:wsdl=http://schemas.xmlsoap.org/wsdl/
xmlns:SABind="urn:semi-org:ws.E132-1.V0305.secAdmin-binding">
<wsdl:import namespace="urn:semi-org:ws:E132-1.V0305.secAdmin-binding"
location="E132-1-V0305-SecurityAdmin-Binding.wsdl"/>
<wsdl:service name="SecurityAdmin">
<wsdl:port name="SecurityAdminPort" binding="SABind:SecurityAdminBinding" >
<soap:address location="https://www.someplace/SecurityAdmin"/>
</wsdl:port>
</wsdl:service>
</
wsdl:definitions>
Figure 8
Sample SecurityAdmin WSDL Service definition
SEMI E132.1-0305 © SEMI 2005 17
8.2.6 SEMI E132 Operation Errors
8.2.6.1 Common Error
8.2.6.1.1 All errors returned by SEMI E132 operations uses the Error type defined in SEMI E138. The common
error is in addition to any custom error construct that may be defined by each operation to provide additional context
relevant to the operation and a specific error. The common error type defines 2 attributes, “source” and “code”; see
Common Components Specification for more detailed information. All E132 defined errors shall set the “source”
attribute to “urn:semi-org:E132”. The error codes for SEMI E132 defined errors are provided in Table 14.
Description is a textual description of the error. The Extension element allows equipment suppliers to provide more
detailed information regarding the error using XML content defined by the supplier.
8.2.6.1.2 Table 14 below provides a mapping of the SEMI E132 defined errors to its common error code. The
SEMI E132 Error column matches the error description of each defined error in the SEMI E132 specification. Errors
during the Authentication message exchange are as defined by the SSL authentication protocol. The SEMI E132
mapped error codes below are in addition to any common error codes defined in the Common Components
Specification.
Table 14 SEMI E132 Error Codes
SEMI E132 Error Common Error Code
Operation not authorized 6000
Duplicate ACL entry found 6001
Unrecognized role 6002
Unrecognized privilege 6003
ACL entry not found 6004
Unrecognized session 6005
Max session limit exceeded 6006
8.2.6.2 Unauthorized Operation Error
8.2.6.2.1.1 Many operations may return an operation not authorized error (common error code 6000). For this
error, SEMI E132 defines a specific UnauthorizedOperationError structure to provide additional context information
such as list of all the privileges that grant authorization for the requested operation.
8.2.6.2.1.2 The UnauthorizedOperationError class is mapped to the XML UnauthorizedOperationType. Table 15
shows how the attributes and associations of UnauthorizedOperationError class are mapped to XML. Figure 9
shows the XML Schema diagram.
Table 15 Translation Table for UnauthorizedOperationError Class
Attribute or Role Name UML Name/Type XML Element or Attribute XML Name/Type
description Text Element Description: xsd:string
requiredPrivileges Association Element RequiredPrivilege: PrivilegeType (one
or more)
Figure 9
UnauthorizedOperationType XML Schema Type
8.2.7 Session Identifier
SEMI E132.1-0305 © SEMI 2005 18
8.2.7.1 The session identifier is required to be present in all requests to the equipment over an SEMI E132
authenticated session. The session identifier is generated by the equipment during the Establish Session operation,
and must be a UUID that is guaranteed unique across space and time, see documentation referenced in ¶4.4 for
specific details on syntax and format of a UUID.
8.2.7.2 In this specification, a header type is defined in the XML Schema file to carry the SEMI E132 session
identifier within the SOAP header for SOAP messages defined for this interface. This provides the most transparent
way of sending the session identifier without affecting the input/output parameters of the individual operations.
Since SEMI E132 requires all requests to the equipment to be sent over SSL, the session identifier need not be
encrypted and shall be included in the header unmodified. Figure 10 shows the XML schema diagram for the
E132Header schema element. The session identifier is modeled as the SessionID of XML type xsd:string in the
E132Header.
Figure 10
E132Header XML Schema Element
8.2.7.3 The WSDL message “E132HeaderMessage” defines the message used in the SOAP header. It maps to the
schema element E132Header as described above, see definitions of “E132HeaderMessage” in SEMI E132-
SecurityAdmin-PortType.wsdl.
8.2.7.4 Since SEMI E132 does not require outgoing equipment messages to be sent over SSL, the session identifier
must be masked to avoid sending in plaintext. See ¶8.4 of SessionClient interface regarding handling and encoding
of session identifier for outgoing equipment messages.
8.2.8 From/To Header Fields
8.2.8.1 Each message over SEMI E132 must also provide the originating source and intended destination using the
From/To fields of the E132Header, as shown in Figure 10. The “From” element identifies the originator of the
message, and the “To” element identifies the intended recipient of the message, both of type xsd:string. In this
specification, the ID of the principals that established the SEMI E132 session shall be used for purposes of
identifying message source and destination. Although this information can be extracted based on the session
identifier, it is desired that the equipment and client be identified explicitly in each message.
8.2.9 GetDefinedPrivileges Operation
8.2.9.1 XML Schema Types
8.2.9.1.1 This section describes the XML mappings for the classes defined in SEMI E132 for the
GetDefinedPrivileges operation. Per WSDL convention described, a request and response message is defined for
the operation corresponding to the input and output messages. A corresponding schema element and type is defined
for the request and response message containing the input and output parameters of the defined operation
respectively.
8.2.9.1.2 GetDefinedPrivileges Request
8.2.9.1.2.1 The service request is mapped to the XML Schema element GetDefinedPrivilegesRequest which is of
type GetDefinedPrivilegesRequestType. There are no input parameters for this operation, thus the request schema
element has no content.