Как я могу проверить, имеет ли сервер ssl, включают или нет

Наиболее эффективный способ перемещения данных между сегментами в Amazon S3 - это использование команды resource.copy() или client.copy_object(). Это позволяет двум группам напрямую взаимодействовать (даже между различными регионами), без необходимости загружать / выгружать сами объекты.

Однако учетные данные, используемые для вызова команды, требуют как разрешения на чтение из источника, так и разрешения на запись в пункт назначения . Невозможно предоставить два разных набора учетных данных для этой копии.

Следовательно, вам следует выбрать ОДИН набор учетных данных и убедиться, что он имеет соответствующие разрешения. Это означает либо:

  • Предоставление разрешения учетным данным Prod для записи в место назначения, либо
  • Предоставление разрешения учетным данным не Prod для чтения из корзины Prod

Это может быть сделано либо путем создания Bucket Policy , либо путем назначения разрешений непосредственно используемой роли IAM / User .

Если это обычная задача, которая должна выполняться, вы можете рассмотреть автоматическое копирование файлов, используя событие Amazon S3 в исходной корзине для запуска функции Lambda , которая копирует объект в не Прод пункт назначения немедленно. Это позволяет избежать необходимости копировать файлы в пакетном режиме позднее.

12
задан Harikrishnan 4 March 2016 в 09:13
поделиться

3 ответа

"Легче спросить прощение, чем разрешение"

Например, для чтения stackoverflow.com через SSL не спрашивайте ли stackoverflow.com поддержки это, просто сделайте это. В Python:

>>> import urllib2
>>> urllib2.urlopen('https://stackoverflow.com')
Traceback (most recent call last):
...
urllib2.URLError: <urlopen error (10060, 'Operation timed out')>
>>> html = urllib2.urlopen('http://stackoverflow.com').read()
>>> len(html)
146271
>>> 

Это показывает это stackoverflow.com не поддерживает SSL (2008).


Обновление: stackoverflow.com поддержки https теперь.

9
ответ дан 2 December 2019 в 19:33
поделиться

не уверенный в Вашем языке предпочтения, но здесь это находится в c#

public bool IsSecureConnection()
{
    return HttpContext.Current.Request.IsSecureConnection || 
           HttpContext.Current.Request.Headers["HTTP_X_SSL_REQUEST"].Equals("1");
}

Обратите внимание, что этот заголовок является пользовательским, но я думаю, что Вы получаете идею. Я видел, что народ просто запрашивает запрос на "https", и помимо взгляда грязного это, вероятно, довольно приемлемо, зависит от Вашей модели обеспечения безопасности.

Или Вы спрашиваете, доступно ли это просто вообще?

Я

2
ответ дан 2 December 2019 в 19:33
поделиться

Необходимо указать, с каким протоколом Вы работаете - существуют версии SSL HTTP, IMAP, POP, и т.д.

Принятием его является HTTPS, которым Вы интересуетесь, Вы могли проверить, чтобы видеть, слушает ли что-то на порте 443 на сервере, и пойдите оттуда...

0
ответ дан 2 December 2019 в 19:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: