Hướng dẫn bảo mật dành cho Nền tảng Google Maps

Đối với các ứng dụng và dự án sử dụng SDK và API của Nền tảng Google Maps, bạn phải sử dụng khoá API hoặc Oauth (nếu được hỗ trợ) để ngăn việc sử dụng trái phép và các khoản phí. Nếu bạn dùng khoá API, để tăng tối đa mức độ bảo mật, hãy hạn chế khoá API khi tạo ra chúng. Những phương pháp hay nhất này sẽ hướng dẫn bạn cách hạn chế những nội dung này.

Ngoài việc áp dụng các quy định hạn chế đối với ứng dụng và khoá API, hãy làm theo bất kỳ áp dụng cho các sản phẩm cụ thể của Nền tảng Google Maps. Ví dụ: hãy xem API JavaScript của Maps bên dưới trong Các quy định hạn chế được đề xuất về ứng dụng và API.

Nếu khoá API của bạn đã được sử dụng, hãy xem các đề xuất bên dưới trong Nếu bạn đang hạn chế hoặc tạo lại khoá API đang sử dụng.

Để biết thêm thông tin về chữ ký số, hãy xem Hướng dẫn về chữ ký số.

Các phương pháp hay nhất được đề xuất

Để tăng cường bảo mật và tránh bị tính phí sử dụng trái phép, hãy làm theo các phương pháp hay nhất về bảo mật API cho tất cả SDK, API hoặc của Nền tảng Google Maps các dịch vụ:

Hạn chế khoá API

Sử dụng các khoá API riêng biệt cho từng ứng dụng

Xoá khoá API không dùng đến

Kiểm tra việc sử dụng khoá API của bạn

Hãy cẩn thận khi tạo lại khoá API

Các đề xuất bổ sung cho các trang web sử dụng API web tĩnh

Bảo vệ ứng dụng bằng API web tĩnh

Đề xuất bổ sung cho các ứng dụng sử dụng dịch vụ web

Bảo vệ ứng dụng bằng dịch vụ web

Các đề xuất bổ sung cho ứng dụng dành cho thiết bị di động iOS và Android

Bảo vệ ứng dụng di động bằng dịch vụ web hoặc API web tĩnh

Nếu bạn đang hạn chế hoặc tạo lại khoá API đang được sử dụng

  • Trước khi thay đổi khoá API, hãy Kiểm tra việc sử dụng khoá API của bạn Bước này đặc biệt quan trọng nếu bạn thêm các quy tắc hạn chế sau khoá đang được sử dụng.

  • Sau khi bạn thay đổi khoá, hãy cập nhật khoá API mới cho tất cả ứng dụng, như cần thiết.

  • Nếu không có hành vi lạm dụng khoá API nào đang diễn ra, bạn có thể di chuyển ứng dụng của mình sang nhiều khoá API mới theo tiến độ của riêng bạn, để khoá API ban đầu không bị ảnh hưởng cho đến khi bạn chỉ thấy một loại lưu lượng truy cập. Sau đó, bạn có thể hạn chế API có giới hạn ứng dụng. Để biết thêm hướng dẫn, hãy xem Di chuyển sang nhiều khoá API.

    Theo dõi mức sử dụng theo thời gian và xem thời điểm API cụ thể, loại nền tảng cũng như đã di chuyển khỏi khoá API cũ trước khi bạn chọn hạn chế hoặc xoá khoá cũ. Để biết thêm thông tin, hãy xem Báo cáo và giám sátChỉ số.

  • Nếu khoá API của bạn đã bị xâm phạm, bạn sẽ muốn chuyển nhanh hơn để bảo mật khoá API của bạn và ngăn chặn hành vi lạm dụng. Trong ứng dụng Android và iOS, khoá sẽ không được thay thế cho đến khi khách hàng cập nhật ứng dụng. Cập nhật hoặc thay thế khoá trong JavaScript hoặc ứng dụng dịch vụ web đơn giản hơn nhiều, nhưng vẫn có thể đòi hỏi lên kế hoạch kỹ lưỡng và nhanh chóng.

    Để biết thêm thông tin, hãy xem Xử lý hành vi sử dụng trái phép khoá API.

Hạn chế khoá API

