Аутентификация Cognito отправляет хэши по проводам?

Вот быстрый и грязный пример того, как класс может запускать разные версии метода сохранения, в зависимости от того, какую операционную систему он выполняет при использовании getattr().

import os

class Log(object):
    def __init__(self):
        self.os = os.name
    def __getattr__(self, name):
        """ look for a 'save' attribute, or just 
          return whatever attribute was specified """
        if name == 'save':
            try:
                # try to dynamically return a save 
                # method appropriate for the user's system
                return getattr(self, self.os)
            except:
                # bail and try to return 
                # a default save method
                return getattr(self, '_save')
        else:
            return getattr(self, name)

    # each of these methods could have save logic specific to 
    # the system on which the script is executed
    def posix(self): print 'saving on a posix machine'
    def nt(self): print 'saving on an nt machine'
    def os2(self): print 'saving on an os2 machine'
    def ce(self): print 'saving on a ce machine'
    def java(self): print 'saving on a java machine'
    def riscos(self): print 'saving on a riscos machine'
    def _save(self): print 'saving on an unknown operating system'

    def which_os(self): print os.name

Теперь давайте использовать этот класс в примере:

logger = Log()

# Now you can do one of two things:
save_func = logger.save
# and execute it, or pass it along 
# somewhere else as 1st class:
save_func()

# or you can just call it directly:
logger.save()

# other attributes will hit the else 
# statement and still work as expected
logger.which_os()
1
задан rich 16 January 2019 в 07:33
поделиться

1 ответ

По моему опыту (у меня нет ничего написанного от AWS, чтобы поддержать это) Amplify отправляет USER_AUTH, за которым следует пароль, похожий на SSH. Это означает, что пароль не передается по проводам, а не в виде открытого текста и не хэшируется. Метод будет аналогичен тому, что объясняется здесь : клиент подтверждает, что у него есть пароль, отвечая на вызов. Используется механизм хеширования, но используемый хэш - это не просто хэш пароля.

0
ответ дан Bram 16 January 2019 в 07:33
поделиться
Другие вопросы по тегам:

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