Sample Always Encrypted application?

%3CLINGO-SUB%20id%3D%22lingo-sub-8838%22%20slang%3D%22en-US%22%3ESample%20Always%20Encrypted%20application%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-8838%22%20slang%3D%22en-US%22%3EIs%20there%20a%20sample%20Microsoft%20web%20application%2Fsite%20for%20playing%20with%20and%20demoing%20Always%20encrypted%3F%20I've%20looked%20in%20the%20usual%20places.%20I%20can%20build%20my%20own%2C%20but%20would%20like%20to%20be%20internet%20lazy%26amp%3Bnbsp%3B%3Cimg%20id%3D%22catvery-happy%22%20class%3D%22emoticon%20emoticon-catvery-happy%22%20src%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Fi%2Fsmilies%2F16x16_cat-very-happy.png%22%20alt%3D%22Cat%20Very%20Happy%22%20title%3D%22Cat%20Very%20Happy%22%20%2F%3E%20and%20see%20one%20that%20someone%20better%20at%20this%20has%20already%20done.%3CBR%20%2F%3E%26amp%3Bnbsp%3B%3CBR%20%2F%3EClarification%3A%20I%20am%20not%20looking%20for%20an%20%22always%20encrypted%20application%22.%20I'm%20looking%20for%20pre-existing%20demos%2Fsites%20like%20we%20have%20for%20other%20features.%20%26amp%3Bnbsp%3BI%20can%20build%20my%20own.%20But%20I'm%20looking%20for%20content%20that%20may%20already%20exist%20for%20community%20use.%3CBR%20%2F%3E%3CBR%20%2F%3ESomething%2C%20for%20instances%2C%20like%20a%20Wide%20World%20Importers%20or%20Adventureworks%20or%20Contoso.%20%26amp%3Bnbsp%3B%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-8965%22%20slang%3D%22en-US%22%3ERe%3A%20Sample%20Always%20Encrypted%20application%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-8965%22%20slang%3D%22en-US%22%3E%3CP%3EBY%20demo%2C%20do%20you%20mean%20%22%3CU%3Evideo%3C%2FU%3E%22%3F!%3F%3C%2FP%3E%3CP%3EIf%20so%2C%20then%20I%20am%20not%20familiar%20with%20one%2C%20and%20personaly%20I%20do%20not%20think%20we%20should%20create%20one%20as%20the%20textual%20tutorial%20is%20much%20simpler%20to%20follow%20and%20copy%20code%20from.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%3CU%3EThe%20link%20I%20posted%20is%20a%20full%20demo%3C%2FU%3E%2C%20but%20not%20a%20video.%3C%2FP%3E%3CP%3EIt%20is%20a%20full%20%22step%20by%20step%20tutorial%22.%20the%20tutorial%26nbsp%3Bstarts%20from%20the%20SQL%20Server%20side%2C%20and%20it%20moves%20to%20the%20application%20side%2C%20just%20like%20%22Contoso%20tutorial%22%20(OK%20maybe%20not%20exactly%20the%20same%20as%20Contoso%20tutorial%20had%20several%20houndreds%20editing%20and%20improving%20and%20this%20is%20pretty%20new).%20Check%20the%26nbsp%3Bstep%26nbsp%3Bwith%20the%20title%20%22Create%20a%20client%20application%20that%20works%20with%20the%20encrypted%20data%22.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-8963%22%20slang%3D%22en-US%22%3ERe%3A%20Sample%20Always%20Encrypted%20application%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-8963%22%20slang%3D%22en-US%22%3EThank%20you%2C%20R.%20The%20difference%20is%20that%20I'm%20looking%20for%20a%20demo%20website.%20That's%20my%20preference.%20Not%20a%20technical%20one.%20So%20it%20makes%20a%20difference%20in%20my%20question.%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-8961%22%20slang%3D%22en-US%22%3ERe%3A%20Sample%20Always%20Encrypted%20application%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-8961%22%20slang%3D%22en-US%22%3E%3CP%3EHi%20Karen%2C%3C%2FP%3E%3CP%3ESoory%20if%20i%20am%20not%20clear%20%3A)%3C%2Fimg%3E%3C%2FP%3E%3CP%3EEnglish%20is%20not%20my%20Native%20languages%20and%20it%20make%20it%20harder%20to%20express%20clearly.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%3CSPAN%3EI%20am%20not%20saying%20that%20there's%20no%20need%20to%20have%20an%20app%2Fwebsite%20to%20demo%20the%20end-to-end.%20%3CU%3EThere%20must%20be%3C%2FU%3E%2C%20and%20I%20gave%20a%20link%20to%20one%20example.%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EIn%20my%20last%20rsponse%2C%20I%20am%20saying%20that%20there's%20no%20need%20to%20have%20an%20app%2Fwebsite%20to%20demo%20the%20end-to-end%20for%20each%20template%20of%20application%20that%20you%20have%20in%20the%20visual%20studio.%20The%20reason%20is%20that%20there%20are%20no%20differences%20related%20to%20code.%20It%20is%20not%20matter%20if%20you%20use%20WCF%20or%20Console%20app%20regarding%20the%20app%20dealing%20with%20%22Always%20Encrypted%22%20since%20the%20implementation%20is%20exactly%20the%20same.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CBLOCKQUOTE%3E%3CHR%20%2F%3E%3CHR%20%2F%3E%3C%2FBLOCKQUOTE%3E%3CBLOCKQUOTE%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F9046%22%20target%3D%22_blank%22%3E%40Karen%20Lopez%3C%2FA%3E%20wrote%3A%3CBR%20%2F%3E%3CP%3EThanks.%20%3CU%3E%3CSTRONG%3EI%20have%20used%20the%20console%20app%3C%2FSTRONG%3E%3C%2FU%3E.%20I%20thought%20i'd%20seen%20a%20MSFT%20employee%20demo%20this%20with%20a%20website%20(Like%20Contoso)%2C%20though.%20%26nbsp%3BThat's%20the%20sort%20of%20thing%20I'm%20looking%20for.%3C%2FP%3E%3C%2FBLOCKQUOTE%3E%3CP%3EYou%20said%20that%20you%20already%20used%20console%20app%20(after%20I%20gave%20you%20the%20link%20to%20the%20tutorial).%20I%20thought%20that%20you%20meant%20that%20you%20use%20console%20app%20with%20Always%20Encrypted%2C%20and%20you%20are%20looking%20for%20something%20else.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%3CSPAN%3E%3CSPAN%3EI%20understand%20that%20I%20missunderstood%20what%20you%20mean%20by%20%22I%20have%20used%20the%20console%20app%22%20%3A)%3C%2Fimg%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%3CSPAN%3E%3CSPAN%3E*%20we%20are%20back%20to%20my%20responses%20before....%26nbsp%3B%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%3CU%3EI%20already%20gave%20you%20link%20to%20%22step%20by%20step%22%20tutorial%20in%20my%20first%20response%3C%2FU%3E%3C%2FP%3E%3CBLOCKQUOTE%3EIn%20addition%20you%20can%20see%20full%20example%20step%20by%20step%20tutorial%20developing%20the%20application%2C%20here%3A%3CBR%20%2F%3E%3CA%20href%3D%22https%3A%2F%2Fazure.microsoft.com%2Fen-us%2Fdocumentation%2Farticles%2Fsql-database-always-encrypted%2F%22%20target%3D%22_self%22%20rel%3D%22noopener%20noreferrer%22%3Ehttps%3A%2F%2Fazure.microsoft.com%2Fen-us%2Fdocumentation%2Farticles%2Fsql-database-always-encrypted%2F%3C%2FA%3E%3CBR%20%2F%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CHR%20%2F%3E%3C%2FBLOCKQUOTE%3E%3CP%3E%3CSTRONG%3EPlease%20check%20if%20this%20solve%20you%20issue%20%3A)%3C%2Fimg%3E%3C%2FSTRONG%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%3CSPAN%3E%3CSPAN%3Ep.s.%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E%3CSPAN%3E*%20If%20you%20download%20the%20zip%20file%20to%20my%20demonstration%2C%20then%20you%20can%20see%20all%20the%20code%20that%20used%20(t-sql%20code).%20I%20did%20not%20hide%20anything%20%3Cimg%20id%3D%22smileywink%22%20class%3D%22emoticon%20emoticon-smileywink%22%20src%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Fi%2Fsmilies%2F16x16_smiley-wink.png%22%20alt%3D%22Smiley%20Wink%22%20title%3D%22Smiley%20Wink%22%20%2F%3E%20.%20But%20in%20my%20demo%20I%20used%20the%26nbsp%3BC%23%20code%20from%20the%20above%20link%20(from%20Microsoft%20website).%20Therefore%2C%20instead%20of%20adding%20the%20code%20(which%20is%20not%20my)%20i%20added%20the%20same%20link.%20Check%20in%20the%20zip%20file%20the%20folder%20%2211%20AlwaysEncrypted%22%20-%26gt%3B%20%22Always_Encrypted%20-%20CS%22%20-%26gt%3B%20%22External%20links.txt%22.%20The%20file%20include%20the%20link%20to%20the%20%22Step%20by%20step%20tutorial%22%3CBR%20%2F%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-8926%22%20slang%3D%22en-US%22%3ERe%3A%20Sample%20Always%20Encrypted%20application%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-8926%22%20slang%3D%22en-US%22%3E%3CP%3EI'm%20a%20bit%20confused.%20%26nbsp%3BThere's%20no%20need%20to%20have%20an%20app%2Fwebsite%20to%20demo%20the%20end-to-end%20features%20of%20AE%3F%20How%20would%20one%20do%20that%3F%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EOr%20are%20you%20answering%20the%20question%2C%20which%20was%20not%20asked%2C%20of%20how%20to%20build%20an%20app%20differently%20than%20one%20that%20doesn't%20access%20AE%20data%3F%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-8910%22%20slang%3D%22en-US%22%3ERe%3A%20Sample%20Always%20Encrypted%20application%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-8910%22%20slang%3D%22en-US%22%3E%3CP%3EThere%20is%20no%20reason%20for%20this.%20One%20of%20the%20power%20of%20using%26nbsp%3BAlways%20Encrypted%20is%20that%20it%20is%20almost%20totally%20transparent%20to%20the%26nbsp%3Bclient%20app.%20You%20simply%20need%20to%20add%20one%26nbsp%3Bparameter%20to%20the%20connection%20string%2C%20and%20remember%20to%20use%20Framework%204.61%20and%20above.%20The%20encription%20and%20decription%20is%20done%20in%20the%20client%20side%20(the%20application%20side)%2C%20but%20not%20by%20your%20application%2C%20but%20by%20the%20provider%20(this%20is%20why%20we%20need%20to%20use%20the%20new%20framwork).%20Except%20of%20changing%20the%20connection%20string%2C%20there%20is%20nothing%20that%20the%20developer%20need%20to%20do%20%3CU%3Ein%20the%20app%20code%3C%2FU%3E.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E*%20You%20do%20need%20to%20manage%20the%20certificate%20and%20so%20on%2C%20but%20this%20is%20not%20related%20to%20application%20and%20it%20is%20done%20the%20same%20way%20in%20any%20application.%20Therefore%2C%20if%20you%20succesfully%20created%20a%20console%20application%2C%20then%20you%20don't%20need%20to%20know%20anything%20more.%20You%20can%20create%20use%20any%20application%20that%20you%20have%20-%26gt%3B%20change%20the%20connection%20string%20-%26gt%3B%20and%20that%20is%20all%2C%20since%20your%20certificate%20already%20works%20with%20the%20provider%20(you%20checked%20in%20the%20console%20app).%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E*%20The%20only%20complex%20issue%20that%20developers%20might%20have%20is%20managing%20the%20certificate%20(IMO)%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-8899%22%20slang%3D%22en-US%22%3ERe%3A%20Sample%20Always%20Encrypted%20application%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-8899%22%20slang%3D%22en-US%22%3E%3CP%3EThanks.%20I%20have%20used%20the%20console%20app.%20I%20thought%20i'd%20seen%20a%20MSFT%20employee%20demo%20this%20with%20a%20website%20(Like%20Contoso)%2C%20though.%20%26nbsp%3BThat's%20the%20sort%20of%20thing%20I'm%20looking%20for.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-8878%22%20slang%3D%22en-US%22%3ERe%3A%20Sample%20Always%20Encrypted%20application%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-8878%22%20slang%3D%22en-US%22%3E%3CP%3ECheck%20the%20last%20link%20that%20I%20posetd%20above.%26nbsp%3B%3C%2FP%3E%3CP%3E*%20I%20edit%20the%20message%20so%20maybe%20you%20check%20it%20before%20I%20add%20the%20last%20link%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EAnyhow%2C%20in%20my%20presentation%20you%20have%20links%20as%20well%2C%20I%20used%20C%23%20simple%20console%20app%20for%20the%20DEMO%20by%20the%20way.%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3Eplease%20informa%20me%20if%20still%20do%20not%20find%20the%20link%20to%20the%20app%20development.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-8858%22%20slang%3D%22en-US%22%3ERe%3A%20Sample%20Always%20Encrypted%20application%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-8858%22%20slang%3D%22en-US%22%3E%3CP%3EThanks.%20Thats%20a%20great%20slide%20deck%20going%20over%20the%20DDL%20and%20the%20concepts%2C%20but%20I'm%20not%20seeing%20a%20web%20app%20or%20site%20in%20that.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EAm%20I%20missing%20it%3F%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EKaren%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-8854%22%20slang%3D%22en-US%22%3ERe%3A%20Sample%20Always%20Encrypted%20application%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-8854%22%20slang%3D%22en-US%22%3E%3CP%3EGood%20day%26nbsp%3BKaren%2C%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EYou%20can%20download%20my%20presentation%20about%20%3A%26nbsp%3BNew%20Security%20Features%20in%20SQL%20Server%202016%20-%20Presentation%20%26amp%3B%20Demo%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EThere%20you%20can%20see%20samples%20for%26nbsp%3Balways%20encrypted%2C%20and%20some%20links%20to%20samples%3C%2FP%3E%3CP%3E%3CA%20title%3D%22New%20Security%20Features%20in%20SQL%20Server%202016%22%20href%3D%22https%3A%2F%2Fgallery.technet.microsoft.com%2FNew-Security-Features-in-8c8ca84a%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3Ehttps%3A%2F%2Fgallery.technet.microsoft.com%2FNew-Security-Features-in-8c8ca84a%3C%2FA%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EIn%20addition%20you%20can%20see%20full%20example%20step%20by%20step%20tutorial%20developing%20the%20application%2C%20here%3A%3C%2FP%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fazure.microsoft.com%2Fen-us%2Fdocumentation%2Farticles%2Fsql-database-always-encrypted%2F%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3Ehttps%3A%2F%2Fazure.microsoft.com%2Fen-us%2Fdocumentation%2Farticles%2Fsql-database-always-encrypted%2F%3C%2FA%3E%3C%2FP%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fmsdn.microsoft.com%2Fen-us%2Flibrary%2Fmt757097.aspx%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3Ehttps%3A%2F%2Fmsdn.microsoft.com%2Fen-us%2Flibrary%2Fmt757097.aspx%3C%2FA%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EFeel%20free%20to%20ask%20any%20question%20%3A)%3C%2Fimg%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E
MVP
Is there a sample Microsoft web application/site for playing with and demoing Always encrypted? I've looked in the usual places. I can build my own, but would like to be internet lazy Cat Very Happy and see one that someone better at this has already done.
 