Phương pháp hay nhất là luôn hạn chế khoá API của bạn với một ứng dụng và một hoặc nhiều quy tắc hạn chế đối với API. Đối với các quy định hạn chế do API đề xuất, SDK hoặc dịch vụ JavaScript, hãy xem Các hạn chế về ứng dụng và API được đề xuất ở bên dưới.

  • Hạn chế về ứng dụng Bạn có thể giới hạn việc sử dụng khoá API ở một số nền tảng: Các ứng dụng Android hoặc iOS hoặc các trang web cụ thể cho phía máy khách các ứng dụng hoặc địa chỉ IP cụ thể hoặc mạng con CIDR cho các ứng dụng phía máy chủ thực hiện lệnh gọi API REST dịch vụ web.

    Bạn hạn chế một khoá bằng cách thêm một hoặc nhiều quy tắc hạn chế ứng dụng thuộc các loại bạn muốn cho phép, sau đó chỉ những yêu cầu bắt nguồn từ nguồn được phép.

  • Các hạn chế về API Bạn có thể hạn chế các API của Nền tảng Google Maps, SDK hoặc dịch vụ mà khoá API của bạn có thể được sử dụng. Chỉ các quy định hạn chế về API cho phép các yêu cầu đối với API và SDK mà bạn chỉ định. Đối với bất kỳ khoá API nào, bạn có thể chỉ định số lượng quy tắc hạn chế API nếu cần. Danh sách API hiện có bao gồm tất cả API được bật trên một dự án.

