2016-09-21 13 views
18

Vì vậy, tôi đang sử dụng API Google Maps cho dự án đầu tiên của mình mà tôi đang thực hiện ... Vì vậy, vâng tôi mới và tôi xin lỗi nếu điều này là cơ bản hoặc hiển nhiên nhưng tôi chưa đã có thể tìm thấy một câu trả lời hoặc hướng rõ ràng. Dưới đây là tài liệu tôi tìm thấy từ Google về cách an toàn bằng cách sử dụng Khóa API.Làm cách nào để sử dụng Google API một cách an toàn


Thực hành tốt nhất cho an toàn sử dụng các phím API

Khi bạn sử dụng các phím API trong các ứng dụng của bạn, chăm sóc để giữ chúng an toàn. Việc công khai thông tin đăng nhập của bạn có thể khiến tài khoản của bạn bị xâm phạm, điều này có thể dẫn đến các khoản phí không mong muốn trên tài khoản của bạn. Để giữ an toàn cho các khóa API của bạn, hãy thực hiện theo các phương pháp hay nhất sau:

Không nhúng khóa API trực tiếp vào mã: Khóa API được nhúng trong mã có thể vô tình được hiển thị công khai — ví dụ: nếu bạn quên xóa khóa từ mã mà bạn chia sẻ. Thay vì nhúng các khóa API của bạn vào các ứng dụng của bạn, hãy lưu chúng trong các biến môi trường hoặc trong các tệp bên ngoài cây nguồn của ứng dụng của bạn. Không lưu trữ khóa API trong các tệp bên trong cây nguồn của ứng dụng: Nếu bạn lưu trữ khóa API trong tệp, hãy giữ các tệp bên ngoài cây nguồn của ứng dụng để giúp đảm bảo các khóa không kết thúc trong hệ thống kiểm soát mã nguồn của bạn. Điều này đặc biệt quan trọng nếu bạn sử dụng một hệ thống quản lý mã nguồn công cộng như GitHub. Hạn chế các khóa API của bạn chỉ được sử dụng bởi địa chỉ IP, URL liên kết giới thiệu và ứng dụng dành cho thiết bị di động cần: Bằng cách giới hạn địa chỉ IP, URL liên kết giới thiệu và ứng dụng dành cho thiết bị di động có thể sử dụng mỗi khóa, bạn có thể giảm tác động của một Mã API. Bạn có thể chỉ định máy chủ và ứng dụng có thể sử dụng từng khóa từ bảng điều khiển bằng cách mở trang Thông tin xác thực và sau đó tạo khóa API mới với cài đặt bạn muốn hoặc chỉnh sửa cài đặt của khóa API. Xóa các khóa API không cần thiết: Để giảm thiểu mức độ phơi sáng của bạn để tấn công, hãy xóa mọi khóa API mà bạn không còn cần đến nữa. Tạo lại khóa API của bạn theo định kỳ: Bạn có thể tạo lại khóa API từ trang Chứng chỉ Bảng điều khiển nền tảng đám mây bằng cách nhấp vào Tạo lại khóa cho mỗi khóa. Sau đó, cập nhật ứng dụng của bạn để sử dụng các khóa mới được tạo. Khóa cũ của bạn sẽ tiếp tục hoạt động trong 24 giờ sau khi bạn tạo khóa thay thế. Xem xét mã của bạn trước khi phát hành công khai mã: Đảm bảo rằng mã của bạn không chứa khóa API hoặc bất kỳ thông tin cá nhân nào khác trước khi bạn cung cấp mã của mình công khai.


Vấn đề của tôi là tôi không thể tìm ra cách kết hợp Google Map trên trang web của mình mà không trực tiếp đưa nó vào mã. Ngay bây giờ API của tôi là trong index.html của tôi như thế này:

<script async defer 
    src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap"> 
</script> 

Nhưng một lần nữa đây là trực tiếp trong mã của tôi cho thế giới xem mà tôi tin là một cách sai lầm.

+0

Bản sao có thể có của [Tôi nên thực hiện các bước nào để bảo vệ Khóa API Google Maps của mình?] (Http://stackoverflow.com/questions/1364858/what-steps-should-i -take-to-protect-my-google-maps-api-key) – Burgi

Trả lời

22

Đối với API Javascript của Google Maps v3, các phím phải được công khai trên trang của bạn. Các văn bản được áp dụng là:

Restrict phím API của bạn sẽ được sử dụng bởi chỉ có địa chỉ IP, URL giới thiệu, và các ứng dụng di động rằng cần chúng

Đến Google Bảng điều khiển API và tạo khóa, giới hạn nó thành URL mà bạn sở hữu (hoặc muốn đặt bản đồ) để ngăn chặn hạn chế "hành vi trộm cắp".

+0

Cảm ơn bạn! Tôi chỉ mù quáng bỏ lỡ điều đó. Chỉ cần thêm URL của tôi và bây giờ tôi tốt để đi! –

9

API key best practices article bạn chỉ tham khảo hướng dẫn chung về sử dụng khóa API và với một số API người dùng cuối, chẳng hạn như API JavaScript của Google Maps, bạn không thể tránh để lộ khóa API cho người dùng cuối. Trong ứng dụng API JavaScript Maps công khai, bạn nên thêm giới hạn liên kết giới thiệu vào bất kỳ khóa nào được sử dụng trong hệ thống sản xuất, đặc biệt là hệ thống công khai và chỉ cho phép miền, máy chủ lưu trữ hoặc thậm chí URL đầy đủ của ứng dụng của bạn .

Khi bạn tạo khóa trong Google API Console và chọn thông tin đăng nhập cho API JavaScript của Maps, trình hướng dẫn sẽ hướng dẫn bạn cách bảo mật khóa và sẽ nhắc bạn cho URL bạn muốn ủy quyền.

+0

Cảm ơn! Thông tin tốt có –

+0

Có bất kỳ điều gì ngăn tôi không giả mạo tiêu đề yêu cầu của Người giới thiệu http và tự kích hoạt tấn yêu cầu hợp lệ bằng cách sử dụng khóa API tôi có thể lấy từ javascript của bạn không? –

0

Tôi cũng gặp sự cố với vấn đề này. Những gì tôi đã làm là tải chìa khóa từ máy chủ và sau đó sử dụng thư viện này để tải api google sau khi chìa khóa được lấy ra: https://www.npmjs.com/package/google-maps. Sau đó, bạn có thể khóa liên kết giới thiệu http

Các vấn đề liên quan