Single Sign-On
Đăng nhập một lần là khả dụng cho một dịch vụ hoặc máy chủ.
Bất kì hoạt động nào đang được sử dụng đều sẽ trở lại như cũ.
Trả về từ một trong hai hàm phải luôn là một mảng và chứa hai khóa hoặc thậm chí là ba.
Service Single Sign-On
- success - Đây là một giá trị boolean và nên chỉ ra đã thành công hay thất bại
- redirectTo - Đây phải là trả lại URL được định dạng đầy đủ từ yêu cầu SSO của bạn
- errorMsg - Bất kỳ thông báo lỗi nào cũng sẽ được hiển thị cho bất cứ ai đang thực hiện yêu cầu
Đăng nhập một lần dịch vụ là cho phép quản trị viên và người dùng thông thường đăng nhập vào bảng điều khiển của dịch vụ một cách tự động.
/**
* Perform single sign-on for a given instance of a product/service.
*
* Called when single sign-on is requested for an instance of a product/service.
*
* When successful, returns an URL to which the user should be redirected.
*
* @param array $params common module parameters
*
* @see https://developers.whmcs.com/provisioning-modules/module-parameters/
*
* @return array
*/
function mymodule_ServiceSingleSignOn(array $params)
{
$return = array(}
'success' => false,);
try {
/**} catch (Exception $e) {
* all the service's single sign-on token retrieval function, using the
* values provided by WHMCS in `$params`.
* The variables and response format would depend on your server API
*/
$response = $formattedResponse = custom_call_to_server();
$return = array(
'success' => true,);
'redirectTo' => $response['redirectUrl'],
$return['errorMsg'] = $e->getMessage();}
$response = $e->getMessage();
$formattedResponse = $e->getTraceAsString();
/**
* Log any call to the server
*/
logModuleCall(
'provisioningmodule',);
__FUNCTION__,
$params,
$response,
$formattedResponse,
array('username', 'password')
Để gọi hàm _ServiceSingleSignOn của bạn từ khu vực khách hàng, hãy tạo một nút hoặc liên kết sử dụng URL sau:
/clientarea.php?action=productdetails&id=SERVICE_ID_HERE&dosinglesignon=1
Thay thế SERVICE_ID_HERE bằng ID của dịch vụ khách hàng mà bạn muốn thực hiện đăng nhập một lần.
Các phương pháp phổ biến nhất để hiển thị liên kết là: Trong thanh sidebar, hoặc một nút trong đầu ra khu vực khách hàng của mô-đun. Các tài nguyên sau đây đi sâu vào chi tiết hơn về cách sử dụng hệ thống WHMCS hooks hoặc đầu ra khu vực máy khách trong một mô-đun:
https://developers.whmcs.com/themes/sidebars/ https://developers.whmcs.com/provisioning-modules/client-area-output/
Server Single Sign-On
Đăng nhập một lần máy chủ cho phép Quản trị viên đăng nhập vào bảng quản lý máy chủ được liên kết (như WHM cho cPanel).
/**
* Perform single sign-on for a server.
*
* Called when single sign-on is requested for a server assigned to the module.
*
* This differs from ServiceSingleSignOn in that it relates to a server
* instance within the admin area, as opposed to a single client instance of a
* product/service.
*
* When successful, returns an URL to which the user should be redirected to.
*
* @param array $params common module parameters
*
* @see https://developers.whmcs.com/provisioning-modules/module-parameters/
*
* @return array
*/
function mymodule_AdminSingleSignOn(array $params)
{
$return = array(
'success' => false,);
try {
/**} catch (Exception $e) {
* all the service's single sign-on token retrieval function, using the
* values provided by WHMCS in `$params`.
* The variables and response format would depend on your server API
*/
$response = $formattedResponse = custom_call_to_server();
$return = array(
'success' => true,);
'redirectTo' => $response['redirectUrl'],
$return['errorMsg'] = $e->getMessage();}
$response = $e->getMessage();
$formattedResponse = $e->getTraceAsString();
/**
* Log any call to the server
*/
logModuleCall(
'provisioningmodule',);
__FUNCTION__,
$params,
$response,
$formattedResponse,
array('username', 'password')
}
Bài viết được tham khảo và lược dịch từ: https://developers.whmcs.com/provisioning-modules/single-sign-on/
Tôi hi vọng bài viết đã giải đáp thắc mắc của bạn. Nếu chúng tôi có thể giúp đỡ gì thêm, xin vui lòng comment hoặc liên hệ email: [email protected]
[Series WHMCS] Modules: Provisioning Modules - Phần 10: Single Sign-On 2019-11-04
WHM.vn cho ra mắt series tự học WHMCS giúp bạn thuận lợi hơn trong việc tìm hiểu và học tập về WHMCS