Đặt hạn chế ứng dụng cho khoá API

  1. Mở Google Cloud Console Thông tin đăng nhập trên Nền tảng Google Maps .

  2. Chọn khoá API mà bạn muốn hạn chế.

  3. Trên trang Edit API key (Chỉnh sửa khoá API), trong mục Key Restrictions (Hạn chế về khoá), hãy chọn Đặt quy định hạn chế cho ứng dụng.

    Chỉnh sửa trang khoá API

  4. Chọn một trong các loại quy định hạn chế và cung cấp thông tin bắt buộc theo danh sách hạn chế.

    Loại quy định hạn chế Mô tả
    Trang web Chỉ định một hoặc nhiều trang web liên kết giới thiệu.
    • Các giao thức URI liên kết giới thiệu được hỗ trợ trên toàn cầu httpshttp.
    • Luôn cung cấp URI liên kết giới thiệu đầy đủ, bao gồm lược đồ giao thức, tên máy chủ và cổng không bắt buộc (ví dụ: https://google.com).
    • Bạn có thể sử dụng ký tự đại diện để cho phép tất cả miền con. Cho ví dụ: https://*.google.com chấp nhận mọi trang web kết thúc trong .google.com. Lưu ý rằng nếu bạn chỉ định www.domain.com, miền này đóng vai trò là một ký tự đại diện www.domain.com/* và cho phép mọi đường dẫn con trên tên máy chủ đó.
    • Hãy cẩn thận khi uỷ quyền các đường liên kết giới thiệu đầy đủ, ví dụ: https://google.com/some/path, theo mặc định, hầu hết các trình duyệt hiện tại sẽ loại bỏ đường dẫn khỏi các yêu cầu từ nhiều nguồn.
    địa chỉ IP Chỉ định một hoặc nhiều địa chỉ IPv4 hoặc IPv6 hoặc mạng con bằng CIDR . Địa chỉ IP phải khớp với địa chỉ nguồn Các máy chủ của Nền tảng Google Maps quan sát thấy. Nếu bạn sử dụng dịch địa chỉ mạng (NAT), địa chỉ này thường tương ứng với địa chỉ công khai của máy Địa chỉ IP.
    Ứng dụng Android Thêm tên gói Android (từ AndroidManifest.xml) và SHA-1 dấu vân tay chứng chỉ ký của mỗi ứng dụng Android mà bạn muốn để uỷ quyền. Nếu bạn sử dụng Tính năng ký ứng dụng của Play, để tìm nạp dấu vân tay chứng chỉ ký, hãy xem Làm việc với nhà cung cấp API. Nếu bạn quản lý khoá ký của riêng mình, hãy xem Tự ký đơn đăng ký hoặc tham khảo hướng dẫn dành cho môi trường tạo bản dựng.
    Ứng dụng iOS Thêm mã nhận dạng gói của từng ứng dụng iOS bạn muốn để uỷ quyền.

    Để biết các đề xuất về quy định hạn chế đối với đơn đăng ký, hãy xem Hạn chế ứng dụng được đề xuất.

  5. Chọn Lưu.

Đặt các quy tắc hạn chế API cho khoá API

  1. Mở Google Cloud Console Thông tin đăng nhập trên Nền tảng Google Maps .

  2. Chọn khoá API mà bạn muốn hạn chế.

  3. Trên trang Chỉnh sửa khoá API, trong phần Các hạn chế về API:

    • Chọn Hạn chế khoá.

    • Mở mục Chọn API rồi chọn API hoặc SDK bạn muốn để ứng dụng của bạn truy cập bằng khoá API.

      Bạn cần bật API hoặc SDK nếu không có trong danh sách. Để biết thông tin chi tiết, hãy xem Để bật một hoặc nhiều API hoặc SDK.

    Hạn chế một API trên trang Chỉnh sửa khoá API

  4. Chọn Lưu.

    Quy định hạn chế này sẽ trở thành một phần của định nghĩa khoá API sau bước này. Hãy nhớ cung cấp thông tin phù hợp rồi chọn Lưu để lưu Các hạn chế đối với khoá API. Để biết thêm thông tin, hãy xem Hướng dẫn Nhận khoá API trong tài liệu về API hoặc SDK cụ thể mà bạn quan tâm.

Để biết các quy định hạn chế được đề xuất đối với API, hãy xem Các quy định hạn chế về API được đề xuất.

Kiểm tra việc sử dụng khoá API của bạn

Nếu bạn đang hạn chế khoá API sau khi các khoá này được tạo hoặc nếu bạn muốn xem những API nào đang được một khoá sử dụng để bạn có thể hạn chế các API đó, bạn nên kiểm tra hoạt động sử dụng khoá API của bạn. Các bước này sẽ cho bạn biết dịch vụ và phương thức API nào đang sử dụng khoá API. Nếu bạn thấy bất kỳ mức sử dụng nào vượt quá Các dịch vụ của Nền tảng Google Maps, hãy điều tra để xác định xem bạn có cần thêm để tránh sử dụng không mong muốn. Bạn có thể sử dụng trình khám phá Chỉ số trên Cloud Console của Google Maps Platform để giúp xác định API và các quy định hạn chế về ứng dụng để áp dụng cho khoá API của bạn:

Xác định các API sử dụng khoá API của bạn

Các báo cáo chỉ số sau đây giúp bạn xác định API nào đang sử dụng khoá API của bạn. Bạn có thể sử dụng các báo cáo này để làm những việc sau:

  • Xem cách khoá API của bạn được sử dụng
  • Phát hiện mức sử dụng ngoài dự kiến
  • Giúp xác minh xem một khoá không dùng đến có an toàn để xoá hay không. Để biết thông tin về cách xoá khoá API, hãy xem phần Xoá khoá API không dùng đến.

Khi áp dụng các quy tắc hạn chế đối với API, hãy sử dụng các báo cáo này để tạo danh sách API cho uỷ quyền hoặc xác thực quy định hạn chế về khoá API được tạo tự động nội dung đề xuất. Để biết thêm thông tin về các quy định hạn chế được đề xuất, hãy xem Áp dụng các quy tắc hạn chế được đề xuất. Để biết thêm thông tin về cách sử dụng Trình khám phá chỉ số, hãy xem Tạo biểu đồ bằng Trình khám phá chỉ số.

  1. Chuyển đến Trình khám phá chỉ số của Google Cloud Console.

  2. Đăng nhập rồi chọn dự án cho các khoá API mà bạn muốn kiểm tra.

  3. Chuyển đến trang Trình khám phá chỉ số cho loại API của bạn:

  4. Kiểm tra từng khoá API:

    1. Chọn THÊM BỘ LỌC.

    2. Chọn nhãn credential_id.

    3. Chọn value tương ứng với khoá mà bạn muốn kiểm tra.

    4. Lưu ý xem khoá API này đang được dùng cho API nào và xác nhận việc sử dụng là như dự kiến.

    5. Sau khi hoàn tất, hãy chọn Xoá bộ lọc ở cuối bộ lọc đang hoạt động để xoá bộ lọc bổ sung.

  5. Lặp lại các thao tác trên cho các phím còn lại.

  6. Hạn chế để chỉ sử dụng khoá API cho những API đang được sử dụng.

  7. Nếu bạn phát hiện hành vi sử dụng trái phép, hãy xem Xử lý hành vi sử dụng trái phép khoá API.

Chọn đúng loại quy định hạn chế về ứng dụng bằng Trình khám phá chỉ số

Sau khi bạn xác minh và thực hiện mọi hành động cần thiết để đảm bảo khoá API của bạn chỉ được dùng cho các dịch vụ của Nền tảng Google Maps mà dịch vụ đó đang sử dụng, đảm bảo khoá API có đúng các hạn chế đối với ứng dụng.

Nếu khoá API của bạn có các quy tắc hạn chế được đề xuất đối với khoá API, hãy áp dụng các quy tắc đó. Để biết thêm hãy xem phần Áp dụng các quy tắc hạn chế được đề xuất đối với khoá API.

Nếu khoá API của bạn không có đề xuất hạn chế, hãy xác định loại giới hạn ứng dụng sẽ được áp dụng, dựa trên platform_type được báo cáo sử dụng trình khám phá chỉ số:

  1. Chuyển đến Trình khám phá chỉ số của Google Cloud Console.

  2. Đăng nhập rồi chọn dự án cho các API mà bạn muốn kiểm tra.

  3. Chuyển đến trang Trình khám phá chỉ số này: Trình khám phá chỉ số.

  4. Kiểm tra từng khoá API:

    1. Chọn THÊM BỘ LỌC.

    2. Chọn nhãn credential_id.

    3. Chọn value tương ứng với khoá mà bạn muốn kiểm tra.

    4. Sau khi hoàn tất, hãy chọn Xoá bộ lọc ở cuối bộ lọc đang hoạt động để xoá bộ lọc bổ sung.

  5. Lặp lại các thao tác trên cho các phím còn lại.

  6. Sau khi bạn có loại nền tảng cho các khoá API của mình, hãy áp dụng ứng dụng hạn chế cho platform_type đó:

    PLATFORM_TYPE_JS
    Áp dụng các hạn chế về trang web đối với khoá.
    PLATFORM_TYPE_ANDROID
    Áp dụng các hạn chế cho ứng dụng Android đối với khoá.
    PLATFORM_TYPE_IOS
    Áp dụng các hạn chế đối với ứng dụng iOS đối với khoá này.
    PLATFORM_TYPE_WEBSERVICE
    Bạn có thể phải dựa vào các hạn chế địa chỉ IP trên khóa để hạn chế nội dung đó. Để biết thêm các tuỳ chọn khác dành cho Maps Static API và API Chế độ xem phố tĩnh, xem Bảo vệ ứng dụng bằng API web tĩnh. Để biết thêm hướng dẫn về API Nhúng của Maps, hãy xem Các trang web có API Nhúng của Maps.
    Khoá API của tôi đang sử dụng nhiều loại nền tảng
    Không thể bảo mật lưu lượng truy cập của bạn đúng cách chỉ bằng một khoá API duy nhất. Bạn cần để di chuyển sang nhiều khoá API. Để biết thêm thông tin, hãy xem Di chuyển sang nhiều khoá API.

Sử dụng các khoá API riêng biệt cho từng ứng dụng

Phương pháp này giới hạn phạm vi của từng khoá. Nếu một khoá API bị xâm phạm, bạn có thể xoá hoặc tạo lại khoá bị ảnh hưởng mà không cần cập nhật khoá khác Khoá API. Bạn có thể tạo tối đa 300 khoá API cho mỗi dự án. Để biết thêm thông tin, xem Giới hạn đối với khoá API.

Mặc dù mỗi ứng dụng có một khoá API là giải pháp lý tưởng cho mục đích bảo mật, nhưng bạn vẫn có thể sử dụng các khoá bị hạn chế trên nhiều ứng dụng, miễn là các khoá này sử dụng cùng một loại hạn chế ứng dụng.

Áp dụng các quy định hạn chế được đề xuất đối với khoá API

Đối với một số chủ sở hữu và người chỉnh sửa dự án, Google Cloud Console đề xuất các hạn chế cụ thể đối với khoá API không bị hạn chế dựa trên Hoạt động và mức sử dụng trên Nền tảng Google Maps.

Nếu có, các đề xuất sẽ xuất hiện dưới dạng các lựa chọn được điền sẵn trên Thông tin đăng nhập trên Nền tảng Google Maps .

Lý do khiến bạn có thể không thấy một nội dung đề xuất hoặc một nội dung đề xuất chưa hoàn chỉnh

  • Bạn (cũng) đang sử dụng khoá API trên không phải Nền tảng Google Maps luôn miễn phí. Nếu bạn thấy việc sử dụng trên các dịch vụ khác, đừng áp dụng mà không trước tiên làm những việc sau:

    1. Xác minh rằng mức sử dụng API mà bạn thấy trong Chỉ số của Google Cloud Console trình khám phá là hợp lệ.

    2. Thêm dịch vụ còn thiếu vào danh sách API được uỷ quyền theo cách thủ công.

    3. Thêm thủ công mọi quy định hạn chế còn thiếu của ứng dụng cho các dịch vụ được thêm vào vào danh sách API. Nếu công cụ khác mà bạn thêm vào sẽ yêu cầu loại khác của các hạn chế đối với ứng dụng, xem Di chuyển sang nhiều khoá API.

  • Khoá API của bạn không được dùng trong SDK hoặc API phía máy khách.

  • Bạn sử dụng khoá API trong một ứng dụng hoặc trang web có dung lượng thấp và chưa được sử dụng trong 60 ngày qua.

  • Bạn mới tạo khoá mới hoặc mới triển khai khoá mới khoá hiện có trong ứng dụng mới. Nếu đúng như vậy, bạn chỉ cần đợi thêm vài ngày cho phép Google đề xuất cập nhật.

  • Bạn đang sử dụng khoá API trong nhiều ứng dụng cần đến các loại hạn chế ứng dụng xung đột với nhau hoặc bạn đang sử dụng cùng một Khoá API trong quá nhiều ứng dụng hoặc trang web khác nhau. Trong cả hai trường hợp, tốt nhất là bạn nên chuyển sang nhiều khoá. Để biết thêm thông tin, hãy xem Di chuyển sang nhiều khoá API.

Lý do khiến bạn có thể thấy các đề xuất không hiển thị trong biểu đồ

  • Ứng dụng hoặc trang web của bạn chỉ gửi những đợt tăng lưu lượng truy cập rất ngắn. Trong trường hợp này, chuyển từ chế độ xem BIỂU ĐỒ để hiển thị BẢNG hoặc CẢ HAI, vì cách sử dụng là vẫn hiển thị trong phần chú thích. Để biết thêm thông tin, hãy xem Bật/tắt toàn bộ chú thích của biểu đồ.

  • Lưu lượng truy cập của bạn đến từ Maps Embedded API (API Nhúng của Maps). Để biết hướng dẫn, hãy xem Xác định các API sử dụng khoá API của bạn.

  • Lưu lượng truy cập từ ứng dụng hoặc trang web nằm ngoài phạm vi ngày có sẵn trong trình khám phá Chỉ số trên Google Cloud Console.

  1. Mở Google Cloud Console Thông tin đăng nhập trên Nền tảng Google Maps .

  2. Nếu có, hãy chọn Áp dụng các quy định hạn chế được đề xuất.

    Áp dụng các quy tắc hạn chế được đề xuất

    Lưu ý: Nếu bạn không thấy quy định hạn chế được đề xuất nào, hãy xem Đặt các quy tắc hạn chế API cho khoá API để thiết lập phù hợp hạn chế.

  3. Chọn Kiểm tra mức sử dụng API để xác minh những dịch vụ đang được dùng để khoá API được sử dụng trên. Nếu bạn thấy các dịch vụ khác ngoài các dịch vụ của Nền tảng Google Maps, hãy tạm dừng để xem xét các bước đề xuất ở trên theo cách thủ công. Xem phần khắc phục sự cố các bước ở đầu phần Áp dụng các quy tắc hạn chế được đề xuất đối với khoá API.

  4. Kiểm tra kỹ để đảm bảo các quy định hạn chế được điền sẵn khớp với trang web và ứng dụng mà bạn muốn dùng khoá API.

    Phương pháp hay nhất: Ghi lại và xoá mọi quy định hạn chế về ứng dụng hoặc API không liên kết với dịch vụ của bạn. Nếu có vấn đề xảy ra do phần phụ thuộc không mong muốn, thì bạn có thể thêm lại các ứng dụng hoặc API cần thiết.

    • Nếu bạn nhận thấy ứng dụng, trang web hoặc API rõ ràng bị thiếu trong đề xuất, hãy thêm theo cách thủ công hoặc đợi một vài ngày để cho phép nội dung đề xuất cập nhật.

    • Nếu bạn cần trợ giúp thêm về đề xuất được đề xuất, liên hệ với bộ phận hỗ trợ.

  5. Chọn Áp dụng.

Việc cần làm nếu đơn đăng ký của bạn bị từ chối sau khi áp dụng một đề xuất

Nếu bạn nhận thấy một ứng dụng hoặc trang web bị từ chối sau khi áp dụng một quy định hạn chế, tìm quy tắc hạn chế của ứng dụng mà bạn cần thêm vào lỗi phản hồi của API .

Đối với các SDK phía máy khách, hãy xem bên dưới:

Để kiểm tra các quy tắc hạn chế bắt buộc đối với API, hãy xem Xác định các API sử dụng khoá API của bạn.

Nếu bạn không thể xác định những quy định hạn chế sẽ áp dụng:

  1. Ghi lại các quy định hạn chế hiện tại để tham khảo trong tương lai.
  2. Hãy tạm thời xoá các tài khoản đó trong khi bạn điều tra vấn đề. Bạn có thể kiểm tra theo thời gian bằng cách làm theo các bước trong bài viết Kiểm tra việc sử dụng khoá API của bạn.
  3. Nếu cần, hãy liên hệ với nhóm hỗ trợ.

Xoá khoá API không dùng đến

Trước khi xoá khoá API, hãy đảm bảo rằng bạn chưa dùng khoá đó trong môi trường phát hành công khai. Nếu không có lưu lượng truy cập thành công, thì có thể an toàn để xoá khoá. Để biết thêm hãy xem phần Kiểm tra việc sử dụng khoá API của bạn.

Cách xoá khoá API:

  1. Mở Google Cloud Console Thông tin đăng nhập trên Nền tảng Google Maps .

  2. Chọn khoá API bạn muốn xoá.

  3. Chọn nút Xoá ở gần đầu trang.

  4. Trên trang Xoá thông tin đăng nhập, hãy chọn Xoá.

    Việc xoá khoá API sẽ mất vài phút để có hiệu lực. Sau khi truyền xong, mọi lưu lượng truy cập sử dụng khoá API đã xoá sẽ bị từ chối.

Hãy cẩn thận khi tạo lại khoá API của bạn

Việc tạo lại khoá API sẽ tạo ra một khoá mới có tất cả thông tin của khoá cũ hạn chế. Quá trình này cũng bắt đầu bộ tính giờ 24 giờ, sau đó API cũ đã xoá khoá.

Trong khoảng thời gian này, cả khoá cũ và khoá mới đều được chấp nhận, mang lại cho bạn cơ hội di chuyển ứng dụng của bạn để sử dụng khoá mới. Tuy nhiên, sau khoảng thời gian này hết hiệu lực, mọi ứng dụng vẫn sử dụng khoá API cũ sẽ ngừng hoạt động.

Trước khi tạo lại khoá API:

  • Trước tiên, hãy cố gắng hạn chế các khoá API của bạn theo mô tả trong Hạn chế khoá API.

  • Nếu không thể hạn chế khoá API của bạn do ứng dụng xung đột loại hạn chế, di chuyển sang nhiều khoá mới (bị hạn chế) như mô tả trong Di chuyển sang nhiều khoá API. Di chuyển cho phép bạn kiểm soát quá trình di chuyển và triển khai tiến trình cho các khoá API mới.

Nếu không thể áp dụng các đề xuất trước đó và bạn phải tạo lại Để ngăn chặn hành vi sử dụng trái phép, hãy làm theo các bước sau đây:

  1. Mở Google Cloud Console Thông tin đăng nhập trên Nền tảng Google Maps .

  2. Mở khoá API mà bạn muốn tạo lại.

  3. Ở đầu trang, hãy chọn Tạo lại khoá.

  4. Chọn Thay thế khoá.

Lưu ý: Nếu cần, bạn có thể khôi phục mọi khoá đã được tạo lại phiên bản trước của ứng dụng đó. Không có giới hạn về thời gian đối với thao tác khôi phục.

Cách khôi phục khoá đã tạo lại

  1. Mở Google Cloud Console Thông tin đăng nhập trên Nền tảng Google Maps .

  2. Mở khoá API bạn muốn khôi phục.

  3. Chọn Hoàn nguyên về phím trước.

  4. Trong hộp thoại Hoàn nguyên, chọn Phím hoàn nguyên.

Khi khôi phục, phiên bản "mới" trước đây phiên bản của khoá sẽ trở thành phiên bản trước đó và đồng hồ hẹn giờ hủy kích hoạt trong 24 giờ mới được đặt cho phiên bản đó. Có thể hoàn nguyên giữa hai giá trị khoá này cho đến khi bạn tạo lại khoá.

Nếu bạn tạo lại khoá này, khoá sẽ ghi đè giá trị khoá cũ không hoạt động.

Di chuyển sang nhiều khoá API

Để di chuyển từ việc sử dụng một khoá API cho nhiều ứng dụng sang một khoá API duy nhất đối với từng ứng dụng, hãy làm như sau:

  1. Xác định những ứng dụng cần khoá mới:

    • Ứng dụng web là ứng dụng dễ cập nhật nhất vì bạn kiểm soát toàn bộ mã. Hãy lên kế hoạch cập nhật tất cả các ứng dụng dựa trên nền tảng web của bạn khoá.
    • Ứng dụng di động khó hơn nhiều vì khách hàng của bạn phải cập nhật ứng dụng của họ trước khi có thể sử dụng khoá mới.
  2. Tạo và hạn chế khoá mới: Thêm cả quy tắc hạn chế cho ứng dụng và ít nhất một quy định hạn chế về API. Để biết thêm thông tin, hãy xem Các phương pháp hay nhất được đề xuất.

  3. Thêm khoá mới vào ứng dụng: Đối với ứng dụng dành cho thiết bị di động, quá trình này có thể phải mất hàng tháng cho đến khi tất cả người dùng của bạn cập nhật lên ứng dụng mới nhất với Khoá API.

Bảo vệ ứng dụng bằng API web tĩnh

API web tĩnh, chẳng hạn như Maps Static API và API Chế độ xem đường phố tĩnh tương tự như lệnh gọi API dịch vụ web.

Bạn gọi cả hai bằng cách sử dụng một API REST HTTPS đơn giản và bạn thường tạo API URL yêu cầu trên máy chủ. Tuy nhiên, thay vì trả về phản hồi JSON, phương thức Static API web tạo một hình ảnh để bạn có thể nhúng vào mã HTML đã tạo. Xem thêm quan trọng là thường máy khách của người dùng cuối chứ không phải máy chủ gọi dịch vụ Google Maps Platform.

Sử dụng chữ ký số

Một phương pháp hay nhất là luôn sử dụng chữ ký số bên cạnh Khoá API. Ngoài ra, hãy xem xét số lượng yêu cầu chưa ký mà bạn muốn cho phép mỗi ngày và điều chỉnh hạn mức yêu cầu chưa ký cho phù hợp.

Để biết thêm thông tin về chữ ký số, hãy xem Hướng dẫn về chữ ký số.

Bảo vệ khoá bí mật ký

Để bảo vệ API web tĩnh, đừng nhúng trực tiếp mã thông báo bí mật cho API của bạn trong mã hoặc trong cây nguồn hoặc hiển thị chúng trong các ứng dụng phía máy khách. Theo dõi những phương pháp hay nhất sau đây để bảo vệ bí mật ký của bạn:

  • Ký yêu cầu của bạn ở phía máy chủ, không phải trên máy khách. Nếu bạn thực hiện việc ký phía máy khách trong JavaScript, bạn sẽ hiển thị tệp này cho bất kỳ ai truy cập vào trang web của mình. Do đó, đối với hình ảnh được tạo động, hãy luôn tạo Bản đồ có chữ ký API tĩnh và API tĩnh của Chế độ xem đường phố yêu cầu URL phía máy chủ khi phân phát trang web. Đối với nội dung tĩnh trên web, bạn có thể sử dụng bài viết Ký URL ngay trên trang Thông tin đăng nhập của Nền tảng Google Maps trên Cloud Console.

  • Lưu trữ khoá ký bí mật bên ngoài mã nguồn và cây nguồn của ứng dụng. Nếu bạn đặt khoá ký tên hoặc bất kỳ thông tin riêng tư nào khác trong biến môi trường hoặc bao gồm các tệp được lưu trữ riêng, sau đó khi chia sẻ mã, thì bí mật ký không được đưa vào tệp được chia sẻ. Nếu bạn lưu trữ bí mật ký tên hoặc bất kỳ thông tin riêng tư nào khác trong tệp, hãy giữ các tệp bên ngoài cây nguồn của ứng dụng để giữ bí mật cho việc ký ra khỏi hệ thống kiểm soát mã nguồn của bạn. Biện pháp phòng ngừa này đặc biệt rất quan trọng nếu bạn sử dụng hệ thống quản lý mã nguồn công khai, chẳng hạn như GitHub.

Bảo vệ khoá API của bạn trong các ứng dụng bằng dịch vụ web

Lưu trữ khoá API bên ngoài ứng dụng của bạn mã nguồn hoặc cây nguồn. Nếu bạn đặt khoá API hoặc bất kỳ phương thức nào khác thông tin trong các biến môi trường hoặc bao gồm các tệp được lưu trữ riêng rồi chia sẻ mã của bạn, các khoá API không được bao gồm trong tệp được chia sẻ. Điều này đặc biệt quan trọng nếu bạn sử dụng mã nguồn công khai hệ thống quản lý, chẳng hạn như GitHub.

Bảo vệ khoá API và bí mật ký trong các ứng dụng di động bằng dịch vụ web hoặc API web tĩnh

Để bảo vệ ứng dụng dành cho thiết bị di động, hãy sử dụng kho khoá bảo mật hoặc máy chủ proxy bảo mật:

  • Lưu trữ khoá API hoặc khoá bí mật ký trong một kho khoá bảo mật. Bước này giúp khó trích xuất khoá API và dữ liệu riêng tư khác trực tiếp từ .

  • Sử dụng máy chủ proxy bảo mật. Máy chủ proxy cung cấp một nguồn ổn định cho tương tác với API của Nền tảng Google Maps thích hợp. Để biết thêm thông tin về cách sử dụng máy chủ proxy, hãy xem Sống tự nhiên: Sử dụng máy chủ proxy với Thư viện ứng dụng API Dữ liệu của Google.

    • Tạo các yêu cầu trên Nền tảng Google Maps trên máy chủ proxy. Không cho phép ứng dụng chuyển tiếp các lệnh gọi API tuỳ ý qua proxy.

    • Xử lý hậu kỳ các phản hồi của Nền tảng Google Maps trên máy chủ proxy của bạn. Lọc ra dữ liệu mà khách hàng không cần.

Xử lý hoạt động sử dụng trái phép khoá API

Nếu bạn phát hiện việc sử dụng khoá API của mình trái phép, hãy làm như sau để giải quyết vấn đề:

  1. Hạn chế khoá: Nếu bạn đã dùng cùng một khoá trong nhiều ứng dụng, di chuyển sang nhiều khoá API và sử dụng các khoá API riêng biệt cho từng ứng dụng. Để biết thêm thông tin, hãy xem:

  2. Chỉ tạo lại khoá nếu bạn không thể hạn chế các khoá đó. Đọc hết phần Hãy cẩn thận khi tạo lại khoá API trước khi tiếp tục.

  3. Nếu bạn vẫn gặp vấn đề hoặc cần được trợ giúp, liên hệ với bộ phận hỗ trợ.

Các quy định hạn chế nên dùng đối với ứng dụng và API

Các phần sau đây đề xuất các hạn chế thích hợp đối với ứng dụng và API cho từng API, SDK hoặc dịch vụ của Nền tảng Google Maps.

Các quy định hạn chế nên dùng đối với API

Các nguyên tắc sau đây về các quy định hạn chế đối với API áp dụng cho toàn bộ Nền tảng Google Maps:

  • Hạn chế khoá API của bạn chỉ cho các API mà bạn đang sử dụng khoá đó bằng ngoại lệ sau:

    • Nếu ứng dụng của bạn sử dụng SDK Địa điểm dành cho Android hoặc Places SDK dành cho iOS, uỷ quyền Places API.

    • Nếu ứng dụng của bạn sử dụng API Maps JavaScript, hãy luôn cấp quyền truy cập trên khoá của bạn.

    • Nếu bạn cũng sử dụng bất kỳ API JavaScript cho Maps sau đây của Google, thì ngoài ra bạn cũng nên uỷ quyền cho các API sau:

    Dịch vụ Quy định hạn chế về API
    Dịch vụ chỉ đường, API Maps JavaScript Directions API
    Dịch vụ ma trận khoảng cách, API Maps JavaScript Distance Matrix API
    Dịch vụ dữ liệu độ cao, API Maps JavaScript Elevation API
    Dịch vụ mã hóa địa lý, API Maps JavaScript Geocoding API
    Thư viện địa điểm, API JavaScript cho Maps Places API

Một số ví dụ:

  • Bạn đang sử dụng SDK bản đồ dành cho Android và Địa điểm SDK dành cho Android, để bạn đưa Maps SDK dành cho Android và API Địa điểm dưới dạng Các hạn chế đối với API.

  • Trang web của bạn sử dụng API JavaScript của Maps Dịch vụ độ cao và API Tĩnh của Maps, nên bạn thêm các hạn chế API cho tất cả các API sau:

    • API JavaScript cho Maps
    • Elevation API
    • API tĩnh cho Maps

Hạn chế ứng dụng được đề xuất

Trang web sử dụng API JavaScript cho Maps hoặc API web tĩnh

Đối với các trang web sử dụng dịch vụ Maps JavaScript hoặc API web tĩnh, hãy sử dụng Hạn chế đối với ứng dụng Websites.

Dùng cho trang web sử dụng các API và dịch vụ JavaScript sau:

1 Đối với ứng dụng dành cho thiết bị di động, hãy cân nhắc bằng cách sử dụng kiểu gốc SDK Bản đồ dành cho AndroidSDK Maps dành cho iOS.

2 Xem thêm Bảo vệ ứng dụng di động bằng dịch vụ web hoặc API web tĩnh.

Các trang web có API Nhúng của Maps

Trong khi sử dụng Maps Embedded API miễn phí, bạn vẫn nên hạn chế mọi khoá API đã sử dụng nhằm ngăn chặn hành vi sử dụng sai mục đích trên các dịch vụ khác.

Phương pháp hay nhất: Tạo khoá API riêng cho API Nhúng của Maps sử dụng và hạn chế khoá này chỉ cho API Nhúng của Maps. Chiến dịch này sẽ đảm bảo an toàn đầy đủ cho khoá, ngăn chặn việc sử dụng trái phép khoá trên bất kỳ dịch vụ khác của Google.

Nếu bạn không thể tách việc sử dụng API Nhúng của Maps thành khoá API riêng biệt, hãy bảo mật khoá của bạn bằng Websites hạn chế ứng dụng.

Những ứng dụng và máy chủ sử dụng dịch vụ web

Đối với các ứng dụng và máy chủ sử dụng dịch vụ web, hãy dùng IP addresses hạn chế ứng dụng.

Dùng cho các ứng dụng và máy chủ dùng những API sau:

3 Đối với ứng dụng dành cho thiết bị di động, hãy cân nhắc sử dụng mã gốc SDK Địa điểm dành cho AndroidSDK Địa điểm dành cho iOS.

Ứng dụng Android

Đối với ứng dụng trên Android, hãy sử dụng quy định hạn chế cho ứng dụng Android apps. Dùng cho các ứng dụng và máy chủ dùng những SDK này:

Ngoài ra, hãy ngăn chặn việc vô tình kiểm tra khoá API vào chế độ kiểm soát phiên bản bằng cách bằng cách sử dụng Secrets Gradle Trình bổ trợ để chèn khoá bí mật từ một tệp cục bộ thay vì lưu trữ trong Tệp kê khai Android.

Ứng dụng iOS

Đối với ứng dụng trên iOS, hãy sử dụng quy định hạn chế đối với ứng dụng iOS apps. Dùng cho các ứng dụng và máy chủ dùng những SDK này: