nl::Weave::WeaveServerDelegateBase

#include <src/lib/core/WeaveServerBase.h>

Một lớp cơ sở phổ biến để triển khai các đối tượng uỷ quyền máy chủ Weave.

Tóm tắt

Tính kế thừa

Trực tiếp :





nl::Weave::Profiles::DeviceControl::DeviceControlDelegatenl::Weave::Profiles::FabricProvisioning::FabricProvisioningDelegatenl::Weave::Profiles::NetworkProvisioning::NetworkProvisioningDelegatenl::Weave::Profiles::ServiceProvisioning::ServiceProvisioningDelegatenl::Weave::Profiles::TokenPairing::TokenPairingDelegatenl::Weave::Profiles::Vendor::Nestlabs::DropcamLegacyPairing::DropcamLegacyPairingDelegate

Kiểu được bảo vệ

@69{
  kAccessControlResult_NotDetermined = 0,
  kAccessControlResult_Accepted = 1,
  kAccessControlResult_Rejected = 2,
  kAccessControlResult_Rejected_RespSent = 3,
  kAccessControlResult_Rejected_Silent = 4
}
enum
AccessControlResult typedef
uint8_t

Hàm được bảo vệ

EnforceAccessControl(ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, AccessControlResult & result)
virtual void
Phương pháp ảo để xác định chính sách kiểm soát quyền truy cập ở cấp độ thư cho thông báo yêu cầu máy chủ đến.
WeaveServerDelegateBase(void)

Kiểu được bảo vệ

@69

 @69

AccessControlResult

uint8_t AccessControlResult

Hàm được bảo vệ

EnforceAccessControl

virtual void EnforceAccessControl(
  ExchangeContext *ec,
  uint32_t msgProfileId,
  uint8_t msgType,
  const WeaveMessageInfo *msgInfo,
  AccessControlResult & result
)

Phương pháp ảo để xác định chính sách kiểm soát quyền truy cập ở cấp độ thư cho thông báo yêu cầu máy chủ đến.

Phương thức này được cơ sở hạ tầng máy chủ Weave gọi để xác định xem thông báo yêu cầu đến nên được chấp nhận và xử lý bình thường hay bị từ chối. Các lớp uỷ quyền liên kết với việc triển khai máy chủ Weave phải ghi đè phương thức này để triển khai một chính sách kiểm soát quyền truy cập phù hợp cho giao thức của các lớp đó. Các ứng dụng có thể ghi đè thêm phương thức này để hỗ trợ các chính sách tuỳ chỉnh ngoài những chính sách được cung cấp theo các phương thức triển khai máy chủ tiêu chuẩn.

Dự kiến, việc triển khai phương thức này sẽ trả về giá trị kết quả là Đã chấp nhận hoặc Bị từ chối dựa trên kết quả đánh giá chính sách kiểm soát quyền truy cập. Khi bạn trả về kết quả Bị từ chối, StatusReport (Bị từ chối) sẽ được gửi đến người yêu cầu chứa trạng thái Common/Accesstừ chối. Ngoài ra, quá trình triển khai phương thức có thể chọn gửi phản hồi của riêng chúng, có thể là StatusReport hoặc bất kỳ loại thông báo nào khác. Trong trường hợp này, phương thức sẽ trả về kết quả của Từ chối_RespSender để báo hiệu rằng một phản hồi đã được gửi đi. Cuối cùng, việc triển khai có thể trả về Từ chối_Im lặng để cho biết rằng yêu cầu cần bị từ chối mà không gửi phản hồi cho người yêu cầu.

Trong các trường hợp lệnh gọi, bạn phải có lớp ghi đè phương thức EnforceAccessControl() để gọi phương thức có tên tương tự trên lớp mẹ tức thì, chẳng hạn như lớp WeaveServerDelegateBase hoặc lớp bắt nguồn từ lớp đó. Trước tiên, các phương thức ghi đè phải cập nhật giá trị kết quả cùng với quyết định về chính sách kiểm soát quyền truy cập tương ứng, sau đó gọi lớp cơ sở để xác định.

Thông tin chi tiết
Các tham số
[in] ec
ExchangeContext thông báo nhận được.
[in] msgProfileId
Mã hồ sơ của thư đã nhận.
[in] msgType
Loại thông báo của thông báo đã nhận.
[in] msgInfo
Cấu trúc WeaveMessageInfo chứa thông tin về tin nhắn đã nhận.
[in,out] result
Một giá trị liệt kê mô tả kết quả đánh giá chính sách kiểm soát quyền truy cập cho thông báo nhận được. Khi vào phương thức, giá trị này đại diện cho kết quả dự kiến tại điểm hiện tại trong quá trình đánh giá. Khi gửi lại, kết quả dự kiến sẽ thể hiện đánh giá cuối cùng về chính sách kiểm soát quyền truy cập đối với thông báo.

WeaveServerDelegateBase

 WeaveServerDelegateBase(
  void
)