Исключение нулевого указателя генерируется, когда приложение пытается использовать null в случае, когда требуется объект. К ним относятся:
null
. null
. null
, как если бы это был массив. null
, как если бы это был массив. null
как будто это было значение Throwable. Приложения должны бросать экземпляры этого класса, чтобы указать на другие незаконные использования объекта null
.
Ссылка: http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html
Полагаю, вы обновили keyVaultClient
с помощью приложения AD. Если это так, вам нужно добавить участника службы в политику доступа keyvault. Перейдите к своему хранилищу ключей на портале -> Access policies
-> добавьте права доступа к вашему субъекту службы (я не уверен, какое именно разрешение является наименьшим, вы можете попытаться дать все разрешения).
В результате экспериментов я узнал, что в политике доступа KeyVault должно быть включено разрешение «Развернуть ключ» в разделе «Криптографические операции» в разделе «Разрешения ключа». Таким образом, субъекту службы, которому вы предоставляете доступ к KeyVault, должно быть предоставлено одно конкретное разрешение в ваших политиках доступа. Мы столкнулись с проблемами, потому что мы не включили это, у нас были только разрешения на шифрование и дешифрование. Это должно быть задокументировано, я добавил отзыв к документу здесь: https://docs.microsoft.com/en-us/aspnet/core/security/data-protection/configuration/overview?view=aspnetcore-2.2 [ 110]