Clarification: I am not looking for an "always encrypted application". I'm looking for pre-existing demos/sites like we have for other features.  I can build my own. But I'm looking for content that may already exist for community use.

Something, for instances, like a Wide World Importers or Adventureworks or Contoso.  
9 Replies

Good day Karen,

 

You can download my presentation about : New Security Features in SQL Server 2016 - Presentation & Demo

 

There you can see samples for always encrypted, and some links to samples

https://gallery.technet.microsoft.com/New-Security-Features-in-8c8ca84a

 

In addition you can see full example step by step tutorial developing the application, here:

https://azure.microsoft.com/en-us/documentation/articles/sql-database-always-encrypted/

https://msdn.microsoft.com/en-us/library/mt757097.aspx

 

Feel free to ask any question :)

Thanks. Thats a great slide deck going over the DDL and the concepts, but I'm not seeing a web app or site in that.

 

Am I missing it?

 

Karen

Check the last link that I posetd above. 

* I edit the message so maybe you check it before I add the last link

 

Anyhow, in my presentation you have links as well, I used C# simple console app for the DEMO by the way. 

 

please informa me if still do not find the link to the app development.

Thanks. I have used the console app. I thought i'd seen a MSFT employee demo this with a website (Like Contoso), though.  That's the sort of thing I'm looking for.

