У меня проблема, аналогичная C # - Проверка xml-файла на наличие локальных проблем безопасности .xsd .
, но в первую очередь я не беспокоюсь о безопасности. Я надеюсь защитить свои файлы схемы от «глупого пользователя» больше, чем от фактического злоумышленника.
Есть ли возможность упаковать мои xsd-файлы в dll во время компиляции и использовать их оттуда во время выполнения (вместо простого чтения текстового файла из файловой системы)?
Еслиэто было бы внутри dll, «глупый пользователь» не смог бы просто отредактировать файлы случайно, и для злоумышленника мы могли бы даже пойти дальше и защитить dll строгими именами и цифровыми подписями.
internal class XmlValidator : Validator
{
private static XmlSchemaSet _schemas;
/// <summary>
/// Initializes a new instance of the <see cref="XmlValidator"/> class.
/// </summary>
internal XmlValidator()
{
string path;
path = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);
}
else
{
path = @".\";
}
// Add schemas
_schemas = new XmlSchemaSet();
_schemas.Add("http://myschema/schema1", Path.Combine(path, "Schemas", "schema-v1.0.xsd"));
_schemas.Add("http://myschema/schema11", Path.Combine(path, "Schemas", "chema-v1.1.xsd"));
}
Таким образом, вместо чтения их непосредственно из файловой системы во время инициализации, я хотел бы прочитать их как некоторый ресурс.
Так что-то похожее на файлы перевода. Создано во время компиляции и не подлежит изменению во время выполнения