2016-08-30 3 views
0

Я поставил свой уровень защиты на уровень проекта в EncryptSensitiveWithPassword и во всех моих пакетах, которые я произвожу с помощью МБЗМА У меня есть код нижеМБЗМА никогда не генерировать пакет ProtectionLevel правильно

<Package Name ="MyPackage" ProtectionLevel="EncryptSensitiveWithPassword" PackagePassword="mypass"> 

По какой-то причине я должен установить ProtectionLevel в EncryptSensitiveWithPassword вручную после каждого раза, когда я создаю пакет с помощью BIDS Helper. Это тяжелая работа. Я понятия не имею, почему это не должно работать. Любые подсказки?

Я использую 1.7.0 версию BIDSHelper загрузить с Codeplex и SQL Data Server Tools версии 2012 (как вы уже знаете, что сбивает с толку часть является то, что VS версия 2010)

Update: Ниже новая структура BIML рекомендованной iamdave, который не генерирует вывод в ProjectSubPath и пакете ExceptionDataMigrator продолжает генерировать witth защиты packlage по умолчанию

<Biml xmlns="http://schemas.varigence.com/biml.xsd"> 
    <Projects> 
     <PackageProject ProjectSubpath="bimlOutput" 
       Name = "Solution/Project" 
       ProtectionLevel = "EncryptSensitiveWithPassword" 
       ProjectPassword = "password" 
       > 
      <Parameters> 
       <Parameter Name="sTestParam" DataType="String">This is project parameter</Parameter> 
      </Parameters> 
      <Packages> 
       <Package PackageName="ExceptionDataMigrator"> 

       </Package> 
      </Packages> 

     </PackageProject> 
    </Projects> 
    <Connections> 
     <Connection Name="Staging" CreateInProject="true" ConnectionString="Data Source=b.database.windows.net;User ID=h;Initial Catalog=Migration_Staging;Password=z;Provider=SQLNCLI11.1;Auto Translate=False;" RetainSameConnection="true" /> 
     <Connection Name="Reporting" CreateInProject="true" ConnectionString="Data Source=Dev2;Initial Catalog=ng;Provider=SQLNCLI11;Integrated Security=SSPI;Auto Translate=false;" RetainSameConnection="true" /> 
     <Connection Name="SalesForceDB" CreateInProject="true" ConnectionString="Data Source=db;Initial Catalog=SalesForce;Provider=SQLNCLI11;Integrated Security=SSPI;Auto Translate=false;" /> 
    </Connections> 
    <Packages> 

    <Package Name="ExceptionDataMigrator" ConstraintMode="Linear" ProtectionLevel="EncryptSensitiveWithPassword" PackagePassword="password"> 
     <Parameters> 
+0

Используете ли вы уровень развертывания пакета или уровень развертывания проекта? У меня нет экземпляра с поддержкой помощников ставок, но я могу подтвердить, что [Biml Express] (http://www.varigence.com/BimlExpress), также бесплатный, правильно испустит пакет с соответствующим уровнем защиты – billinkc

ответ

0

вы создаете пакеты в тот же проект VS, что и ваши файлы BIML, или как совершенно новое решение? Если я правильно помню, у меня была аналогичная проблема, и решить ее, указав ProjectSubPath в <PackageProject> узле <Projects>, так как пакеты создается в моем BIML проекта были унаследовать уровень защиты проекта BIML:

<Projects> 
    <PackageProject 
      ProjectSubPath = "Folder to save new solution" 
      Name = "Solution/Project Name" 
      ProtectionLevel = "EncryptSensitiveWithPassword" 
      ProjectPassword = "Password" 
      > 
     <Parameters> 
      <!-- Add Parameters here --> 
     </Parameters> 
     <Packages> 
      <Package PackageName = "Package 1" /> 
     </Packages> 
    </PackageProject> 
</Projects> 

Be ОЧЕНЬ ОСТОРОЖНО, где вы указываете, что ProjectSubPath, так как он полностью удалит любую папку, которая уже существует по этому адресу, независимо от того, что она содержит, затем заново создайте и создайте новое решение внутри.

+0

интересно. Я создаю только пакет из существующего решения/проекта. –

+0

@SolowDeveloper, то созданный вами пакет наследует уровень защиты решения. Измените его там, и ваши вновь созданные пакеты будут иметь нужный уровень защиты. – iamdave

+0

Можете ли вы проверить мой отредактированный OP, я не думаю, что полностью понимаю иерархию. Я упаковал папку bimlOutput в моей папке пакета, она ничего не генерировала в этой папке, и пакет, сгенерированный в той же папке, не ожидал уровня проверки –