There is no reason for this. One of the power of using Always Encrypted is that it is almost totally transparent to the client app. You simply need to add one parameter to the connection string, and remember to use Framework 4.61 and above. The encription and decription is done in the client side (the application side), but not by your application, but by the provider (this is why we need to use the new framwork). Except of changing the connection string, there is nothing that the developer need to do in the app code.

 

* You do need to manage the certificate and so on, but this is not related to application and it is done the same way in any application. Therefore, if you succesfully created a console application, then you don't need to know anything more. You can create use any application that you have -> change the connection string -> and that is all, since your certificate already works with the provider (you checked in the console app).

 

* The only complex issue that developers might have is managing the certificate (IMO)

I'm a bit confused.  There's no need to have an app/website to demo the end-to-end features of AE? How would one do that?

 

Or are you answering the question, which was not asked, of how to build an app differently than one that doesn't access AE data?

Hi Karen,

Soory if i am not clear :)

English is not my Native languages and it make it harder to express clearly.

 

I am not saying that there's no need to have an app/website to demo the end-to-end. There must be, and I gave a link to one example.

 

In my last rsponse, I am saying that there's no need to have an app/website to demo the end-to-end for each template of application that you have in the visual studio. The reason is that there are no differences related to code. It is not matter if you use WCF or Console app regarding the app dealing with "Always Encrypted" since the implementation is exactly the same.

 



