Tài khoản Meta được quản lý và tiện ích tích hợp của bên thứ ba

Tổng quan

Tài khoản Meta được quản lý là loại tài khoản dành cho các công cụ kinh doanh trên Meta. Tổ chức có thể quản lý những tài khoản này bằng các tính năng quản trị như hỗ trợ phương thức đăng nhập một lần (SSO), tự động cấp phép tài khoản và hơn thế nữa. Với những tài khoản này, cá nhân có thể truy cập vào các công cụ kinh doanh của Meta (như Trình quản lý kinh doanh) bằng thông tin đăng nhập dùng cho công việc, mà không cần dùng tài khoản Facebook cá nhân của họ.

Tài khoản Meta được quản lý chỉ được dùng để làm việc. Do vậy, loại tài khoản Meta được quản lý có những hạn chế sau đây:

  • Không có dòng thời gian xã hội hay Bảng tin trên Facebook
  • Không thể truy cập vào các sản phẩm hoặc giao diện tương tác trực tiếp với người tiêu dùng trên facebook.com, ngoại trừ quyền truy cập vào bài viết với vai trò Trang
  • Không thể có quyền truy cập vào tài sản cá nhân (phải thông qua tài khoản kinh doanh)
  • Chỉ có thể cấp quyền truy cập vào loại ứng dụng dành cho doanh nghiệp chứ không thể cấp các quyền liên quan đến user_*, chẳng hạn như user_friends hoặc user_posts. Lưu ý rằng tài khoản Meta được quản lý vẫn có thể hoàn tất các yêu cầu trong quy trình đăng nhập, nhưng sẽ bỏ qua những quyền liên quan đến user_*.
Đã xảy ra lỗi
Chúng tôi đã gặp sự cố khi phát video này.

Tiện ích tích hợp ứng dụng của bên thứ ba

Những doanh nghiệp đang chuyển sang tài khoản Meta được quản lý sẽ chuyển tiếp người dùng từ sử dụng tài khoản Facebook sang sử dụng thông tin đăng nhập dùng cho công việc của họ để truy cập vào các công cụ kinh doanh của Meta. Người dùng phải hoàn tất quá trình chuyển trước hạn chót (do doanh nghiệp xác định) để duy trì quyền truy cập vào các công cụ của bên thứ nhất và bên thứ ba trên Meta. Bạn cần lưu ý rằng tổ chức sẽ đặt ra hạn chót riêng cho từng người dùng trong các đơn vị kinh doanh cụ thể. Sau khi hoàn tất thành công quá trình chuyển, người dùng sẽ đăng nhập được vào Trình quản lý kinh doanh bằng tài khoản Meta được quản lý thay vì tài khoản Facebook, đồng thời có thể tiếp tục truy cập các công cụ và tài nguyên cần thiết.

Nếu ứng dụng của bạn đang truy cập tài sản doanh nghiệp của khách hàng qua mã truy cập dành cho Người dùng hệ thống hoặc tính năng chia sẻ với đối tác, tiện ích tích hợp bên thứ ba của bạn sẽ không bị ảnh hưởng. Nếu ứng dụng của bạn đang sử dụng mã truy cập dành cho Người dùng (hoặc mã truy cập Trang được tạo từ mã truy cập dành cho Người dùng), các quyền của ứng dụng và quyền truy cập vào tài sản doanh nghiệp do tài khoản Facebook cấp sẽ không tự động chuyển sang tài khoản Meta mới được quản lý. Để duy trì quyền truy cập của ứng dụng đó vào các tài sản doanh nghiệp nêu trên, người dùng sẽ phải cấp lại quyền đối với những tài sản đó bằng tài khoản Meta mới được quản lý.




Nguyên tắc dành cho Nhà cung cấp công nghệ

Để chủ động giảm thiểu những gián đoạn có thể xảy ra đối với lệnh gọi API, ứng dụng của bạn nên cung cấp:

  • Khả năng chủ động ủy quyền lại tài sản (ví dụ: trang, tài khoản quảng cáo) trước khi mã hết hạn. Bạn có thể thực hiện việc này bằng cách kiểm tra định kỳ trường user_access_expire_time của mỗi tài sản và nhắc người dùng ủy quyền lại nếu hệ thống trả về nhãn thời gian.
  • Khả năng người dùng có thể ủy quyền lại hàng loạt tài sản đối với những tài sản đã ngắt kết nối hoặc sắp bị ngắt kết nối. Bạn có thể thực hiện việc này bằng cách cung cấp nút "Kết nối lại" hoặc "Thay thế mã hết hạn" trong ứng dụng của mình. Với nút này, người dùng có thể kết nối lại tất cả tài sản doanh nghiệp cùng một lúc thay vì kết nối từng tài sản. Nút này sẽ kích hoạt lệnh gọi API đến máy chủ của bạn kèm theo danh sách ID tài sản doanh nghiệp và mã truy cập mới dưới dạng thông số. Sau đó, máy chủ của bạn có thể dùng mã truy cập mới cho từng tài sản doanh nghiệp trong danh sách và lưu trữ mã đó an toàn trong cơ sở dữ liệu hoặc bộ nhớ của ứng dụng.
  • Bắt đầu thử nghiệm

    Sử dụng hộp cát để xác thực rằng tiện ích tích hợp của bạn hỗ trợ tài khoản Meta được quản lý.

    Thử nghiệm tài khoản Meta được quản lý

    Ở phần Người dùng thử nghiệm trên bảng điều khiển ứng dụng, chúng tôi cung cấp một cách để tạo và quản lý tài khoản Meta mô phỏng được quản lý nhằm thử nghiệm việc ứng dụng của bạn triển khai phương thức Đăng nhập bằng Facebook, cùng mọi quyền hoặc tính năng mà ứng dụng đó dùng. Nhờ tận dụng các khả năng của Công cụ người dùng thử nghiệm để tạo và quản lý người dùng thử nghiệm tài khoản Meta, bạn có thể đảm bảo mang đến trải nghiệm mượt mà hơn cho những người dùng đăng nhập vào tài khoản Meta được quản lý, đồng thời tích hợp chức năng Đăng nhập bằng Facebook vào ứng dụng của mình.

    Các tài khoản thử nghiệm này không thể tương tác với người dùng thật. Mọi dữ liệu bạn tạo ra bằng tài khoản người dùng thử nghiệm sẽ chỉ hiển thị với những người dùng thử nghiệm khác trên ứng dụng hoặc với người dùng thật có vai trò Quản trị viên, Nhà phát triển hay Người dùng thử trên ứng dụng đó. Bạn chỉ có thể tạo, chỉnh sửa, xóa và đăng nhập với vai trò người dùng thử nghiệm thông qua Bảng điều khiển ứng dụng (không phải qua API Đồ thị).

    Giới hạn

    Vui lòng tham khảo tài liệu chính để biết thêm chi tiết về các giới hạn đối với người dùng thử nghiệm. Tài khoản Meta thử nghiệm được quản lý cũng chịu những giới hạn tương tự như người dùng Facebook thử nghiệm, ngoại trừ các ứng dụng chỉ có 1 tài khoản Meta thử nghiệm được quản lý.

    Tạo tài khoản công việc thử nghiệm

    Bạn có thể tạo người dùng thử nghiệm trong Bảng điều khiển ứng dụng bằng cách mở phần Người dùng thử nghiệm trên bảng điều khiển Vai trò > Người dùng thử nghiệm, sau đó chọn tab tài khoản Meta được quản lý rồi nhấp vào nút Tạo người dùng thử nghiệm. Thao tác này sẽ mở ra hộp thoại cho phép bạn tạo tài khoản thử nghiệm.

    Với hộp thoại Tạo tài khoản thử nghiệm, bạn có thể:

    • Tạo một tài khoản thử nghiệm.
    • Chọn xem mỗi tài khoản thử nghiệm đã tạo có được cài đặt ứng dụng theo mặc định hay không.
    • Chọn phiên bản API Đồ thị sẽ sử dụng trong lệnh gọi.
    • Cấp các quyền cho ứng dụng đối với mỗi người dùng thử nghiệm.

    Sau khi được tạo, người dùng thử nghiệm sẽ xuất hiện trong bảng tài khoản Meta được quản lý.

    Thử nghiệm bằng tài khoản Meta được quản lý

    Bạn có thể dùng tài khoản thử nghiệm để thử nghiệm ứng dụng của mình, bằng cách sử dụng thông tin đăng nhập của tài khoản Meta thử nghiệm được quản lý trong phương thức Đăng nhập bằng Facebook và cấp cho ứng dụng đó mọi quyền cần thiết. Bạn cũng có thể thay mặt người dùng thử nghiệm cấp các quyền cho ứng dụng của mình, bằng cách nhấp vào biểu tượng dấu chấm lửng (•••) ở cột Tùy chọn thuộc hàng của người dùng thử nghiệm cụ thể trong bảng tài khoản Meta được quản lý. Khi nhấp vào biểu tượng dấu chấm lửng, bạn sẽ có thể chỉnh sửa các quyền mà người dùng thử nghiệm đã cấp cho ứng dụng, tạo mã truy cập dành cho Người dùng cho người dùng thử nghiệm và đăng nhập vào tài khoản của người dùng thử nghiệm.

    Sau khi đăng nhập vào tài khoản thử nghiệm, bạn nên chỉ định các tài sản doanh nghiệp cần thiết để tích hợp ứng dụng thành công. Bạn có thể làm như vậy bằng cách chuyển đến phần Cài đặt cho doanh nghiệp để quản lý hồ sơ doanh nghiệp của người dùng thử nghiệm cũng như các tài sản được chỉ định cho người dùng thử nghiệm đó, chẳng hạn như trang, tài khoản quảng cáo và danh mục sản phẩm.

    Mô phỏng quá trình chuyển bằng người dùng thử nghiệm

    Bạn có thể mô phỏng những thay đổi về quyền dành cho doanh nghiệp xảy ra khi người dùng Facebook chuyển sang một tài khoản Meta được quản lý. Tính năng này giúp bạn thử nghiệm tác động của quá trình chuyển người dùng đối với ứng dụng của mình. Để sử dụng tính năng này, hãy truy cập người dùng thử nghiệm trên Facebook, nhấp vào biểu tượng dấu chấm lửng (•••) ở cột Tùy chọn, nhấp vào Chuyển quyền dành cho doanh nghiệp sang tài khoản Meta được quản lý và làm theo hướng dẫn.

    Bạn phải đáp ứng các điều kiện tiên quyết sau thì mới có thể sử dụng tính năng này:

  • Tạo người dùng thử nghiệm trên Facebook
  • Đảm bảo rằng người dùng thử nghiệm trên Facebook có quyền truy cập vào hồ sơ doanh nghiệp chứa tài sản (như trang hoặc danh mục)
  • Đảm bảo rằng người dùng thử nghiệm trên Facebook đã cấp quyền truy cập dữ liệu kinh doanh
  • Tạo người dùng thử nghiệm để chuyển quyền dành cho doanh nghiệp
  • Sau khi hoàn tất quá trình chuyển, bạn sẽ có thể:

  • Đăng nhập bằng tài khoản này để xem trước trải nghiệm tích hợp cho người dùng
  • Tìm nạp trường user_access_expire_time bằng Mã truy cập dành cho người dùng của người dùng thử nghiệm trên Facebook
  • Webhooks

    Webhooks là công cụ cho phép ứng dụng nhận được thông báo tự động về các thay đổi đối với quyền truy cập của người dùng vào những tài sản dữ liệu cụ thể. Công cụ Webhooks giúp cải thiện ứng dụng phát triển của bạn nhờ cung cấp kịp thời bản cập nhật tự động. Sau khi bạn đăng ký, webhook sẽ gửi một thông báo đến ứng dụng phát triển đó. Thông báo này bao gồm phần tải dữ liệu kèm theo ID người dùng trong ứng dụng của người dùng đó và thời gian hết hạn.

    Tính năng chính:

    • Thông báo trước 30 ngày: Công cụ này sẽ thông báo cho bạn 30 ngày trước khi người dùng bắt đầu chuyển sang tài khoản Meta được quản lý hoặc gia hạn thời gian chuyển.
    • Thông báo hết thời hạn truy cập: Công cụ này sẽ thông báo chính xác thời điểm bạn mất quyền truy cập do chuyển tài khoản.

    Lưu ý: Thông báo webhook được kích hoạt vào đầu khoảng thời gian 30 ngày sau khi bắt đầu quá trình chuyển. Nhờ đó, ứng dụng của bạn sẽ nhận được thông báo kịp thời về bất kỳ thay đổi quan trọng nào đối với quyền truy cập dữ liệu người dùng, cho phép chuyển tiếp và quản lý tài sản dữ liệu một cách liền mạch.

    Đăng ký

    Để nhận được thông báo, bạn cần đăng ký nhận thông tin chuyển tài khoản Meta được quản lý của người dùng. Chúng tôi sẽ tạo Webhook mới để bạn đăng ký.

    Nếu bạn mới sử dụng sản phẩm Webhook, vui lòng làm theo hướng dẫn Bắt đầu sử dụng Webhooks của chúng tôi để thiết lập cấu hình webhook và thử nghiệm các chủ đề webhook mà bạn đăng ký.

    Để thiết lập Webhooks tài khoản Meta được quản lý, trong Bảng điều khiển ứng dụng, hãy chuyển đến phần Sản phẩm > Webhooks, chọn Tài khoản Meta được quản lý từ menu thả xuống, rồi nhấp vào Đăng ký đối tượng này.

    Thông báo

    Chúng tôi sẽ gửi thông báo sự kiện Webhook bất cứ khi nào có thay đổi về ngày hết hạn chuyển tài khoản Meta được quản lý (khi kết thúc chế độ kết hợp của người dùng). Thông báo sẽ được gửi trong quá trình tạo phiên chuyển, cũng như khi người dùng yêu cầu gia hạn chế độ kết hợp và yêu cầu gia hạn này được phê duyệt.

    Ví dụ về thông báo sự kiện tài khoản Meta được quản lý:

    {
      "field": "migration_expire_time",
      "value": {
        "user_id": "4444444444",
        "migration_expire_time" => "2024-05-04T10:00:00Z"
      }
    }
    

    API Chuyển và cách khắc phục sự cố

    Tài liệu về API chuyển tài khoản Meta được quản lý và cách khắc phục sự cố cung cấp thông tin về cách xác định những người dùng và Tài khoản kinh doanh đang chuyển, ngày hết hạn và cho biết đó có phải là tài khoản Meta được quản lý hay không. Trường is_work_account trả về loại giá trị boolean cho biết người dùng có đang sử dụng tài khoản Meta được quản lý hay không. Trường này có trong đối tượng Người dùng. Trường user_access_expire_time là nhãn thời gian cho biết thời điểm người dùng sẽ bị thu hồi quyền truy cập vào các tài sản cụ thể. Sau khi vượt quá nhãn thời gian này, người dùng sẽ không còn quản lý quyền truy cập vào tài sản được nữa. Các lệnh gọi API tiếp theo sử dụng mã truy cập của người dùng Facebook cần truy cập vào những tài sản cụ thể này sẽ bắt đầu trả về lỗi quyền. user_access_expire_time có trên các đối tượng sau:

    Giới hạn

    user_access_expire_time có một số giới hạn. Trường này sẽ chỉ trả về dữ liệu thời gian hết hạn của tài sản mà người dùng có quyền truy cập rõ ràng thông qua quyền dành cho doanh nghiệp của doanh nghiệp chuyển. Ví dụ: dữ liệu sẽ chỉ trả về nhãn thời gian nếu người dùng Facebook là quản trị viên của Trang thông qua Tài khoản kinh doanh đang thực hiện quá trình chuyển. Trang thuộc sở hữu của doanh nghiệp chuyển nhưng không được chỉ định trực tiếp cho người dùng sẽ không trả về nhãn thời gian.

    Cách sử dụng được đề xuất

    Bạn có thể sử dụng dữ liệu trong nhiều trường hợp khác nhau để cải thiện chức năng của ứng dụng, đồng thời chủ động giảm thiểu các vấn đề về xác thực và cấp quyền mà khách hàng cuối có thể gặp phải:
    • Gỡ lỗi khi kiểm tra xem mã truy cập nhận được từ khách hàng của bạn có thuộc về tài khoản Meta được quản lý hay không
    • Gỡ lỗi khi quyền truy cập của người dùng vào tài sản doanh nghiệp sẽ hết hạn
    • Gửi thông báo hoặc lời nhắc cho người dùng khi quyền truy cập của họ vào các tài sản cụ thể sắp hết hạn, đồng thời nhắc họ ủy quyền bằng tài khoản của mình để duy trì chức năng
    • Xử lý lỗi API bằng cách phát hiện quyền truy cập đã hết hạn và gửi thông báo lỗi hoặc hướng dẫn phù hợp cho người dùng để kết nối với tài khoản của họ nhằm cấp quyền truy cập vào các tài sản doanh nghiệp đó

    Ví dụ về lệnh gọi API Đồ thị

    1. Truy xuất trạng thái is_work_account

    Yêu cầu
    GET /<API_VERSION>/<USER_ID>?fields=is_work_account
    
    Phản hồi
    {
      "id": "<USER_ID>",
      "name": "Romane Richter"
      "is_work_account": true
    }
    2. Truy xuất user_access_expire_time trong khoảng thời gian 30 ngày

    Yêu cầu
    GET /<API_VERSION>/<OBJECT_ID>?fields=user_access_expire_time&access_token=<ACCESS_TOKEN>
    Phản hồi
    {
       "user_access_expire_time": "2023-06-23T12:00:00+00:00"
    }
    3. Nếu bạn gửi yêu cầu đến trường trước khi chuyển, hệ thống sẽ trả về dữ liệu trống

    Yêu cầu
    GET /<API_VERSION>/<OBJECT_ID>?fields=user_access_expire_time&access_token=<ACCESS_TOKEN>
    Phản hồi
    {}
    
    4. Nếu bạn gửi yêu cầu 30 ngày sau khi chuyển (sau user_access_expire_time), có khả năng hệ thống sẽ trả về lỗi

    Yêu cầu
    GET /<API_VERSION>/<OBJECT_ID>?fields=user_access_expire_time&access_token=<ACCESS_TOKEN>
    Phản hồi
    {
      "error": {
        "message": "(#100) Object does not exist, cannot be loaded due to missing permission or reviewable feature, or does not support this operation. This endpoint requires the 'pages_read_engagement' permission or the 'Page Public Content Access' feature or the 'Page Public Metadata Access' feature. Refer to https://developers.facebook.com/docs/apps/review/login-permissions#manage-pages, https://developers.facebook.com/docs/apps/review/feature#reference-PAGES_ACCESS and https://developers.facebook.com/docs/apps/review/feature#page-public-metadata-access for details.",
        "type": "OAuthException",
        "code": 100,
        "fbtrace_id": "AZdHiJUBflrZnE-RNKrHAah"
      }
    }
    

    Quyền và lỗi

    Để truy cập user_access_expire_time và thực hiện lệnh gọi API đến trường này, nhà phát triển cần đảm bảo đã được cấp các quyền cần thiết để tải những đối tượng này. Trong ví dụ được cung cấp, nếu object-id tham chiếu đến ID đối tượng kinh doanh thì tối thiểu người dùng phải được cấp quyền business_management để tải đối tượng đó. Vui lòng tham khảo ở đây để biết thêm chi tiết.
    Khi bạn cố truy cập một tài sản sau thời gian hết hạn, phản hồi API sẽ trả về lỗi chung 100 và loại OAuthException. Lỗi này cho biết đối tượng không còn truy cập được qua API nữa vì người dùng không còn quyền truy cập vào tài sản.

    Xem thêm

    Truy cập vào bài viết Câu hỏi thường gặp về tiện ích tích hợp của Nhà cung cấp công nghệ.

    API call disruptions related to managed Meta account migrations might be caused by:

    1. Users failing to migrate before the deadline set by their business/organization
    2. Users failing to re-authenticate with your apps using the managed Meta accounts