The subject application is described with reference to certain figures, including:
The subject application is directed a system and method for certificate-based client registration via a document processing device. In particular, the subject application is directed to a system and method for a user to obtain a certificate to access a document processing device via the document processing device. More particularly, the subject application is directed to a system and method by which a network device, such as a document processing device, is able to assist a non-conforming user in securing a certificate for access to one or more network devices.
Referring now to
The system 100 includes at least one document processing device 104, represented in
In accordance with the preferred embodiment of the subject application, the document processing device 104 is in data communication with the computer network 102 via a suitable communications link 108. As will be appreciated by the skilled artisan, a suitable communications link 108 employed in accordance with the present invention includes, WiMax, 802.11a, 802.11b, 802.11 g, 802.11(x), BLUETOOTH, the public switched telephone network, a proprietary communications network, infrared, optical, or any other suitable wired or wireless data transmission communications known in the art.
As shown in
The communications link 112, coupling the authentication server 110 to the computer network 102, is any suitable means of data communication known in the art, including, for example and without limitation, infrared, optical, a proprietary communications network, the public switched telephone network, BLUETOOTH, WiMax, 802.11a, 802.11b, 802.11 g, or 802.11(x), or any other suitable wire-based or wireless data transmission means known in the art. In the preferred embodiment of the subject application, the communications link 112 is suitably adapted to provide a secure communications channel between the authentication server 110 and any other electronic device coupled to the computer network 102, as will be appreciated by those skilled in the art. Preferably, the communications link 112, so as to ensure the security of the user authentication information that is verified by the authentication server 110, is implemented using data security protocols, such as web security protocols, in accordance with the subject application.
The system 100 depicted in
In accordance with an alternative embodiment of the subject application, the system 100 employs a print server 118 suitably adapted to facilitate the processing of document processing requests transmitted via the computer network 102 to the document processing device 104. As will be appreciated by those skilled in the art, the print server 118 is capable of implementation on a variety of different platforms, including, for example and without limitation, LINUX products, Microsoft Corporation server products, or the like. The print server 118 is capable of implementation as any hardware, software, or suitable combination thereof, able to perform the document processing operations associated therewith. It will be understood by those skilled in the art that while the print server 118 is illustrated in
The system 100 illustrated in
In operation, when a client device 122 desires to interact with one of the document processing devices 104 present on the computer network 102, e.g., using a device profile for web services protocol, and uses a non-WINDOWS-based operating system, the client device 122 must first procure a digital certificate. The skilled artisan will appreciate that the client device 122 is not able to automatically obtain a certificate at network logon due to the disparate operating systems of the client device 122 and the document processing device 104. Accordingly, the client device 122 generates a request for a certificate and sends this certificate request to the document processing device 104. It will be appreciated by those skilled in the art that the client device 122 sends the certificate request to the document processing device 104 in accordance with the implementation of a device profile for web services protocol (DPWS), or the like. The document processing device 104 then requests a token or authentication data from the client device 122. Preferably, the request includes a list of trusted servers/directories to which the client device 122 may have valid credentials. The client device 122, upon receipt of the authentication request, determines, for which of the servers on the trusted list the client device 122 has valid credentials, and transmits the requisite authentication data to the document processing device, i.e., authentication data corresponding to the authentication server 110.
The token or authentication data received from the client device 122 by the document processing device 104 is then sent to the authentication server 110. It will be appreciated by those skilled in the art that the document processing device 104 first determines, based upon the authentication data received from the client device 122, for which of the trusted servers the client device 122 has provided authentication data. The authentication server 110 then determines whether the data received from the document processing device 104 is valid. When the token or authentication data is invalid, the authentication server 110 returns an error notification to the document processing device, which thereafter sends a notification to the client device 122 informing the user associated therewith of the authentication error. When the token or authentication data is valid, the authentication server 110 returns the authenticated token/data to the document processing device 104.
The document processing device 104 then authenticates the digital certificate request in accordance with the authenticated token/data and selects a trusted certificate server 114 to issue the requested certificate. The authenticated certificate request is then transmitted to the identified certificate server 114, which issues the requested digital certificate. Preferably, the transmission of the authenticated certificate request is accomplished using a simple certificate enrollment protocol, or the like. The issued certificate is then transmitted from the certificate server 114 to the document processing device 104, which sends the digital certificate to the requesting client device 122. Thereafter, the client device 122 is able to generate a document processing request and transmits the request, in accordance with the digital certificate, to the document processing device 104. Depending upon the rights, accesses, and privileges stipulated by the digital certificate, the document processing device 104 selectively performs the requested document processing operation.
Stated another way, when a client device 122 uses a device profile for web services protocol to connect with the document processing device 104 and lacks a valid certificate, the user associated with the client device 122 is required to provide a valid credential, such as, for example and without limitation, a KERBEROS token or user ID/password. The document processing device 104 verifies the credentials against the authentication server 110 and allows the certificate request to be sent to the certificate server 114. The certificate server 114 then issues the requested certificate, which is returned to the document processing device 104. The certificate is then sent to the requesting client by the document processing device 104.
In accordance with an alternative embodiment of the subject application, the print server 118 is employed to facilitate the operations of the document processing device 104. In such an embodiment, the certificate issued by the certificate server 114 is transmitted from the document processing device 104 to the print server 118 via any suitable means known in the art. It will be understood by those skilled in the art that such a use of the print server 118 enables the client device 122 to submit a document processing request to the print server 118 and allows the print server 118 to determine which of the available document processing devices (i.e., device 104), is to be used to process the request. The print server 118 then functions to facilitate the output of the requested document processing operation, the communication of the certificate to the client device 122, and other operations, as are known in the art to be associated with operations of a print server.
The foregoing system 100 will better be understood when viewed in conjunction with the methodologies set forth in
The client device 122 then sends, at step 208, the requested authentication token or data to the document processing device 104. The client device 122 then waits until step 210, whereupon a digital certificate is received from the document processing device 104. The methodology of issuing the digital certificate will be explained in greater detail below with respect to
Referring now to
The document processing device 104 then receives, at step 306, authentication data or an authentication token from the client device 122 associated with one of the servers/directories known or trusted by the document processing device 104. The skilled artisan will appreciate that the authentication data or token is used by the document processing device 104 to verify the identity of the client device 122 as authenticated by a server or directory which the document processing device 104 trusts. To that end, at step 308 the received token or authentication data is transmitted, via any suitable secure means known in the art, to the authentication server 110. It will be understood by those skilled in the art that the client device 122 has selected one of the servers/directories included in the request for authentication data and the response received from the client device 122 includes data representative of the selected authentication means. Preferably, the document processing device 104 is suitably adapted to ascertain the identity of the selected authentication means, e.g., the authentication server 110, based upon the token or authentication data received from the client device 122.
The received authentication data or authentication token has thus been transmitted, at step 308, to the identified authentication means, e.g., authentication server 110, for verification of the client device 122. When the authentication server 110 determines at step 310 that the token or authentication data is not verifiable, an error notification is returned to the document processing device 104 at step 312. The document processing device 104 then sends a notification of the problems in verification of the authentication data or token to the requesting client device 122 at step 314, thereby terminating the registration process.
When it is determined at step 310 that the authentication data, or the authentication token, supplied by the client device 122 is valid, the authentication server 110 returns an authenticated data or token to the document processing device 104 at step 316. Thereafter, the document processing device 104 authenticates the certificate request in accordance with the received authenticated data or token at step 318. Next, at step 320, the document processing device 104 retrieves a listing of trusted certificate servers, e.g., certificate server 114, from the data storage device 106 and selects a trusted certificate server 114 to issue the requested digital certificate. At step 322, the authenticated certificate request is transmitted to the trusted certificate server 114 via a secure communications channel, as will be appreciated by those skilled in the art. Preferably, the document processing device 104, functioning herein as a proxy, forwards the certificate request to the certificate server 114 using suitable protocols, including for example and without limitation, simple certificate enrollment protocol, and the like.
In accordance with the preferred embodiment of the subject application, the certificate server 114 uses the received authenticated request to generate a digital certificate corresponding thereto, which is issued by the server 114 at step 324. The issued digital certificate is then transmitted via a suitable communications channel, whereupon it is received at step 326 by the requesting document processing device 104. At step 328 the digital certificate is sent to the requesting client device 122 via any suitable means known in the art. The skilled artisan will appreciate that step 328 signifies the termination of the registration/certificate issuance proxy operation of the document processing device 104 with respect to the client device 122. Thereafter, the document processing device 104 receives, from the client device 122, a document processing request inclusive of data representative of the digital certificate at step 330. Depending upon the rights, access, privileges, or the like associated with the digital certificate, the document processing device 104 performs the document processing operations of the request.
The invention extends to computer programs in the form of source code, object code, code intermediate sources and partially compiled object code, or in any other form suitable for use in the implementation of the invention. Computer programs are suitably standalone applications, software components, scripts or plug-ins to other applications. Computer programs embedding the invention are advantageously embodied on a carrier, being any entity or device capable of carrying the computer program: for example, a storage medium such as ROM or RAM, optical recording media such as CD-ROM or magnetic recording media such as floppy discs. The carrier is any transmissible carrier such as an electrical or optical signal conveyed by electrical or optical cable, or by radio or other means. Computer programs are suitably downloaded across the Internet from a server. Computer programs are also capable of being embedded in an integrated circuit. Any and all such embodiments containing code that will cause a computer to perform substantially the invention principles as described, will fall within the scope of the invention.
The foregoing description of a preferred embodiment of the invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Obvious modifications or variations are possible in light of the above teachings. The embodiment was chosen and described to provide the best illustration of the principles of the invention and its practical application to thereby enable one of ordinary skill in the art to use the invention in various embodiments and with various modifications as are suited to the particular use contemplated. All such modifications and variations are within the scope of the invention as determined by the appended claims when interpreted in accordance with the breadth to which they are fairly, legally and equitably entitled.