@Karen Lopez wrote:

Thanks. I have used the console app. I thought i'd seen a MSFT employee demo this with a website (Like Contoso), though.  That's the sort of thing I'm looking for.

You said that you already used console app (after I gave you the link to the tutorial). I thought that you meant that you use console app with Always Encrypted, and you are looking for something else.

 

I understand that I missunderstood what you mean by "I have used the console app" :)

 

* we are back to my responses before.... 

 

I already gave you link to "step by step" tutorial in my first response

In addition you can see full example step by step tutorial developing the application, here:
https://azure.microsoft.com/en-us/documentation/articles/sql-database-always-encrypted/

 


Please check if this solve you issue :)

 

 

p.s.

* If you download the zip file to my demonstration, then you can see all the code that used (t-sql code). I did not hide anything Smiley Wink . But in my demo I used the C# code from the above link (from Microsoft website). Therefore, instead of adding the code (which is not my) i added the same link. Check in the zip file the folder "11 AlwaysEncrypted" -> "Always_Encrypted - CS" -> "External links.txt". The file include the link to the "Step by step tutorial"

Thank you, R. The difference is that I'm looking for a demo website. That's my preference. Not a technical one. So it makes a difference in my question.

BY demo, do you mean "video"?!?

If so, then I am not familiar with one, and personaly I do not think we should create one as the textual tutorial is much simpler to follow and copy code from.

 

The link I posted is a full demo, but not a video.

It is a full "step by step tutorial". the tutorial starts from the SQL Server side, and it moves to the application side, just like "Contoso tutorial" (OK maybe not exactly the same as Contoso tutorial had several houndreds editing and improving and this is pretty new). Check the step with the title "Create a client application that works with the encrypted data".