Interfejs API Edge może próbować uzyskać dostęp do lokalnego adresu IP w kilku miejscach. Ten lokalny adres IP może odpowiadać zasobom prywatnym lub chronionym w inny sposób, które nie powinny być udostępniane użytkownikom zewnętrznym:
- Narzędzie Trace w interfejsie Edge może wysyłać i odbierać żądania API pod dowolnym określonym adresem URL. W pewnych sytuacjach, gdy komponenty brzegowe są hostowane razem z innymi usługami wewnętrznymi, złośliwy użytkownik może nadużywać możliwości narzędzia śledzenia, wysyłając żądania do prywatnych adresów IP.
- Podczas tworzenia proxy interfejsu API na podstawie specyfikacji OpenAPI specyfikacja obejmuje takie elementy interfejsu API jak ścieżka podstawowa, ścieżki, czasowniki, nagłówki itp. W ramach specyfikacji złośliwy użytkownik może określić podstawową ścieżkę serwera proxy odwołującą się do prywatnego adresu IP.
- Podczas tworzenia serwera proxy interfejsu API z pliku WSDL znajdującego się w lokalnym systemie plików.
Ze względów bezpieczeństwa interfejs Edge domyślnie nie może się odwoływać do prywatnych adresów IP. Na liście prywatnych adresów IP znajdują się:
- Adres sprzężenia zwrotnego (127.0.0.1 lub host lokalny)
- Lokalne adresy witryny (dla adresów IPv4 – 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)
- Dowolny adres lokalny (dowolny adres odpowiadający lokalnemu hostowi).
Jeśli chcesz włączyć w interfejsie użytkownika Edge dostęp do prywatnych adresów IP, ustaw te tokeny:
- W przypadku narzędzia Trace właściwość
conf_apigee-base_apigee.feature.enabletraceforinternaladdresses
jest domyślnie wyłączona. Ustaw wartość true, aby umożliwić narzędziu Trace dostęp do prywatnych adresów IP. - W przypadku specyfikacji OpenAPI właściwość
conf_apigee-base_apigee.feature.enableopenapiforinternaladdresses
jest domyślnie wyłączona. Ustaw wartość „true”, aby włączyć dostęp OpenAPI do prywatnych adresów IP. - W przypadku plików WSDL właściwość
conf_apigee-base_apigee.feature.enablewsdlforinternaladdresses
jest domyślnie wyłączona. Ustaw wartość true, aby umożliwić przesyłanie pliku WSDL z prywatnych adresów IP.
Aby ustawić wartość „true” (prawda):
- Otwórz plik
ui.properties
w edytorze. Jeśli plik nie istnieje, utwórz go.vi /opt/apigee/customer/application/ui.properties
- Ustaw wartość tych właściwości na
conf_apigee-base_apigee.feature.enabletraceforinternaladdresses="true" conf_apigee-base_apigee.feature.enableopenapiforinternaladdresses="true" conf_apigee-base_apigee.feature.enablewsdlforinternaladdresses="true"
: - Zapisz zmiany w pliku
ui.properties
. - Upewnij się, że plik właściwości należy do użytkownika „apigee”:
chown apigee:apigee /opt/apigee/customer/application/ui.properties
- Uruchom ponownie interfejs Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Interfejs użytkownika Edge ma teraz dostęp do lokalnych adresów IP.