Политика аттестации версии 1.0
Владельцы экземпляров могут использовать политику Аттестация Azure для определения того, что необходимо проверить во время потока аттестации. В этой статье приводятся сведения о работе службы аттестации и обработчика политик. Каждый тип аттестации имеет собственную политику аттестации. Поддерживаемая грамматика и обработка в целом одинаковы.
Политика версии 1.0
Минимальная версия политики, поддерживаемой службой, — версия 1.0.
Поток обслуживания аттестации выглядит следующим образом:
- Платформа отправляет доказательства аттестации в вызове аттестации в службу аттестации.
- Служба аттестации анализирует доказательства и создает список утверждений, используемых в оценке аттестации. Эти утверждения логически классифицируются как входящие наборы утверждений.
- Отправленная политика аттестации используется для оценки доказательств по правилам, созданным в политике аттестации.
Политика версии 1.0 состоит из трех сегментов:
- версия: версия — это номер версии грамматической грамматики, за которой следует.
- authorizationrules: коллекция правил утверждений, которые проверяются сначала, чтобы определить, должна ли аттестация продолжать выдачу. Используйте этот раздел, чтобы отфильтровать вызовы, которые не требуют применения правил выдачи. Утверждения из этого раздела не могут быть выданы маркеру ответа. Эти правила можно использовать для сбоя аттестации.
- issuancerules: коллекция правил утверждений, которые оцениваются для добавления сведений в результат аттестации, как определено в политике. Правила утверждения применяются в порядке, в котором они определены. Они также необязательные. Эти правила можно использовать для добавления в набор исходящих утверждений и маркер ответа. Эти правила нельзя использовать для сбоя аттестации.
Следующие утверждения поддерживаются политикой версии 1.0 в рамках входящих утверждений.
Аттестация доверенного платформенного модуля
Используйте эти утверждения для определения правил авторизации в политике аттестации доверенного платформенного модуля (TPM):
- aikValidated: Логическое значение, содержащее сведения о том, был ли проверен сертификат удостоверения аттестации (AIK).
- aikPubHash: строка, содержащая открытый ключ AIK (SHA256) в формате DER.
- tpmVersion: целочисленное значение, содержащее основную версию доверенного платформенного модуля.
- secureBootEnabled: логическое значение, указывающее, включена ли безопасная загрузка.
- iommuEnabled:Логическое значение, указывающее, включена ли единица управления памятью ввода-вывода.
- bootDebuggingDisabled: логическое значение, указывающее, отключена ли отладка загрузки.
- notSafeMode: логическое значение, указывающее, не работает ли Windows в безопасном режиме.
- notWinPE: логическое значение, указывающее, не работает ли Windows в режиме WinPE.
- vbsEnabled: логическое значение, указывающее, включена ли безопасность на основе виртуализации (VBS).
- vbsReportPresent: логическое значение, указывающее, доступен ли отчет об анклавах VBS.
Аттестация VBS
Используйте следующие утверждения для определения правил авторизации в политике аттестации VBS:
- enclaveAuthorId: строковое значение, содержащее закодированное значение Base64Url идентификатора автора анклава. Это идентификатор автора основного модуля анклава.
- enclaveImageId: строковое значение, содержащее закодированное значение Base64Url идентификатора образа анклава. Это идентификатор образа основного модуля анклава.
- анклаваOwnerId: строковое значение, содержащее закодированное значение Base64Url идентификатора владельца анклава. Это идентификатор владельца анклава.
- enclaveFamilyId: строковое значение, содержащее закодированное значение base64Url идентификатора семейства анклава. Это семейный идентификатор основного модуля анклава.
- enclaveSvn: целочисленное значение, содержащее номер версии безопасности основного модуля для анклава.
- enclavePlatformSvn: целочисленное значение, содержащее номер версии безопасности платформы, на котором размещен анклава.
- анклаваFlags: утверждение анклаваFlags — это целочисленное значение, содержащее флаги, описывающие политику выполнения анклава.
Примеры политик для различных типов аттестации
Пример политики для доверенного платформенного модуля:
version=1.0;
authorizationrules {
=> permit();
};
issuancerules
{
[type=="aikValidated", value==true]&&
[type=="secureBootEnabled", value==true] &&
[type=="bootDebuggingDisabled", value==true] &&
[type=="notSafeMode", value==true] => issue(type="PlatformAttested", value=true);
};