Корректная настройка безопасности сети для соответствующих поддоменов - PullRequest
0 голосов
/ 19 сентября 2019

Вот мой текущий network_security_confg.xml:

<network-security-config>
  <domain-config cleartextTrafficPermitted="false">
   <domain includeSubdomains="true">googleapis.com</domain>
     <pin-set>
      <pin digest="SHA-256">IaMANonsensePinThatDoesntExistThisShouldFail</pin>
     </pin-set>
   </domain>
  </domain-config>
 </network-security-config>

В документации по настройке сетевой безопасности для domain сказано следующее для атрибута includeSubdomains:

Атрибуты:

includeSubdomains

Если «true», то это правило домена соответствует домену и всем поддоменам, включая субдомены поддоменов.В противном случае правило применяется только к точным совпадениям.

При моей текущей настройке запросы к firestore.googleapis.com все еще работают.Правило домена не соответствует поддомену.Я ожидаю, что все запросы не будут выполнены, так как предоставленный мной пин-код неверен, а firestore является поддоменом googleapis.com

Если я изменю конфигурацию, чтобы явно включить firestore.googleapis.comсубдомен, даже будучи вложенным дочерним элементом googleapis.com <domain-config>, запросы не будут выполняться, как я ожидаю.

<network-security-config>
  <domain-config cleartextTrafficPermitted="false">
   <domain includeSubdomains="true">googleapis.com</domain>
     <domain-config>
      <domain includeSubdomains="true">firestore.googleapis.com</domain>
      <pin-set>
       <pin digest="SHA-256">IaMANonsensePinThatDoesntExistThisShouldFail</pin>
      </pin-set>
     </domain-config>
   </domain>
  </domain-config>
 </network-security-config>

Почему мой предоставленный пин-код будет применен во втором сценарии, а не в первом

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...