Ошибка аутентификации диспетчера ресурсов Azure

Вы можете использовать eval в декораторе:

#this replaces the original printNumber with a lambda-function,
#which takes no arguments and which calls the old function with
#the number 10
@eval("lambda fun: lambda: fun(10)")
def printNumber(i: int) -> None:
    print("The number is %i", i)

#call
printNumber()

, в то время как вы не можете использовать сложные выражения, такие как

@lambda fun: lambda: fun(10)
def ...

и

@(lambda fun: lambda: fun(10))
def ...

Вы не может использовать там лямбда-выражение, потому что декоратор должен быть либо идентификатором:

@myModule.functionWithOneArg

, либо вызовом функции:

@functionReturningFunctionWithOneArg(any, "args")

Вы видите, что вызов функции eval со строкой имеет действительный синтаксис здесь, но лямбда-выражение отсутствует. (-> https://docs.python.org/3/reference/compound_stmts.html#function-definitions )

0
задан JoshD 27 February 2019 в 16:23
поделиться

1 ответ

Я использовал ms-rest-azure версии 2.6.0 и azure-arm-resource версии 7.3.0, и он работал нормально для меня с тем же кодом.

Я думаю, что это безопасно для аутентификации, используя способ аутентификации субъекта службы или обычную аутентификацию, а не способ интерактивной аутентификации входа. У нас есть шаги этих других способов аутентификации здесь -> https://github.com/Azure/azure-sdk-for-node/blob/master/Documentation/Authentication.md#using-authentication-in -your-nodejs-script , который вы можете попробовать, если хотите.

Кроме того, поскольку вы в идеале ищете приложение в Azure для доступа к API ARM, поэтому я думаю, что стоит прочитать эту статью -> https://docs.microsoft.com/en- us / azure / azure-resource-manager / resource-manager-api-authentication

Надеюсь, это поможет !!

0
ответ дан KrishnaG-MSFT 27 February 2019 в 16:23
поделиться
Другие вопросы по тегам:

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