Считайте установку URLScan на Ваших серверах IIS для защиты от Внедрения SQL.
кроме того, для защиты от нападений на XSS, я пользовался бы библиотекой AntiXSS MSFT вместо созданного для кодирования вывода вместо созданного в HtmlEncode, найденном в HttpServerUtility.
Я попытался вставить приложение NSDocument в одно окно интерфейс с вкладками несколько лет назад, и через несколько месяцев я так разочаровался, что вернулся и реорганизовал элементы архитектуры документа. Это не невозможно, но в конечном итоге вы работаете с таким количеством проблем, что конечный результат едва ли напоминает правильное приложение NSDocument. Лучше просто переписать нужные вам биты, чем закончить с большим количеством кода, чтобы подорвать фреймворки Какао.
Использование архитектуры на основе NSDocument в данном случае не обязательно плохая идея; но для этого может потребоваться довольно много haquery.
Вполне вероятно, что вам придется не только создать подкласс NSDocument, но также и его, реже, подкласс NSDocumentController. Как только это будет сделано, будет несложно перехватить и избежать вызовов -makeWindowControllers и других связанных с окнами методов, что позволит вам обернуть документ "окнами" любым способом, который вам нравится, но при этом сохранить преимущества документа - на основе приложения.