Угловые или любые другие клиентские рамки должны содержать только UI Logic. Выявление логики пользовательского интерфейса не является защитой.
Webapi на стороне сервера должен иметь правильную аутентификацию и авторизацию.
JWT (JSON Web Token) используются для безопасного доступа к API-интерфейсу на стороне сервера.
Как вы сказали, пользователь может изменить код if (1 == 1), но пользователь может См. Интерфейс пользователя, а не данные. Вы должны проверить учетные данные на стороне сервера и предоставить данные клиенту
Самым простым способом, который мне известен, является использование библиотеки Flex-layout Angular . Благодаря этому у вас есть несколько вариантов создания строк с переносом строк или сеток с определенной шириной. Вики - это еще одна хорошая прямая ссылка на дополнительную информацию по этому вопросу.
Варианты wrap
описаны более здесь .
Примером псевдо-выхода может быть:
<div fxLayout="row wrap">
<ng-container *ngFor="let item of aar.applicationPermissions">
<div fxFlex="33.3">
<input type="checkbox" id="AppPermissions{{item.id}}" class="k-checkbox" name="AppPermissions{{item.id}}">
<label class="k-checkbox-label" for="AppPermissions{{item.id}}">{{item.permissions}}</label>
</div>
</ng-container>
</div>