Background: #fff
Foreground: #000
PrimaryPale: #8cf
PrimaryLight: #18f
PrimaryMid: #04b
PrimaryDark: #014
SecondaryPale: #ffc
SecondaryLight: #fe8
SecondaryMid: #db4
SecondaryDark: #841
TertiaryPale: #eee
TertiaryLight: #ccc
TertiaryMid: #999
TertiaryDark: #666
Error: #f88
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::EditToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='editor' macro='edit title'></div>
<div macro='annotations'></div>
<div class='editor' macro='edit text'></div>
<div class='editor' macro='edit tags'></div><div class='editorFooter'><span macro='message views.editor.tagPrompt'></span><span macro='tagChooser excludeLists'></span></div>
<!--}}}-->
<!--{{{-->
<link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml' />
<!--}}}-->
These [[InterfaceOptions]] for customising [[TiddlyWiki]] are saved in your browser

Your username for signing your edits. Write it as a [[WikiWord]] (eg [[JoeBloggs]])

<<option txtUserName>>
<<option chkSaveBackups>> [[SaveBackups]]
<<option chkAutoSave>> [[AutoSave]]
<<option chkRegExpSearch>> [[RegExpSearch]]
<<option chkCaseSensitiveSearch>> [[CaseSensitiveSearch]]
<<option chkAnimate>> [[EnableAnimations]]

----
Also see [[AdvancedOptions]]
<!--{{{-->
<div class='header' role='banner' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<div id='mainMenu' role='navigation' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' role='navigation' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' role='complementary' refresh='content' force='true' tiddler='SideBarTabs'></div>
</div>
<div id='displayArea' role='main'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
</div>
<!--}}}-->
/*{{{*/
body {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}

a {color:[[ColorPalette::PrimaryMid]];}
a:hover {background-color:[[ColorPalette::PrimaryMid]]; color:[[ColorPalette::Background]];}
a img {border:0;}

h1,h2,h3,h4,h5,h6 {color:[[ColorPalette::SecondaryDark]]; background:transparent;}
h1 {border-bottom:2px solid [[ColorPalette::TertiaryLight]];}
h2,h3 {border-bottom:1px solid [[ColorPalette::TertiaryLight]];}

.button {color:[[ColorPalette::PrimaryDark]]; border:1px solid [[ColorPalette::Background]];}
.button:hover {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::SecondaryLight]]; border-color:[[ColorPalette::SecondaryMid]];}
.button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::SecondaryDark]];}

.header {background:[[ColorPalette::PrimaryMid]];}
.headerShadow {color:[[ColorPalette::Foreground]];}
.headerShadow a {font-weight:normal; color:[[ColorPalette::Foreground]];}
.headerForeground {color:[[ColorPalette::Background]];}
.headerForeground a {font-weight:normal; color:[[ColorPalette::PrimaryPale]];}

.tabSelected {color:[[ColorPalette::PrimaryDark]];
	background:[[ColorPalette::TertiaryPale]];
	border-left:1px solid [[ColorPalette::TertiaryLight]];
	border-top:1px solid [[ColorPalette::TertiaryLight]];
	border-right:1px solid [[ColorPalette::TertiaryLight]];
}
.tabUnselected {color:[[ColorPalette::Background]]; background:[[ColorPalette::TertiaryMid]];}
.tabContents {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::TertiaryPale]]; border:1px solid [[ColorPalette::TertiaryLight]];}
.tabContents .button {border:0;}

#sidebar {}
#sidebarOptions input {border:1px solid [[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel {background:[[ColorPalette::PrimaryPale]];}
#sidebarOptions .sliderPanel a {border:none;color:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:hover {color:[[ColorPalette::Background]]; background:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:active {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::Background]];}

.wizard {background:[[ColorPalette::PrimaryPale]]; border:1px solid [[ColorPalette::PrimaryMid]];}
.wizard h1 {color:[[ColorPalette::PrimaryDark]]; border:none;}
.wizard h2 {color:[[ColorPalette::Foreground]]; border:none;}
.wizardStep {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];
	border:1px solid [[ColorPalette::PrimaryMid]];}
.wizardStep.wizardStepDone {background:[[ColorPalette::TertiaryLight]];}
.wizardFooter {background:[[ColorPalette::PrimaryPale]];}
.wizardFooter .status {background:[[ColorPalette::PrimaryDark]]; color:[[ColorPalette::Background]];}
.wizard .button {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryLight]]; border: 1px solid;
	border-color:[[ColorPalette::SecondaryPale]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryPale]];}
.wizard .button:hover {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Background]];}
.wizard .button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::Foreground]]; border: 1px solid;
	border-color:[[ColorPalette::PrimaryDark]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryDark]];}

.wizard .notChanged {background:transparent;}
.wizard .changedLocally {background:#80ff80;}
.wizard .changedServer {background:#8080ff;}
.wizard .changedBoth {background:#ff8080;}
.wizard .notFound {background:#ffff80;}
.wizard .putToServer {background:#ff80ff;}
.wizard .gotFromServer {background:#80ffff;}

#messageArea {border:1px solid [[ColorPalette::SecondaryMid]]; background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]];}
#messageArea .button {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::SecondaryPale]]; border:none;}

.popupTiddler {background:[[ColorPalette::TertiaryPale]]; border:2px solid [[ColorPalette::TertiaryMid]];}

.popup {background:[[ColorPalette::TertiaryPale]]; color:[[ColorPalette::TertiaryDark]]; border-left:1px solid [[ColorPalette::TertiaryMid]]; border-top:1px solid [[ColorPalette::TertiaryMid]]; border-right:2px solid [[ColorPalette::TertiaryDark]]; border-bottom:2px solid [[ColorPalette::TertiaryDark]];}
.popup hr {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::PrimaryDark]]; border-bottom:1px;}
.popup li.disabled {color:[[ColorPalette::TertiaryMid]];}
.popup li a, .popup li a:visited {color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:active {background:[[ColorPalette::SecondaryPale]]; color:[[ColorPalette::Foreground]]; border: none;}
.popupHighlight {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
.listBreak div {border-bottom:1px solid [[ColorPalette::TertiaryDark]];}

.tiddler .defaultCommand {font-weight:bold;}

.shadow .title {color:[[ColorPalette::TertiaryDark]];}

.title {color:[[ColorPalette::SecondaryDark]];}
.subtitle {color:[[ColorPalette::TertiaryDark]];}

.toolbar {color:[[ColorPalette::PrimaryMid]];}
.toolbar a {color:[[ColorPalette::TertiaryLight]];}
.selected .toolbar a {color:[[ColorPalette::TertiaryMid]];}
.selected .toolbar a:hover {color:[[ColorPalette::Foreground]];}

.tagging, .tagged {border:1px solid [[ColorPalette::TertiaryPale]]; background-color:[[ColorPalette::TertiaryPale]];}
.selected .tagging, .selected .tagged {background-color:[[ColorPalette::TertiaryLight]]; border:1px solid [[ColorPalette::TertiaryMid]];}
.tagging .listTitle, .tagged .listTitle {color:[[ColorPalette::PrimaryDark]];}
.tagging .button, .tagged .button {border:none;}

.footer {color:[[ColorPalette::TertiaryLight]];}
.selected .footer {color:[[ColorPalette::TertiaryMid]];}

.error, .errorButton {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Error]];}
.warning {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryPale]];}
.lowlight {background:[[ColorPalette::TertiaryLight]];}

.zoomer {background:none; color:[[ColorPalette::TertiaryMid]]; border:3px solid [[ColorPalette::TertiaryMid]];}

.imageLink, #displayArea .imageLink {background:transparent;}

.annotation {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border:2px solid [[ColorPalette::SecondaryMid]];}

.viewer .listTitle {list-style-type:none; margin-left:-2em;}
.viewer .button {border:1px solid [[ColorPalette::SecondaryMid]];}
.viewer blockquote {border-left:3px solid [[ColorPalette::TertiaryDark]];}

.viewer table, table.twtable {border:2px solid [[ColorPalette::TertiaryDark]];}
.viewer th, .viewer thead td, .twtable th, .twtable thead td {background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::Background]];}
.viewer td, .viewer tr, .twtable td, .twtable tr {border:1px solid [[ColorPalette::TertiaryDark]];}

.viewer pre {border:1px solid [[ColorPalette::SecondaryLight]]; background:[[ColorPalette::SecondaryPale]];}
.viewer code {color:[[ColorPalette::SecondaryDark]];}
.viewer hr {border:0; border-top:dashed 1px [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::TertiaryDark]];}

.highlight, .marked {background:[[ColorPalette::SecondaryLight]];}

.editor input {border:1px solid [[ColorPalette::PrimaryMid]];}
.editor textarea {border:1px solid [[ColorPalette::PrimaryMid]]; width:100%;}
.editorFooter {color:[[ColorPalette::TertiaryMid]];}
.readOnly {background:[[ColorPalette::TertiaryPale]];}

#backstageArea {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::TertiaryMid]];}
#backstageArea a {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstageArea a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; }
#backstageArea a.backstageSelTab {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
#backstageButton a {background:none; color:[[ColorPalette::Background]]; border:none;}
#backstageButton a:hover {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstagePanel {background:[[ColorPalette::Background]]; border-color: [[ColorPalette::Background]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]];}
.backstagePanelFooter .button {border:none; color:[[ColorPalette::Background]];}
.backstagePanelFooter .button:hover {color:[[ColorPalette::Foreground]];}
#backstageCloak {background:[[ColorPalette::Foreground]]; opacity:0.6; filter:alpha(opacity=60);}
/*}}}*/
/*{{{*/
* html .tiddler {height:1%;}

body {font-size:.75em; font-family:arial,helvetica; margin:0; padding:0;}

h1,h2,h3,h4,h5,h6 {font-weight:bold; text-decoration:none;}
h1,h2,h3 {padding-bottom:1px; margin-top:1.2em;margin-bottom:0.3em;}
h4,h5,h6 {margin-top:1em;}
h1 {font-size:1.35em;}
h2 {font-size:1.25em;}
h3 {font-size:1.1em;}
h4 {font-size:1em;}
h5 {font-size:.9em;}

hr {height:1px;}

a {text-decoration:none;}

dt {font-weight:bold;}

ol {list-style-type:decimal;}
ol ol {list-style-type:lower-alpha;}
ol ol ol {list-style-type:lower-roman;}
ol ol ol ol {list-style-type:decimal;}
ol ol ol ol ol {list-style-type:lower-alpha;}
ol ol ol ol ol ol {list-style-type:lower-roman;}
ol ol ol ol ol ol ol {list-style-type:decimal;}

.txtOptionInput {width:11em;}

#contentWrapper .chkOptionInput {border:0;}

.externalLink {text-decoration:underline;}

.indent {margin-left:3em;}
.outdent {margin-left:3em; text-indent:-3em;}
code.escaped {white-space:nowrap;}

.tiddlyLinkExisting {font-weight:bold;}
.tiddlyLinkNonExisting {font-style:italic;}

/* the 'a' is required for IE, otherwise it renders the whole tiddler in bold */
a.tiddlyLinkNonExisting.shadow {font-weight:bold;}

#mainMenu .tiddlyLinkExisting,
	#mainMenu .tiddlyLinkNonExisting,
	#sidebarTabs .tiddlyLinkNonExisting {font-weight:normal; font-style:normal;}
#sidebarTabs .tiddlyLinkExisting {font-weight:bold; font-style:normal;}

.header {position:relative;}
.header a:hover {background:transparent;}
.headerShadow {position:relative; padding:4.5em 0 1em 1em; left:-1px; top:-1px;}
.headerForeground {position:absolute; padding:4.5em 0 1em 1em; left:0; top:0;}

.siteTitle {font-size:3em;}
.siteSubtitle {font-size:1.2em;}

#mainMenu {position:absolute; left:0; width:10em; text-align:right; line-height:1.6em; padding:1.5em 0.5em 0.5em 0.5em; font-size:1.1em;}

#sidebar {position:absolute; right:3px; width:16em; font-size:.9em;}
#sidebarOptions {padding-top:0.3em;}
#sidebarOptions a {margin:0 0.2em; padding:0.2em 0.3em; display:block;}
#sidebarOptions input {margin:0.4em 0.5em;}
#sidebarOptions .sliderPanel {margin-left:1em; padding:0.5em; font-size:.85em;}
#sidebarOptions .sliderPanel a {font-weight:bold; display:inline; padding:0;}
#sidebarOptions .sliderPanel input {margin:0 0 0.3em 0;}
#sidebarTabs .tabContents {width:15em; overflow:hidden;}

.wizard {padding:0.1em 1em 0 2em;}
.wizard h1 {font-size:2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizard h2 {font-size:1.2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizardStep {padding:1em 1em 1em 1em;}
.wizard .button {margin:0.5em 0 0; font-size:1.2em;}
.wizardFooter {padding:0.8em 0.4em 0.8em 0;}
.wizardFooter .status {padding:0 0.4em; margin-left:1em;}
.wizard .button {padding:0.1em 0.2em;}

#messageArea {position:fixed; top:2em; right:0; margin:0.5em; padding:0.5em; z-index:2000; _position:absolute;}
.messageToolbar {display:block; text-align:right; padding:0.2em;}
#messageArea a {text-decoration:underline;}

.tiddlerPopupButton {padding:0.2em;}
.popupTiddler {position: absolute; z-index:300; padding:1em; margin:0;}

.popup {position:absolute; z-index:300; font-size:.9em; padding:0; list-style:none; margin:0;}
.popup .popupMessage {padding:0.4em;}
.popup hr {display:block; height:1px; width:auto; padding:0; margin:0.2em 0;}
.popup li.disabled {padding:0.4em;}
.popup li a {display:block; padding:0.4em; font-weight:normal; cursor:pointer;}
.listBreak {font-size:1px; line-height:1px;}
.listBreak div {margin:2px 0;}

.tabset {padding:1em 0 0 0.5em;}
.tab {margin:0 0 0 0.25em; padding:2px;}
.tabContents {padding:0.5em;}
.tabContents ul, .tabContents ol {margin:0; padding:0;}
.txtMainTab .tabContents li {list-style:none;}
.tabContents li.listLink { margin-left:.75em;}

#contentWrapper {display:block;}
#splashScreen {display:none;}

#displayArea {margin:1em 17em 0 14em;}

.toolbar {text-align:right; font-size:.9em;}

.tiddler {padding:1em 1em 0;}

.missing .viewer,.missing .title {font-style:italic;}

.title {font-size:1.6em; font-weight:bold;}

.missing .subtitle {display:none;}
.subtitle {font-size:1.1em;}

.tiddler .button {padding:0.2em 0.4em;}

.tagging {margin:0.5em 0.5em 0.5em 0; float:left; display:none;}
.isTag .tagging {display:block;}
.tagged {margin:0.5em; float:right;}
.tagging, .tagged {font-size:0.9em; padding:0.25em;}
.tagging ul, .tagged ul {list-style:none; margin:0.25em; padding:0;}
.tagClear {clear:both;}

.footer {font-size:.9em;}
.footer li {display:inline;}

.annotation {padding:0.5em; margin:0.5em;}

* html .viewer pre {width:99%; padding:0 0 1em 0;}
.viewer {line-height:1.4em; padding-top:0.5em;}
.viewer .button {margin:0 0.25em; padding:0 0.25em;}
.viewer blockquote {line-height:1.5em; padding-left:0.8em;margin-left:2.5em;}
.viewer ul, .viewer ol {margin-left:0.5em; padding-left:1.5em;}

.viewer table, table.twtable {border-collapse:collapse; margin:0.8em 1.0em;}
.viewer th, .viewer td, .viewer tr,.viewer caption,.twtable th, .twtable td, .twtable tr,.twtable caption {padding:3px;}
table.listView {font-size:0.85em; margin:0.8em 1.0em;}
table.listView th, table.listView td, table.listView tr {padding:0 3px 0 3px;}

.viewer pre {padding:0.5em; margin-left:0.5em; font-size:1.2em; line-height:1.4em; overflow:auto;}
.viewer code {font-size:1.2em; line-height:1.4em;}

.editor {font-size:1.1em;}
.editor input, .editor textarea {display:block; width:100%; font:inherit;}
.editorFooter {padding:0.25em 0; font-size:.9em;}
.editorFooter .button {padding-top:0; padding-bottom:0;}

.fieldsetFix {border:0; padding:0; margin:1px 0px;}

.zoomer {font-size:1.1em; position:absolute; overflow:hidden;}
.zoomer div {padding:1em;}

* html #backstage {width:99%;}
* html #backstageArea {width:99%;}
#backstageArea {display:none; position:relative; overflow: hidden; z-index:150; padding:0.3em 0.5em;}
#backstageToolbar {position:relative;}
#backstageArea a {font-weight:bold; margin-left:0.5em; padding:0.3em 0.5em;}
#backstageButton {display:none; position:absolute; z-index:175; top:0; right:0;}
#backstageButton a {padding:0.1em 0.4em; margin:0.1em;}
#backstage {position:relative; width:100%; z-index:50;}
#backstagePanel {display:none; z-index:100; position:absolute; width:90%; margin-left:3em; padding:1em;}
.backstagePanelFooter {padding-top:0.2em; float:right;}
.backstagePanelFooter a {padding:0.2em 0.4em;}
#backstageCloak {display:none; z-index:20; position:absolute; width:100%; height:100px;}

.whenBackstage {display:none;}
.backstageVisible .whenBackstage {display:block;}
/*}}}*/
/***
StyleSheet for use when a translation requires any css style changes.
This StyleSheet can be used directly by languages such as Chinese, Japanese and Korean which need larger font sizes.
***/
/*{{{*/
body {font-size:0.8em;}
#sidebarOptions {font-size:1.05em;}
#sidebarOptions a {font-style:normal;}
#sidebarOptions .sliderPanel {font-size:0.95em;}
.subtitle {font-size:0.8em;}
.viewer table.listView {font-size:0.95em;}
/*}}}*/
/*{{{*/
@media print {
#mainMenu, #sidebar, #messageArea, .toolbar, #backstageButton, #backstageArea {display: none !important;}
#displayArea {margin: 1em 1em 0em;}
noscript {display:none;} /* Fixes a feature in Firefox 1.5.0.2 where print preview displays the noscript content */
}
/*}}}*/
<!--{{{-->
<div class='toolbar' role='navigation' macro='toolbar [[ToolbarCommands::ViewToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='subtitle'><span macro='view modifier link'></span>, <span macro='view modified date'></span> (<span macro='message views.wikified.createdPrompt'></span> <span macro='view created date'></span>)</div>
<div class='tagging' macro='tagging'></div>
<div class='tagged' macro='tags'></div>
<div class='viewer' macro='view text wikified'></div>
<div class='tagClear'></div>
<!--}}}-->
/%
!info
|Name|ToggleLeftSidebar|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
!show
<<tiddler {{
 var co=config.options;
 if (co.chkShowLeftSidebar===undefined) co.chkShowLeftSidebar=true;
 var mm=document.getElementById('mainMenu');
 var da=document.getElementById('displayArea');
 if (mm) {
 mm.style.display=co.chkShowLeftSidebar?'block':'none';
 da.style.marginLeft=co.chkShowLeftSidebar?'':'1em';
 }
'';}}>><html><nowiki><a href='javascript:;' title="$2"
onmouseover="
 this.href='javascript:void(eval(decodeURIComponent(%22(function(){try{('
 +encodeURIComponent(encodeURIComponent(this.onclick))
 +')()}catch(e){alert(e.description?e.description:e.toString())}})()%22)))';"
onclick="
 var co=config.options;
 var opt='chkShowLeftSidebar';
 var show=co[opt]=!co[opt];
 var mm=document.getElementById('mainMenu');
 var da=document.getElementById('displayArea');
 if (mm) {
 mm.style.display=show?'block':'none';
 da.style.marginLeft=show?'':'1em';
 }
 saveOptionCookie(opt);
 var labelShow=co.txtToggleLeftSideBarLabelShow||'&#x25BA;';
 var labelHide=co.txtToggleLeftSideBarLabelHide||'&#x25C4;';
 if (this.innerHTML==labelShow||this.innerHTML==labelHide) 
 this.innerHTML=show?labelHide:labelShow;
 this.title=(show?'cacher':'montrer')+' le menu à gauche';
 var sm=document.getElementById('storyMenu');
 if (sm) config.refreshers.content(sm);
 return false;
">$1</a></html>
!end
%/<<tiddler {{
 var src='.ToggleLeftSidebar';
 src+(tiddler&&tiddler.title==src?'##info':'##show');
}} with: {{
 var co=config.options;
 var labelShow=co.txtToggleLeftSideBarLabelShow||'&#x25C1;&#x25C4;'; 
 var labelHide=co.txtToggleLeftSideBarLabelHide||'&#x25C1;&#x25C4;';
 '$1'!='$'+'1'?'$1':(co.chkShowLeftSidebar?labelHide:labelShow);
}} {{
 var tip=(config.options.chkShowLeftSidebar?'cacher':'montrer')+' le menu à gauche';
 '$2'!='$'+'2'?'$2':tip;
}}>>
/%
!info
|Name|ToggleRightSidebar|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
!end
!show
<<tiddler {{
	var co=config.options;
	if (co.chkShowRightSidebar===undefined) co.chkShowRightSidebar=true;
	var sb=document.getElementById('sidebar');
	var da=document.getElementById('displayArea');
	if (sb) {
		sb.style.display=co.chkShowRightSidebar?'block':'none';
		da.style.marginRight=co.chkShowRightSidebar?'':'1em';
	}
'';}}>><html><nowiki><a href='javascript:;' title="$2"
onmouseover="
	this.href='javascript:void(eval(decodeURIComponent(%22(function(){try{('
	+encodeURIComponent(encodeURIComponent(this.onclick))
	+')()}catch(e){alert(e.description?e.description:e.toString())}})()%22)))';"
onclick="
	var co=config.options;
	var opt='chkShowRightSidebar';
	var show=co[opt]=!co[opt];
	var sb=document.getElementById('sidebar');
	var da=document.getElementById('displayArea');
	if (sb) {
		sb.style.display=show?'block':'none';
		da.style.marginRight=show?'':'1em';
	}
	saveOptionCookie(opt);
	var labelShow=co.txtToggleRightSideBarLabelShow||'&#x25C4;';
	var labelHide=co.txtToggleRightSideBarLabelHide||'&#x25BA;';
	if (this.innerHTML==labelShow||this.innerHTML==labelHide) 
		this.innerHTML=show?labelHide:labelShow;
	this.title=(show?'hide':'show')+' right sidebar';
	var sm=document.getElementById('storyMenu');
	if (sm) config.refreshers.content(sm);
	return false;
">$1</a></html>
!end
%/<<tiddler {{
	var src='.ToggleRightSidebar';
	src+(tiddler&&tiddler.title==src?'##info':'##show');
}} with: {{
	var co=config.options;
	var labelShow=co.txtToggleRightSideBarLabelShow||'&#x25BA;&#x25B7;';
	var labelHide=co.txtToggleRightSideBarLabelHide||'&#x25BA;&#x25B7;';
	'$1'!='$'+'1'?'$1':(co.chkShowRightSidebar?labelHide:labelShow);
}} {{
	var tip=(config.options.chkShowRightSidebar?'hide':'show')+' right sidebar';
	'$2'!='$'+'2'?'$2':tip;
}}>>
/***
|Name|DisableWikiLinksPlugin|
|Source|http://www.TiddlyTools.com/#DisableWikiLinksPlugin|
|Version|1.6.0|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
|Type|plugin|
|Description|selectively disable TiddlyWiki's automatic ~WikiWord linking behavior|
This plugin allows you to disable TiddlyWiki's automatic ~WikiWord linking behavior, so that WikiWords embedded in tiddler content will be rendered as regular text, instead of being automatically converted to tiddler links.  To create a tiddler link when automatic linking is disabled, you must enclose the link text within {{{[[...]]}}}.
!!!!!Usage
<<<
You can block automatic WikiWord linking behavior for any specific tiddler by ''tagging it with<<tag excludeWikiWords>>'' (see configuration below) or, check a plugin option to disable automatic WikiWord links to non-existing tiddler titles, while still linking WikiWords that correspond to existing tiddlers titles or shadow tiddler titles.  You can also block specific selected WikiWords from being automatically linked by listing them in [[DisableWikiLinksList]] (see configuration below), separated by whitespace.  This tiddler is optional and, when present, causes the listed words to always be excluded, even if automatic linking of other WikiWords is being permitted.  

Note: WikiWords contained in default ''shadow'' tiddlers will be automatically linked unless you select an additional checkbox option lets you disable these automatic links as well, though this is not recommended, since it can make it more difficult to access some TiddlyWiki standard default content (such as AdvancedOptions or SideBarTabs)
<<<
!!!!!Configuration
<<<
<<option chkDisableWikiLinks>> Disable ALL automatic WikiWord tiddler links
<<option chkAllowLinksFromShadowTiddlers>> ... except for WikiWords //contained in// shadow tiddlers
<<option chkDisableNonExistingWikiLinks>> Disable automatic WikiWord links for non-existing tiddlers
Disable automatic WikiWord links for words listed in: <<option txtDisableWikiLinksList>>
Disable automatic WikiWord links for tiddlers tagged with: <<option txtDisableWikiLinksTag>>
<<<
!!!!!Revisions
<<<
2008.07.22 [1.6.0] hijack tiddler changed() method to filter disabled wiki words from internal links[] array (so they won't appear in the missing tiddlers list)
2007.06.09 [1.5.0] added configurable txtDisableWikiLinksTag (default value: "excludeWikiWords") to allows selective disabling of automatic WikiWord links for any tiddler tagged with that value.
2006.12.31 [1.4.0] in formatter, test for chkDisableNonExistingWikiLinks
2006.12.09 [1.3.0] in formatter, test for excluded wiki words specified in DisableWikiLinksList
2006.12.09 [1.2.2] fix logic in autoLinkWikiWords() (was allowing links TO shadow tiddlers, even when chkDisableWikiLinks is TRUE).  
2006.12.09 [1.2.1] revised logic for handling links in shadow content
2006.12.08 [1.2.0] added hijack of Tiddler.prototype.autoLinkWikiWords so regular (non-bracketed) WikiWords won't be added to the missing list
2006.05.24 [1.1.0] added option to NOT bypass automatic wikiword links when displaying default shadow content (default is to auto-link shadow content)
2006.02.05 [1.0.1] wrapped wikifier hijack in init function to eliminate globals and avoid FireFox 1.5.0.1 crash bug when referencing globals
2005.12.09 [1.0.0] initial release
<<<
!!!!!Code
***/
//{{{
version.extensions.DisableWikiLinksPlugin= {major: 1, minor: 6, revision: 0, date: new Date(2008,7,22)};

if (config.options.chkDisableNonExistingWikiLinks==undefined) config.options.chkDisableNonExistingWikiLinks= false;
if (config.options.chkDisableWikiLinks==undefined) config.options.chkDisableWikiLinks=false;
if (config.options.txtDisableWikiLinksList==undefined) config.options.txtDisableWikiLinksList="DisableWikiLinksList";
if (config.options.chkAllowLinksFromShadowTiddlers==undefined) config.options.chkAllowLinksFromShadowTiddlers=true;
if (config.options.txtDisableWikiLinksTag==undefined) config.options.txtDisableWikiLinksTag="excludeWikiWords";

// find the formatter for wikiLink and replace handler with 'pass-thru' rendering
initDisableWikiLinksFormatter();
function initDisableWikiLinksFormatter() {
	for (var i=0; i<config.formatters.length && config.formatters[i].name!="wikiLink"; i++);
	config.formatters[i].coreHandler=config.formatters[i].handler;
	config.formatters[i].handler=function(w) {
		// supress any leading "~" (if present)
		var skip=(w.matchText.substr(0,1)==config.textPrimitives.unWikiLink)?1:0;
		var title=w.matchText.substr(skip);
		var exists=store.tiddlerExists(title);
		var inShadow=w.tiddler && store.isShadowTiddler(w.tiddler.title);
		// check for excluded Tiddler
		if (w.tiddler && w.tiddler.isTagged(config.options.txtDisableWikiLinksTag))
			{ w.outputText(w.output,w.matchStart+skip,w.nextMatch); return; }
		// check for specific excluded wiki words
		var t=store.getTiddlerText(config.options.txtDisableWikiLinksList);
		if (t && t.length && t.indexOf(w.matchText)!=-1)
			{ w.outputText(w.output,w.matchStart+skip,w.nextMatch); return; }
		// if not disabling links from shadows (default setting)
		if (config.options.chkAllowLinksFromShadowTiddlers && inShadow)
			return this.coreHandler(w);
		// check for non-existing non-shadow tiddler
		if (config.options.chkDisableNonExistingWikiLinks && !exists)
			{ w.outputText(w.output,w.matchStart+skip,w.nextMatch); return; }
		// if not enabled, just do standard WikiWord link formatting
		if (!config.options.chkDisableWikiLinks)
			return this.coreHandler(w);
		// just return text without linking
		w.outputText(w.output,w.matchStart+skip,w.nextMatch)
	}
}

Tiddler.prototype.coreAutoLinkWikiWords = Tiddler.prototype.autoLinkWikiWords;
Tiddler.prototype.autoLinkWikiWords = function()
{
	if (!config.options.chkDisableWikiLinks)
		return this.coreAutoLinkWikiWords.apply(this,arguments);
	return false;
}
Tiddler.prototype.disableWikiLinks_changed = Tiddler.prototype.changed;
Tiddler.prototype.changed = function()
{
	this.disableWikiLinks_changed.apply(this,arguments);
	var t=store.getTiddlerText(config.options.txtDisableWikiLinksList,"").readBracketedList();
	if (t.length) for (var i=0; i<t.length; i++)
		if (this.links.contains(t[i]))
			this.links.splice(this.links.indexOf(t[i]),1);
};
//}}}
/***
|''Name''|ForEachTiddlerPlugin|
|''Version''|1.2.4|
|''Forked from''|[[abego.ForEachTiddlerPlugin|http://tiddlywiki.abego-software.de/#ForEachTiddlerPlugin]], by Udo Borkowski|
|''Author''|Yakov Litvin|
|''CoreVersion''|2.6.2|
|''CoreVersion note''|Although 2.6.2 is theoretically minimal TW version required for the correct operation, tests showed that the plugin works in 2.6.0, too.|
***/
//{{{
(function(){

// Only install once
if (version.extensions.ForEachTiddlerPlugin) {
	alert("Warning: more than one copy of ForEachTiddlerPlugin is set to be launched");
	return;
} else
	version.extensions.ForEachTiddlerPlugin = {
		source: "[repository url here]",
		licence: "[licence url here]",
		copyright: "Copyright (c) Yakov Litvin, 2012 [url of the meta page]"
	};
config.macros.forEachTiddler = {
	actions: {
		addToList: {},
		write: {}
	}
};
config.macros.forEachTiddler.handler = function(place,macroName,params,wikifier,paramString,tiddler) {
	var parsedParams = this.parseParams(params);
	if (parsedParams.errorText) {
		this.handleError(place, parsedParams.errorText);
		return;
	}//else
		parsedParams.place = place;
		parsedParams.inTiddler = tiddler? tiddler : getContainingTiddler(place);
	parsedParams.actionName = parsedParams.actionName ? parsedParams.actionName : "addToList";
	var actionName = parsedParams.actionName;
	var action = this.actions[actionName];
	if (!action) {
		this.handleError(place, "Unknown action '"+actionName+"'.");
		return;
	}
	var element = document.createElement(action.element);
	jQuery(element).attr({ refresh: "macro", macroName: macroName }).data(parsedParams);
	place.appendChild(element);
	this.refresh(element);
};
config.macros.forEachTiddler.refresh = function(element) {
	var parsedParams = jQuery(element).data(),
	    action = this.actions[parsedParams.actionName];
	jQuery(element).empty();
	try {
		var tiddlersAndContext = this.getTiddlersAndContext(parsedParams);
		action.handler(element, tiddlersAndContext.tiddlers,
				parsedParams.actionParameter, tiddlersAndContext.context);
	} catch (e) {
		this.handleError(place, e);
	}
};
config.macros.forEachTiddler.getTiddlersAndContext = function(parameter) {
	var context = config.macros.forEachTiddler.createContext(parameter.place, parameter.filter, parameter.whereClause, parameter.sortClause, parameter.sortAscending, parameter.actionName, parameter.actionParameter, parameter.scriptText, parameter.tiddlyWikiPath, parameter.inTiddler);
	var tiddlyWiki = parameter.tiddlyWikiPath ? this.loadTiddlyWiki(parameter.tiddlyWikiPath) : store;
	context["tiddlyWiki"] = tiddlyWiki;
	var tiddlers = this.findTiddlers(parameter.filter, parameter.whereClause, context, tiddlyWiki);
	context["tiddlers"] = tiddlers;
	if (parameter.sortClause)
		this.sortTiddlers(tiddlers, parameter.sortClause, parameter.sortAscending, context);
	return {tiddlers: tiddlers, context: context};
};
config.macros.forEachTiddler.actions.addToList.element = "ul";
config.macros.forEachTiddler.actions.addToList.handler = function(place, tiddlers, parameter, context) {
	var p = 0;
	if (parameter.length > p) {
		config.macros.forEachTiddler.createExtraParameterErrorElement(place, "addToList", parameter, p);
		return;
	}
	for (var i = 0; i < tiddlers.length; i++) {
		var tiddler = tiddlers[i];
		var listItem = document.createElement("li");
		place.appendChild(listItem);
		createTiddlyLink(listItem, tiddler.title, true);
	}
};
var parseNamedParameter = function(name, parameter, i) {
	var beginExpression = null;
	if ((i < parameter.length) && parameter[i] == name) {
		i++;
		if (i >= parameter.length) {
			throw "Missing text behind '%0'".format([name]);
		}
		return config.macros.forEachTiddler.paramEncode(parameter[i]);
	}
	return null;
}
config.macros.forEachTiddler.actions.write.element = "span";
config.macros.forEachTiddler.actions.write.handler = function(place, tiddlers, parameter, context) {
	var p = 0;
	if (p >= parameter.length) {
		this.handleError(place, "Missing expression behind 'write'.");
		return;
	}
	var textExpression = config.macros.forEachTiddler.paramEncode(parameter[p]);
	p++;
	var beginExpression = parseNamedParameter("begin", parameter, p);
	if (beginExpression !== null)
		p += 2;
	var endExpression = parseNamedParameter("end", parameter, p);
	if (endExpression !== null)
		p += 2;
	var noneExpression = parseNamedParameter("none", parameter, p);
	if (noneExpression !== null)
		p += 2;
	var filename = null;
	var lineSeparator = undefined;
	if ((p < parameter.length) && parameter[p] == "toFile") {
		p++;
		if (p >= parameter.length) {
			this.handleError(place, "Filename expected behind 'toFile' of 'write' action.");
			return;
		}
		filename = config.macros.forEachTiddler.getLocalPath(config.macros.forEachTiddler.paramEncode(parameter[p]));
		p++;
		if ((p < parameter.length) && parameter[p] == "withLineSeparator") {
			p++;
			if (p >= parameter.length) {
				this.handleError(place, "Line separator text expected behind 'withLineSeparator' of 'write' action.");
				return;
			}
			lineSeparator = config.macros.forEachTiddler.paramEncode(parameter[p]);
			p++;
		}
	}
	if (parameter.length > p) {
		config.macros.forEachTiddler.createExtraParameterErrorElement(place, "write", parameter, p);
		return;
	}
	var func = config.macros.forEachTiddler.getEvalTiddlerFunction(textExpression, context);
	var count = tiddlers.length;
	var text = "";
	if (count > 0 && beginExpression)
		text += config.macros.forEachTiddler.getEvalTiddlerFunction(beginExpression, context)(undefined, context, count, undefined);
	for (var i = 0; i < count; i++) {
		var tiddler = tiddlers[i];
		text += func(tiddler, context, count, i);
	}
	if (count > 0 && endExpression)
		text += config.macros.forEachTiddler.getEvalTiddlerFunction(endExpression, context)(undefined, context, count, undefined);
	if (count == 0 && noneExpression)
		text += config.macros.forEachTiddler.getEvalTiddlerFunction(noneExpression, context)(undefined, context, count, undefined);
	if (filename) {
		if (lineSeparator !== undefined) {
			lineSeparator = lineSeparator.replace(/\\n/mg, "\n").replace(/\\r/mg, "\r");
			text = text.replace(/\n/mg,lineSeparator);
		}
		saveFile(filename, convertUnicodeToUTF8(text));
	} else
		wikify(text, place, null/* highlightRegExp */, context.inTiddler);
};
config.macros.forEachTiddler.parseParams = function(params) {
	var i = 0; // index running over the params
	var tiddlyWikiPath = undefined;
	if ((i < params.length) && params[i] == "in") {
		i++;
		if (i >= params.length)
			return { errorText: "TiddlyWiki path expected behind 'in'." };
		tiddlyWikiPath = this.paramEncode((i < params.length) ? params[i] : "");
		i++;
	}
	if ((i < params.length) && params[i] == "filter") {
		i++;
		var filter = (i < params.length) ? params[i] : undefined;
		i++;
	}
	var whereClause ="true";
	if ((i < params.length) && params[i] == "where") {
		i++;
		whereClause = this.paramEncode((i < params.length) ? params[i] : "");
		i++;
	}
	var sortClause = null;
	var sortAscending = true;
	if ((i < params.length) && params[i] == "sortBy") {
		i++;
		if (i >= params.length)
			return { errorText: "sortClause missing behind 'sortBy'." };
		sortClause = this.paramEncode(params[i]);
		i++;

		if ((i < params.length) && (params[i] == "ascending" || params[i] == "descending")) {
			 sortAscending = params[i] == "ascending";
			 i++;
		}
	}
	var scriptText = null;
	if ((i < params.length) && params[i] == "script") {
		i++;
		scriptText = this.paramEncode((i < params.length) ? params[i] : "");
		i++;
	}
	var actionName = "addToList";
	if (i < params.length) {
		if (!config.macros.forEachTiddler.actions[params[i]])
			return { errorText: "Unknown action '"+params[i]+"'." };
		else {
			actionName = params[i];
			i++;
		}
	}
	var actionParameter = params.slice(i);
	return	{
			filter:		 filter,
			whereClause:	 whereClause,
			sortClause:	 sortClause,
			sortAscending:	 sortAscending,
			actionName:	 actionName,
			actionParameter: actionParameter,
			scriptText:	 scriptText,
			tiddlyWikiPath:	 tiddlyWikiPath
		}
};
var getContainingTiddler = function(e) {
	while(e && !hasClass(e,"tiddler"))
		e = e.parentNode;
	var title = e ? e.getAttribute("tiddler") : null;
	return title ? store.getTiddler(title) : null;
};
config.macros.forEachTiddler.createContext = function(placeParam, filterParam, whereClauseParam, sortClauseParam, sortAscendingParam, actionNameParam, actionParameterParam, scriptText, tiddlyWikiPathParam, inTiddlerParam) {
	return {
		place		: placeParam,
		filter		: filterParam,
		whereClause	: whereClauseParam,
		sortClause	: sortClauseParam,
		sortAscending	: sortAscendingParam,
		script		: scriptText,
		actionName	: actionNameParam,
		actionParameter	: actionParameterParam,
		tiddlyWikiPath	: tiddlyWikiPathParam,
		inTiddler	: inTiddlerParam, // the tiddler containing the <<forEachTiddler ...>> macro call.
		viewerTiddler	: getContainingTiddler(placeParam) //the tiddler showing the forEachTiddler result
	};
};
config.macros.forEachTiddler.loadTiddlyWiki = function(path, idPrefix) {
	if (!idPrefix) {
		idPrefix = "store";
	}
	var lenPrefix = idPrefix.length;
	var content = loadFile(this.getLocalPath(path));
	if(content === null) {
		throw "TiddlyWiki '"+path+"' not found.";
	}
	var tiddlyWiki = new TiddlyWiki();
	if (!tiddlyWiki.importTiddlyWiki(content))
		throw "File '"+path+"' is not a TiddlyWiki.";
	tiddlyWiki.dirty = false;
	return tiddlyWiki;
};
config.macros.forEachTiddler.getEvalTiddlerFunction = function (javaScriptExpression, context) {
	var script = context["script"];
	var functionText = "var theFunction = function(tiddler, context, count, index) { return "+javaScriptExpression+"}";
	var fullText = (script ? script+";" : "")+functionText+";theFunction;";
	return eval(fullText);
};
config.macros.forEachTiddler.findTiddlers = function(filter, whereClause, context, tiddlyWiki) {
	var result = [];
	var func = config.macros.forEachTiddler.getEvalTiddlerFunction(whereClause, context);
	if(filter) {
		var tids = tiddlyWiki.filterTiddlers(filter);
		for(var i = 0; i < tids.length; i++)
			if(func(tids[i], context, undefined, undefined))
				result.push(tids[i]);
	} else
		tiddlyWiki.forEachTiddler(function(title,tiddler) {
			if(func(tiddler, context, undefined, undefined))
				result.push(tiddler);
		});
	return result;
};
config.macros.forEachTiddler.sortAscending = function(tiddlerA, tiddlerB) {
	return ((tiddlerA.forEachTiddlerSortValue == tiddlerB.forEachTiddlerSortValue)
			? 0
			: ((tiddlerA.forEachTiddlerSortValue < tiddlerB.forEachTiddlerSortValue)
			   ? -1
			   : +1))
};
config.macros.forEachTiddler.sortDescending = function(tiddlerA, tiddlerB) {
	return ((tiddlerA.forEachTiddlerSortValue == tiddlerB.forEachTiddlerSortValue)
			? 0
			: ((tiddlerA.forEachTiddlerSortValue < tiddlerB.forEachTiddlerSortValue)
			   ? +1
			   : -1))
};
config.macros.forEachTiddler.sortTiddlers = function(tiddlers, sortClause, ascending, context) {
	var func = config.macros.forEachTiddler.getEvalTiddlerFunction(sortClause, context);
	var count = tiddlers.length;
	var i;
	for (i = 0; i < count; i++) {
		var tiddler = tiddlers[i];
		tiddler.forEachTiddlerSortValue = func(tiddler,context, undefined, undefined);
	}
	tiddlers.sort(ascending ? this.sortAscending : this.sortDescending);
	for (i = 0; i < tiddlers.length; i++)
		delete tiddlers[i].forEachTiddlerSortValue;
};
config.macros.forEachTiddler.createErrorElement = function(place, exception) {
	var message = (exception.description) ? exception.description : exception.toString();
	return createTiddlyElement(place,"span",null,"forEachTiddlerError","<<forEachTiddler ...>>: "+message);
};
config.macros.forEachTiddler.handleError = function(place, exception) {
	if (place) {
		this.createErrorElement(place, exception);
	} else {
		throw exception;
	}
};
config.macros.forEachTiddler.createExtraParameterErrorElement = function(place, actionName, parameter, firstUnusedIndex) {
	var message = "Extra parameter behind '"+actionName+"':";
	for (var i = firstUnusedIndex; i < parameter.length; i++) {
		message += " "+parameter[i];
	}
	this.handleError(place, message);
};
config.macros.forEachTiddler.paramEncode = function(s) {
	var reGTGT = new RegExp("\\$\\)\\)","mg");
	var reGT = new RegExp("\\$\\)","mg");
	return s.replace(reGTGT, ">>").replace(reGT, ">");
};
config.macros.forEachTiddler.getLocalPath = function(originalPath) {
	var originalAbsolutePath = originalPath;
	if(originalAbsolutePath.search(/^((http(s)?)|(file)):/) != 0) {
		if (originalAbsolutePath.search(/^(.\:\\)|(\\\\)|(\/)/) != 0){// is relative?
			var currentUrl = document.location.toString();
			var currentPath = (currentUrl.lastIndexOf("/") > -1) ?
				currentUrl.substr(0, currentUrl.lastIndexOf("/") + 1) :
				currentUrl + "/";
			originalAbsolutePath = currentPath + originalAbsolutePath;
		} else
			originalAbsolutePath = "file://" + originalAbsolutePath;
		originalAbsolutePath = originalAbsolutePath.replace(/\\/mg,"/");
	}
	return getLocalPath(originalAbsolutePath);
};
setStylesheet(
	".forEachTiddlerError{color: #ffffff;background-color: #880000;}",
	"forEachTiddler");
config.macros.fet = config.macros.forEachTiddler;
String.prototype.startsWith = function(prefix) {
	var n = prefix.length;
	return (this.length >= n) && (this.slice(0, n) == prefix);
};
String.prototype.endsWith = function(suffix) {
	var n = suffix.length;
	return (this.length >= n) && (this.right(n) == suffix);
};
String.prototype.contains = function(substring) {
	return this.indexOf(substring) >= 0;
};
})();
Tiddler.prototype.getSlice = function(sliceName,defaultText) {
	var re = TiddlyWiki.prototype.slicesRE;
	re.lastIndex = 0;
	var m = re.exec(this.text);
	while(m) {
		if(m[2]) {
			if(m[2] == sliceName)
				return m[3];
		} else {
			if(m[5] == sliceName)
				return m[6];
		}
		m = re.exec(this.text);
	}
	return defaultText;
};
Tiddler.prototype.getSection = function(sectionName,defaultText) {
	var beginSectionRegExp = new RegExp("(^!{1,6}[ \t]*" + sectionName.escapeRegExp() + "[ \t]*\n)","mg"),
	    sectionTerminatorRegExp = /^!/mg;
	var match = beginSectionRegExp.exec(this.text), sectionText;
	if(match) {
		sectionText = this.text.substr(match.index+match[1].length);
		match = sectionTerminatorRegExp.exec(sectionText);
		if(match)
			sectionText = sectionText.substr(0,match.index-1); // don't include final \n
		return sectionText
	}
	return defaultText;
};
//}}}
/***
|Name|HTMLFormattingPlugin|
|Source|http://www.TiddlyTools.com/#HTMLFormattingPlugin|
|Documentation|http://www.TiddlyTools.com/#HTMLFormattingPluginInfo|
|Version|2.4.1|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
|Type|plugin|
|Description|embed wiki syntax formatting inside of HTML content|
The ~HTMLFormatting plugin allows you to ''mix wiki-style formatting syntax within HTML formatted content'' by extending the action of the standard TiddlyWiki formatting handler.
!!!!!Documentation
>see [[HTMLFormattingPluginInfo]]
!!!!!Configuration
<<<
Use {{{<hide linebreaks>}}} within HTML content to wiki-style rendering of line breaks. To //always// omit all line breaks from the rendered output, you can set this option:
><<option chkHTMLHideLinebreaks>> ignore all line breaks
which can also be 'hard coded' into your document by adding the following to a tiddler, tagged with <<tag systemConfig>>
>{{{config.options.chkHTMLHideLinebreaks=true;}}}
<<<
!!!!!Revisions
<<<
2010.05.07 2.4.1 added chkHTMLHideLinebreaks option
| see [[HTMLFormattingPluginInfo]] for additional revision details |
2005.06.26 1.0.0 Initial Release (as code adaptation - pre-dates TiddlyWiki plugin architecture!!)
<<<
!!!!!Code
***/
//{{{
version.extensions.HTMLFormattingPlugin= {major: 2, minor: 4, revision: 1, date: new Date(2010,5,7)};

// find the formatter for HTML and replace the handler
initHTMLFormatter();
function initHTMLFormatter()
{
	for (var i=0; i<config.formatters.length && config.formatters[i].name!="html"; i++);
	if (i<config.formatters.length)	config.formatters[i].handler=function(w) {
		if (!this.lookaheadRegExp)
			this.lookaheadRegExp = new RegExp(this.lookahead,"mg");
		this.lookaheadRegExp.lastIndex = w.matchStart;
		var lookaheadMatch = this.lookaheadRegExp.exec(w.source)
		if(lookaheadMatch && lookaheadMatch.index == w.matchStart) {
			var html=lookaheadMatch[1];
			// if <nowiki> is present, just let browser handle it!
			if (html.indexOf('<nowiki>')!=-1)
				createTiddlyElement(w.output,"span").innerHTML=html;
			else {
				// if <hide linebreaks> is present, or chkHTMLHideLinebreaks is set
				// suppress wiki-style literal handling of newlines
				if (config.options.chkHTMLHideLinebreaks||(html.indexOf('<hide linebreaks>')!=-1))
					html=html.replace(/\n/g,' ');
				// remove all \r's added by IE textarea and mask newlines and macro brackets
				html=html.replace(/\r/g,'').replace(/\n/g,'\\n').replace(/<</g,'%%(').replace(/>>/g,')%%');
				// create span, let browser parse HTML
				var e=createTiddlyElement(w.output,"span"); e.innerHTML=html;
				// then re-render text nodes as wiki-formatted content
				wikifyTextNodes(e,w);
			}
			w.nextMatch = this.lookaheadRegExp.lastIndex; // continue parsing
		}
	}
}

// wikify #text nodes that remain after HTML content is processed (pre-order recursion)
function wikifyTextNodes(theNode,w)
{
	function unmask(s) { return s.replace(/\%%\(/g,'<<').replace(/\)\%%/g,'>>').replace(/\\n/g,'\n'); }
	switch (theNode.nodeName.toLowerCase()) {
		case 'style': case 'option': case 'select':
			theNode.innerHTML=unmask(theNode.innerHTML);
			break;
		case 'textarea':
			theNode.value=unmask(theNode.value);
			break;
		case '#text':
			var txt=unmask(theNode.nodeValue);
			var newNode=createTiddlyElement(null,"span");
			theNode.parentNode.replaceChild(newNode,theNode);
			wikify(txt,newNode,highlightHack,w.tiddler);
			break;
		default:
			for (var i=0;i<theNode.childNodes.length;i++)
				wikifyTextNodes(theNode.childNodes.item(i),w); // recursion
			break;
	}
}
//}}}
<<QOTD Headlines 10000 noclick norandom>>
/***
|Name|ImageSizePlugin|
|Source|http://www.TiddlyTools.com/#ImageSizePlugin|
|Version|1.2.2|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
|Type|plugin|
|Description|adds support for resizing images|
This plugin adds optional syntax to scale an image to a specified width and height and/or interactively resize the image with the mouse.
!!!!!Usage
<<<
The extended image syntax is:
{{{
[img(w+,h+)[...][...]]
}}}
where ''(w,h)'' indicates the desired width and height (in CSS units, e.g., px, em, cm, in, or %). Use ''auto'' (or a blank value) for either dimension to scale that dimension proportionally (i.e., maintain the aspect ratio). You can also calculate a CSS value 'on-the-fly' by using a //javascript expression// enclosed between """{{""" and """}}""". Appending a plus sign (+) to a dimension enables interactive resizing in that dimension (by dragging the mouse inside the image). Use ~SHIFT-click to show the full-sized (un-scaled) image. Use ~CTRL-click to restore the starting size (either scaled or full-sized).
<<<
!!!!!Examples
<<<
{{{
[img(100px+,75px+)[images/meow2.jpg]]
}}}
[img(100px+,75px+)[images/meow2.jpg]]
{{{
[<img(34%+,+)[images/meow.gif]]
[<img(21% ,+)[images/meow.gif]]
[<img(13%+, )[images/meow.gif]]
[<img( 8%+, )[images/meow.gif]]
[<img( 5% , )[images/meow.gif]]
[<img( 3% , )[images/meow.gif]]
[<img( 2% , )[images/meow.gif]]
[img( 1%+,+)[images/meow.gif]]
}}}
[<img(34%+,+)[images/meow.gif]]
[<img(21% ,+)[images/meow.gif]]
[<img(13%+, )[images/meow.gif]]
[<img( 8%+, )[images/meow.gif]]
[<img( 5% , )[images/meow.gif]]
[<img( 3% , )[images/meow.gif]]
[<img( 2% , )[images/meow.gif]]
[img( 1%+,+)[images/meow.gif]]
{{tagClear{
}}}
<<<
!!!!!Revisions
<<<
2010.07.24 [1.2.2] moved tip/dragtip text to config.formatterHelpers.imageSize object to enable customization
2009.02.24 [1.2.1] cleanup width/height regexp, use '+' suffix for resizing
2009.02.22 [1.2.0] added stretchable images
2008.01.19 [1.1.0] added evaluated width/height values
2008.01.18 [1.0.1] regexp for "(width,height)" now passes all CSS values to browser for validation
2008.01.17 [1.0.0] initial release
<<<
!!!!!Code
***/
//{{{
version.extensions.ImageSizePlugin= {major: 1, minor: 2, revision: 2, date: new Date(2010,7,24)};
//}}}
//{{{
var f=config.formatters[config.formatters.findByField("name","image")];
f.match="\\[[<>]?[Ii][Mm][Gg](?:\\([^,]*,[^\\)]*\\))?\\[";
f.lookaheadRegExp=/\[([<]?)(>?)[Ii][Mm][Gg](?:\(([^,]*),([^\)]*)\))?\[(?:([^\|\]]+)\|)?([^\[\]\|]+)\](?:\[([^\]]*)\])?\]/mg;
f.handler=function(w) {
	this.lookaheadRegExp.lastIndex = w.matchStart;
	var lookaheadMatch = this.lookaheadRegExp.exec(w.source)
	if(lookaheadMatch && lookaheadMatch.index == w.matchStart) {
		var floatLeft=lookaheadMatch[1];
		var floatRight=lookaheadMatch[2];
		var width=lookaheadMatch[3];
		var height=lookaheadMatch[4];
		var tooltip=lookaheadMatch[5];
		var src=lookaheadMatch[6];
		var link=lookaheadMatch[7];
		var e = w.output;
		if(link) { // LINKED IMAGE
			if (config.formatterHelpers.isExternalLink(link)) {
				if (config.macros.attach && config.macros.attach.isAttachment(link)) {
					// see [[AttachFilePluginFormatters]]
					e = createExternalLink(w.output,link);
					e.href=config.macros.attach.getAttachment(link);
					e.title = config.macros.attach.linkTooltip + link;
				} else
					e = createExternalLink(w.output,link);
			} else 
				e = createTiddlyLink(w.output,link,false,null,w.isStatic);
			addClass(e,"imageLink");
		}
		var img = createTiddlyElement(e,"img");
		if(floatLeft) img.align="left"; else if(floatRight) img.align="right";
		if(width||height) {
			var x=width.trim(); var y=height.trim();
			var stretchW=(x.substr(x.length-1,1)=='+'); if (stretchW) x=x.substr(0,x.length-1);
			var stretchH=(y.substr(y.length-1,1)=='+'); if (stretchH) y=y.substr(0,y.length-1);
			if (x.substr(0,2)=="{{")
				{ try{x=eval(x.substr(2,x.length-4))} catch(e){displayMessage(e.description||e.toString())} }
			if (y.substr(0,2)=="{{")
				{ try{y=eval(y.substr(2,y.length-4))} catch(e){displayMessage(e.description||e.toString())} }
			img.style.width=x.trim(); img.style.height=y.trim();
			config.formatterHelpers.addStretchHandlers(img,stretchW,stretchH);
		}
		if(tooltip) img.title = tooltip;
		if (config.macros.attach && config.macros.attach.isAttachment(src))
			src=config.macros.attach.getAttachment(src); // see [[AttachFilePluginFormatters]]
		else if (config.formatterHelpers.resolvePath) { // see [[ImagePathPlugin]]
			if (config.browser.isIE || config.browser.isSafari) {
				img.onerror=(function(){
					this.src=config.formatterHelpers.resolvePath(this.src,false);
					return false;
				});
			} else
				src=config.formatterHelpers.resolvePath(src,true);
		}
		img.src=src;
		w.nextMatch = this.lookaheadRegExp.lastIndex;
	}
}
//config.formatterHelpers.imageSize={
//	tip: 'SHIFT-CLICK=show full size, CTRL-CLICK=restore initial size',
//	dragtip: 'DRAG=stretch/shrink, '
//}
config.formatterHelpers.imageSize={
	tip: 'SHIFT-CLIC=Image en taille pleine, CTRL-CLICK=Retour à la taille d\'image initiale',
	dragtip: 'DRAG=étirer/réduire, '
}
config.formatterHelpers.addStretchHandlers=function(e,stretchW,stretchH) {
	e.title=((stretchW||stretchH)?this.imageSize.dragtip:'')+this.imageSize.tip;
	e.statusMsg='width=%0, height=%1';
	e.style.cursor='move';
	e.originalW=e.style.width;
	e.originalH=e.style.height;
	e.minW=Math.max(e.offsetWidth/20,10);
	e.minH=Math.max(e.offsetHeight/20,10);
	e.stretchW=stretchW;
	e.stretchH=stretchH;
	e.onmousedown=function(ev) { var ev=ev||window.event;
		this.sizing=true;
		this.startX=!config.browser.isIE?ev.pageX:(ev.clientX+findScrollX());
		this.startY=!config.browser.isIE?ev.pageY:(ev.clientY+findScrollY());
		this.startW=this.offsetWidth;
		this.startH=this.offsetHeight;
		return false;
	};
	e.onmousemove=function(ev) { var ev=ev||window.event;
		if (this.sizing) {
			var s=this.style;
			var currX=!config.browser.isIE?ev.pageX:(ev.clientX+findScrollX());
			var currY=!config.browser.isIE?ev.pageY:(ev.clientY+findScrollY());
			var newW=(currX-this.offsetLeft)/(this.startX-this.offsetLeft)*this.startW;
			var newH=(currY-this.offsetTop )/(this.startY-this.offsetTop )*this.startH;
			if (this.stretchW) s.width =Math.floor(Math.max(newW,this.minW))+'px';
			if (this.stretchH) s.height=Math.floor(Math.max(newH,this.minH))+'px';
			clearMessage(); displayMessage(this.statusMsg.format([s.width,s.height]));
		}
		return false;
	};
	e.onmouseup=function(ev) { var ev=ev||window.event;
		if (ev.shiftKey) { this.style.width=this.style.height=''; }
		if (ev.ctrlKey) { this.style.width=this.originalW; this.style.height=this.originalH; }
		this.sizing=false;
		clearMessage();
		return false;
	};
	e.onmouseout=function(ev) { var ev=ev||window.event;
		this.sizing=false;
		clearMessage();
		return false;
	};
}
//}}}
/***
|Name|InlineJavascriptPlugin|
|Source|http://www.TiddlyTools.com/#InlineJavascriptPlugin|
|Documentation|http://www.TiddlyTools.com/#InlineJavascriptPluginInfo|
|Version|1.9.6|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
|Type|plugin|
|Description|Insert Javascript executable code directly into your tiddler content.|
''Call directly into TW core utility routines, define new functions, calculate values, add dynamically-generated TiddlyWiki-formatted output'' into tiddler content, or perform any other programmatic actions each time the tiddler is rendered.
!!!!!Documentation
>see [[InlineJavascriptPluginInfo]]
!!!!!Revisions
<<<
2010.12.15 1.9.6 allow (but ignore) type="..." syntax
|please see [[InlineJavascriptPluginInfo]] for additional revision details|
2005.11.08 1.0.0 initial release
<<<
!!!!!Code
***/
//{{{
version.extensions.InlineJavascriptPlugin= {major: 1, minor: 9, revision: 6, date: new Date(2010,12,15)};

config.formatters.push( {
	name: "inlineJavascript",
	match: "\\<script",
	lookahead: "\\<script(?: type=\\\"[^\\\"]*\\\")?(?: src=\\\"([^\\\"]*)\\\")?(?: label=\\\"([^\\\"]*)\\\")?(?: title=\\\"([^\\\"]*)\\\")?(?: key=\\\"([^\\\"]*)\\\")?( show)?\\>((?:.|\\n)*?)\\</script\\>",
	handler: function(w) {
		var lookaheadRegExp = new RegExp(this.lookahead,"mg");
		lookaheadRegExp.lastIndex = w.matchStart;
		var lookaheadMatch = lookaheadRegExp.exec(w.source)
		if(lookaheadMatch && lookaheadMatch.index == w.matchStart) {
			var src=lookaheadMatch[1];
			var label=lookaheadMatch[2];
			var tip=lookaheadMatch[3];
			var key=lookaheadMatch[4];
			var show=lookaheadMatch[5];
			var code=lookaheadMatch[6];
			if (src) { // external script library
				var script = document.createElement("script"); script.src = src;
				document.body.appendChild(script); document.body.removeChild(script);
			}
			if (code) { // inline code
				if (show) // display source in tiddler
					wikify("{{{\n"+lookaheadMatch[0]+"\n}}}\n",w.output);
				if (label) { // create 'onclick' command link
					var link=createTiddlyElement(w.output,"a",null,"tiddlyLinkExisting",wikifyPlainText(label));
					var fixup=code.replace(/document.write\s*\(/gi,'place.bufferedHTML+=(');
					link.code="function _out(place,tiddler){"+fixup+"\n};_out(this,this.tiddler);"
					link.tiddler=w.tiddler;
					link.onclick=function(){
						this.bufferedHTML="";
						try{ var r=eval(this.code);
							if(this.bufferedHTML.length || (typeof(r)==="string")&&r.length)
								var s=this.parentNode.insertBefore(document.createElement("span"),this.nextSibling);
							if(this.bufferedHTML.length)
								s.innerHTML=this.bufferedHTML;
							if((typeof(r)==="string")&&r.length) {
								wikify(r,s,null,this.tiddler);
								return false;
							} else return r!==undefined?r:false;
						} catch(e){alert(e.description||e.toString());return false;}
					};
					link.setAttribute("title",tip||"");
					var URIcode='javascript:void(eval(decodeURIComponent(%22(function(){try{';
					URIcode+=encodeURIComponent(encodeURIComponent(code.replace(/\n/g,' ')));
					URIcode+='}catch(e){alert(e.description||e.toString())}})()%22)))';
					link.setAttribute("href",URIcode);
					link.style.cursor="pointer";
					if (key) link.accessKey=key.substr(0,1); // single character only
				}
				else { // run script immediately
					var fixup=code.replace(/document.write\s*\(/gi,'place.innerHTML+=(');
					var c="function _out(place,tiddler){"+fixup+"\n};_out(w.output,w.tiddler);";
					try	 { var out=eval(c); }
					catch(e) { out=e.description?e.description:e.toString(); }
					if (out && out.length) wikify(out,w.output,w.highlightRegExp,w.tiddler);
				}
			}
			w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;
		}
	}
} )
//}}}

// // Backward-compatibility for TW2.1.x and earlier
//{{{
if (typeof(wikifyPlainText)=="undefined") window.wikifyPlainText=function(text,limit,tiddler) {
	if(limit > 0) text = text.substr(0,limit);
	var wikifier = new Wikifier(text,formatter,null,tiddler);
	return wikifier.wikifyPlain();
}
//}}}

// // GLOBAL FUNCTION: $(...) -- 'shorthand' convenience syntax for document.getElementById()
//{{{
if (typeof($)=='undefined') { function $(id) { return document.getElementById(id.replace(/^#/,'')); } }
//}}}
/***
|Name|NestedSlidersPlugin|
|Source|http://www.TiddlyTools.com/#NestedSlidersPlugin|
|Documentation|http://www.TiddlyTools.com/#NestedSlidersPluginInfo|
|Version|2.4.9|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
|Type|plugin|
|Description|show content in nest-able sliding/floating panels, without creating separate tiddlers for each panel's content|
!!!!!Documentation
>see [[NestedSlidersPluginInfo]]
!!!!!Configuration
<<<
<<option chkFloatingSlidersAnimate>> allow floating sliders to animate when opening/closing
>Note: This setting can cause 'clipping' problems in some versions of InternetExplorer.
>In addition, for floating slider animation to occur you must also allow animation in general (see [[AdvancedOptions]]).
<<<
!!!!!Revisions
<<<
2008.11.15 - 2.4.9 in adjustNestedSlider(), don't make adjustments if panel is marked as 'undocked' (CSS class). In onClickNestedSlider(), SHIFT-CLICK docks panel (see [[MoveablePanelPlugin]])
|please see [[NestedSlidersPluginInfo]] for additional revision details|
2005.11.03 - 1.0.0 initial public release. Thanks to RodneyGomes, GeoffSlocock, and PaulPetterson for suggestions and experiments.
<<<
!!!!!Code
***/
//{{{
version.extensions.NestedSlidersPlugin= {major: 2, minor: 4, revision: 9, date: new Date(2008,11,15)};

// options for deferred rendering of sliders that are not initially displayed
if (config.options.chkFloatingSlidersAnimate===undefined)
	config.options.chkFloatingSlidersAnimate=false; // avoid clipping problems in IE

// default styles for 'floating' class
setStylesheet(".floatingPanel { position:absolute; z-index:10; padding:0.5em; margin:0em; \
	background-color:#eee; color:#000; border:1px solid #000; text-align:left; }","floatingPanelStylesheet");

// if removeCookie() function is not defined by TW core, define it here.
if (window.removeCookie===undefined) {
	window.removeCookie=function(name) {
		document.cookie = name+'=; expires=Thu, 01-Jan-1970 00:00:01 UTC; path=/;'; 
	}
}

config.formatters.push( {
	name: "nestedSliders",
	match: "\\n?\\+{3}",
	terminator: "\\s*\\={3}\\n?",
	lookahead: "\\n?\\+{3}(\\+)?(\\([^\\)]*\\))?(\\!*)?(\\^(?:[^\\^\\*\\@\\[\\>]*\\^)?)?(\\*)?(\\@)?(?:\\{\\{([\\w]+[\\s\\w]*)\\{)?(\\[[^\\]]*\\])?(\\[[^\\]]*\\])?(?:\\}{3})?(\\#[^:]*\\:)?(\\>)?(\\.\\.\\.)?\\s*",
	handler: function(w)
		{
			lookaheadRegExp = new RegExp(this.lookahead,"mg");
			lookaheadRegExp.lastIndex = w.matchStart;
			var lookaheadMatch = lookaheadRegExp.exec(w.source)
			if(lookaheadMatch && lookaheadMatch.index == w.matchStart)
			{
				var defopen=lookaheadMatch[1];
				var cookiename=lookaheadMatch[2];
				var header=lookaheadMatch[3];
				var panelwidth=lookaheadMatch[4];
				var transient=lookaheadMatch[5];
				var hover=lookaheadMatch[6];
				var buttonClass=lookaheadMatch[7];
				var label=lookaheadMatch[8];
				var openlabel=lookaheadMatch[9];
				var panelID=lookaheadMatch[10];
				var blockquote=lookaheadMatch[11];
				var deferred=lookaheadMatch[12];

				// location for rendering button and panel
				var place=w.output;

				// default to closed, no cookie, no accesskey, no alternate text/tip
				var show="none"; var cookie=""; var key="";
				var closedtext=">"; var closedtip="";
				var openedtext="<"; var openedtip="";

				// extra "+", default to open
				if (defopen) show="block";

				// cookie, use saved open/closed state
				if (cookiename) {
					cookie=cookiename.trim().slice(1,-1);
					cookie="chkSlider"+cookie;
					if (config.options[cookie]==undefined)
						{ config.options[cookie] = (show=="block") }
					show=config.options[cookie]?"block":"none";
				}

				// parse label/tooltip/accesskey: [label=X|tooltip]
				if (label) {
					var parts=label.trim().slice(1,-1).split("|");
					closedtext=parts.shift();
					if (closedtext.substr(closedtext.length-2,1)=="=")	
						{ key=closedtext.substr(closedtext.length-1,1); closedtext=closedtext.slice(0,-2); }
					openedtext=closedtext;
					if (parts.length) closedtip=openedtip=parts.join("|");
					else { closedtip="show "+closedtext; openedtip="hide "+closedtext; }
				}

				// parse alternate label/tooltip: [label|tooltip]
				if (openlabel) {
					var parts=openlabel.trim().slice(1,-1).split("|");
					openedtext=parts.shift();
					if (parts.length) openedtip=parts.join("|");
					else openedtip="hide "+openedtext;
				}

				var title=show=='block'?openedtext:closedtext;
				var tooltip=show=='block'?openedtip:closedtip;

				// create the button
				if (header) { // use "Hn" header format instead of button/link
					var lvl=(header.length>5)?5:header.length;
					var btn = createTiddlyElement(createTiddlyElement(place,"h"+lvl,null,null,null),"a",null,buttonClass,title);
					btn.onclick=onClickNestedSlider;
					btn.setAttribute("href","javascript:;");
					btn.setAttribute("title",tooltip);
				}
				else
					var btn = createTiddlyButton(place,title,tooltip,onClickNestedSlider,buttonClass);
				btn.innerHTML=title; // enables use of HTML entities in label

				// set extra button attributes
				btn.setAttribute("closedtext",closedtext);
				btn.setAttribute("closedtip",closedtip);
				btn.setAttribute("openedtext",openedtext);
				btn.setAttribute("openedtip",openedtip);
				btn.sliderCookie = cookie; // save the cookiename (if any) in the button object
				btn.defOpen=defopen!=null; // save default open/closed state (boolean)
				btn.keyparam=key; // save the access key letter ("" if none)
				if (key.length) {
					btn.setAttribute("accessKey",key); // init access key
					btn.onfocus=function(){this.setAttribute("accessKey",this.keyparam);}; // **reclaim** access key on focus
				}
				btn.setAttribute("hover",hover?"true":"false");
				btn.onmouseover=function(ev) {
					// optional 'open on hover' handling
					if (this.getAttribute("hover")=="true" && this.sliderPanel.style.display=='none') {
						document.onclick.call(document,ev); // close transients
						onClickNestedSlider(ev); // open this slider
					}
					// mouseover on button aligns floater position with button
					if (window.adjustSliderPos) window.adjustSliderPos(this.parentNode,this,this.sliderPanel);
				}

				// create slider panel
				var panelClass=panelwidth?"floatingPanel":"sliderPanel";
				if (panelID) panelID=panelID.slice(1,-1); // trim off delimiters
				var panel=createTiddlyElement(place,"div",panelID,panelClass,null);
				panel.button = btn; // so the slider panel know which button it belongs to
				btn.sliderPanel=panel; // so the button knows which slider panel it belongs to
				panel.defaultPanelWidth=(panelwidth && panelwidth.length>2)?panelwidth.slice(1,-1):"";
				panel.setAttribute("transient",transient=="*"?"true":"false");
				panel.style.display = show;
				panel.style.width=panel.defaultPanelWidth;
				panel.onmouseover=function(event) // mouseover on panel aligns floater position with button
					{ if (window.adjustSliderPos) window.adjustSliderPos(this.parentNode,this.button,this); }

				// render slider (or defer until shown) 
				w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;
				if ((show=="block")||!deferred) {
					// render now if panel is supposed to be shown or NOT deferred rendering
					w.subWikify(blockquote?createTiddlyElement(panel,"blockquote"):panel,this.terminator);
					// align floater position with button
					if (window.adjustSliderPos) window.adjustSliderPos(place,btn,panel);
				}
				else {
					var src = w.source.substr(w.nextMatch);
					var endpos=findMatchingDelimiter(src,"+++","===");
					panel.setAttribute("raw",src.substr(0,endpos));
					panel.setAttribute("blockquote",blockquote?"true":"false");
					panel.setAttribute("rendered","false");
					w.nextMatch += endpos+3;
					if (w.source.substr(w.nextMatch,1)=="\n") w.nextMatch++;
				}
			}
		}
	}
)

function findMatchingDelimiter(src,starttext,endtext) {
	var startpos = 0;
	var endpos = src.indexOf(endtext);
	// check for nested delimiters
	while (src.substring(startpos,endpos-1).indexOf(starttext)!=-1) {
		// count number of nested 'starts'
		var startcount=0;
		var temp = src.substring(startpos,endpos-1);
		var pos=temp.indexOf(starttext);
		while (pos!=-1) { startcount++; pos=temp.indexOf(starttext,pos+starttext.length); }
		// set up to check for additional 'starts' after adjusting endpos
		startpos=endpos+endtext.length;
		// find endpos for corresponding number of matching 'ends'
		while (startcount && endpos!=-1) {
			endpos = src.indexOf(endtext,endpos+endtext.length);
			startcount--;
		}
	}
	return (endpos==-1)?src.length:endpos;
}
//}}}
//{{{
window.onClickNestedSlider=function(e)
{
	if (!e) var e = window.event;
	var theTarget = resolveTarget(e);
	while (theTarget && theTarget.sliderPanel==undefined) theTarget=theTarget.parentNode;
	if (!theTarget) return false;
	var theSlider = theTarget.sliderPanel;
	var isOpen = theSlider.style.display!="none";

	// if SHIFT-CLICK, dock panel first (see [[MoveablePanelPlugin]])
	if (e.shiftKey && config.macros.moveablePanel) config.macros.moveablePanel.dock(theSlider,e);

	// toggle label
	theTarget.innerHTML=isOpen?theTarget.getAttribute("closedText"):theTarget.getAttribute("openedText");
	// toggle tooltip
	theTarget.setAttribute("title",isOpen?theTarget.getAttribute("closedTip"):theTarget.getAttribute("openedTip"));

	// deferred rendering (if needed)
	if (theSlider.getAttribute("rendered")=="false") {
		var place=theSlider;
		if (theSlider.getAttribute("blockquote")=="true")
			place=createTiddlyElement(place,"blockquote");
		wikify(theSlider.getAttribute("raw"),place);
		theSlider.setAttribute("rendered","true");
	}

	// show/hide the slider
	if(config.options.chkAnimate && (!hasClass(theSlider,'floatingPanel') || config.options.chkFloatingSlidersAnimate))
		anim.startAnimating(new Slider(theSlider,!isOpen,e.shiftKey || e.altKey,"none"));
	else
		theSlider.style.display = isOpen ? "none" : "block";

	// reset to default width (might have been changed via plugin code)
	theSlider.style.width=theSlider.defaultPanelWidth;

	// align floater panel position with target button
	if (!isOpen && window.adjustSliderPos) window.adjustSliderPos(theSlider.parentNode,theTarget,theSlider);

	// if showing panel, set focus to first 'focus-able' element in panel
	if (theSlider.style.display!="none") {
		var ctrls=theSlider.getElementsByTagName("*");
		for (var c=0; c<ctrls.length; c++) {
			var t=ctrls[c].tagName.toLowerCase();
			if ((t=="input" && ctrls[c].type!="hidden") || t=="textarea" || t=="select")
				{ try{ ctrls[c].focus(); } catch(err){;} break; }
		}
	}
	var cookie=theTarget.sliderCookie;
	if (cookie && cookie.length) {
		config.options[cookie]=!isOpen;
		if (config.options[cookie]!=theTarget.defOpen) window.saveOptionCookie(cookie);
		else window.removeCookie(cookie); // remove cookie if slider is in default display state
	}

	// prevent SHIFT-CLICK from being processed by browser (opens blank window... yuck!)
	// prevent clicks *within* a slider button from being processed by browser
	// but allow plain click to bubble up to page background (to close transients, if any)
	if (e.shiftKey || theTarget!=resolveTarget(e))
		{ e.cancelBubble=true; if (e.stopPropagation) e.stopPropagation(); }
	Popup.remove(); // close open popup (if any)
	return false;
}
//}}}
//{{{
// click in document background closes transient panels 
document.nestedSliders_savedOnClick=document.onclick;
document.onclick=function(ev) { if (!ev) var ev=window.event; var target=resolveTarget(ev);

	if (document.nestedSliders_savedOnClick)
		var retval=document.nestedSliders_savedOnClick.apply(this,arguments);
	// if click was inside a popup... leave transient panels alone
	var p=target; while (p) if (hasClass(p,"popup")) break; else p=p.parentNode;
	if (p) return retval;
	// if click was inside transient panel (or something contained by a transient panel), leave it alone
	var p=target; while (p) {
		if ((hasClass(p,"floatingPanel")||hasClass(p,"sliderPanel"))&&p.getAttribute("transient")=="true") break;
		p=p.parentNode;
	}
	if (p) return retval;
	// otherwise, find and close all transient panels...
	var all=document.all?document.all:document.getElementsByTagName("DIV");
	for (var i=0; i<all.length; i++) {
		 // if it is not a transient panel, or the click was on the button that opened this panel, don't close it.
		if (all[i].getAttribute("transient")!="true" || all[i].button==target) continue;
		// otherwise, if the panel is currently visible, close it by clicking it's button
		if (all[i].style.display!="none") window.onClickNestedSlider({target:all[i].button})
		if (!hasClass(all[i],"floatingPanel")&&!hasClass(all[i],"sliderPanel")) all[i].style.display="none";
	}
	return retval;
};
//}}}
//{{{
// adjust floating panel position based on button position
if (window.adjustSliderPos==undefined) window.adjustSliderPos=function(place,btn,panel) {
	if (hasClass(panel,"floatingPanel") && !hasClass(panel,"undocked")) {
		// see [[MoveablePanelPlugin]] for use of 'undocked'
		var rightEdge=document.body.offsetWidth-1;
		var panelWidth=panel.offsetWidth;
		var left=0;
		var top=btn.offsetHeight; 
		if (place.style.position=="relative" && findPosX(btn)+panelWidth>rightEdge) {
			left-=findPosX(btn)+panelWidth-rightEdge; // shift panel relative to button
			if (findPosX(btn)+left<0) left=-findPosX(btn); // stay within left edge
		}
		if (place.style.position!="relative") {
			var left=findPosX(btn);
			var top=findPosY(btn)+btn.offsetHeight;
			var p=place; while (p && !hasClass(p,'floatingPanel')) p=p.parentNode;
			if (p) { left-=findPosX(p); top-=findPosY(p); }
			if (left+panelWidth>rightEdge) left=rightEdge-panelWidth;
			if (left<0) left=0;
		}
		panel.style.left=left+"px"; panel.style.top=top+"px";
	}
}
//}}}
//{{{
// TW2.1 and earlier:
// hijack Slider stop handler so overflow is visible after animation has completed
Slider.prototype.coreStop = Slider.prototype.stop;
Slider.prototype.stop = function()
	{ this.coreStop.apply(this,arguments); this.element.style.overflow = "visible"; }

// TW2.2+
// hijack Morpher stop handler so sliderPanel/floatingPanel overflow is visible after animation has completed
if (version.major+.1*version.minor+.01*version.revision>=2.2) {
	Morpher.prototype.coreStop = Morpher.prototype.stop;
	Morpher.prototype.stop = function() {
		this.coreStop.apply(this,arguments);
		var e=this.element;
		if (hasClass(e,"sliderPanel")||hasClass(e,"floatingPanel")) {
			// adjust panel overflow and position after animation
			e.style.overflow = "visible";
			if (window.adjustSliderPos) window.adjustSliderPos(e.parentNode,e.button,e);
		}
	};
}
//}}}
/***
|''Name''|NightModePlugin|
|''Description''|This plugin introduces the {{{switchNightMode}}} macro that allows to switch "day mode" and "night mode" styles|
|''Version''|0.9.8|
|''~CoreVersion''||
|''Author''|Yakov Litvin|
!!!Syntax
{{{
<<switchNightMode label:"try this">>
}}}
!!!Demo
<<switchNightMode label:"B/W">>
!!!Code
***/
//{{{
var applySectionCSS = function(section) {
	var text = store.getRecursiveTiddlerText("NightModePlugin##"+section,"",1);
	text = text.substring(3, text.length-3);
	return setStylesheet(text,section);
};

config.macros.switchNightMode = {
	nightCPText: store.getTiddlerText("NightModePlugin##NightModeColorPalette"),
	goNight: function() { // doesn't check or change the cookie-parameter

		var paletteName = "ColorPalette",
		    paletteTid  = store.fetchTiddler(paletteName);
		this.dayPalette = {
			tid: paletteTid ? paletteTid : null,
			shadow: paletteTid ? null : config.shadowTiddlers[paletteName]
		};

		var nigthTid = new Tiddler(paletteName);
		nigthTid.assign(null,this.nightCPText)
		store.saveTiddler(nigthTid); // attach the tiddler, recalc slices, invoke notifiers
		applySectionCSS("TextBoxColors");
		applySectionCSS("~FewerColors");
	},
	goDay: function() { // doesn't check or change the cookie-parameter

		var paletteName = "ColorPalette";
		if(this.dayPalette.shadow)
			config.shadowTiddlers[paletteName] = this.dayPalette.shadow;

		store.removeTiddler(paletteName); // to recalc slices of ColorPalette

		if(this.dayPalette.tid)
			store.saveTiddler(this.dayPalette.tid);
		removeStyleSheet("TextBoxColors");
		removeStyleSheet("~FewerColors");
	},
	switchMode: function() {

		if(config.options.chkNightMode)
			config.macros.switchNightMode.goDay();
		else
			config.macros.switchNightMode.goNight();

		config.options.chkNightMode = !config.options.chkNightMode;

// "baking" doesn't work yet..
		if(saveOption)
			saveOption("chkNightMode");
		else
			saveOptionCookie("chkNightMode");

		refreshColorPalette();
	},
	handler: function(place,macroName,params,wikifier,paramString,tiddler) {

		var pParams = paramString.parseParams("anon",null,true,false,true),
		    label = getParam(pParams,"label","switch");

		createTiddlyButton(place,label,""/*tooltip*/,this.switchMode);
	}
};

var orig_saveChanges = saveChanges;
saveChanges = function(onlyIfDirty,tiddlers)
{
	// make sure that the night palette is not saved
	var toggle = config.options.chkNightMode;
	if(toggle) {
		if(config.macros.switchNightMode.dayPalette.tid)
			store.addTiddler(config.macros.switchNightMode.dayPalette.tid);
		else
			store.deleteTiddler("ColorPalette");
	}

	orig_saveChanges.apply(this,arguments);

	if(toggle) {
		var nigthTid = new Tiddler("ColorPalette");
		nigthTid.assign(null,config.macros.switchNightMode.nightCPText)
		store.addTiddler(nigthTid);
	}
}

// apply night mode if it was set previously
// (.init method of the macro shouldn't be used as it is invoked too late and would require refreshing)
if(config.options.chkNightMode)
	config.macros.switchNightMode.goNight();
//}}}
/***
!!!TextBoxColors
{{{
input, select,
textarea { color:[[ColorPalette::Foreground]]; background-color:[[ColorPalette::Background]]; }
}}}
!!!~FewerColors
{{{
.title, h1, h2, h3, h4, h5, h6
	{ color:[[ColorPalette::PrimaryDark]]; 
}}}
!!!NightModeColorPalette
Background: #000
Foreground: #fff
~PrimaryPale: #730
~PrimaryLight: #e70
~PrimaryMid: #fb4
~PrimaryDark: #feb
~SecondaryPale: #003
~SecondaryLight: #017
~SecondaryMid: #24b
~SecondaryDark: #7be
~TertiaryPale: #111
~TertiaryLight: #333
~TertiaryMid: #666
~TertiaryDark: #999
Error: #f44
***/
/***
|Name|QuoteOfTheDayPlugin|
|Source|http://www.TiddlyTools.com/#QuoteOfTheDayPlugin|
|Documentation|http://www.TiddlyTools.com/#QuoteOfTheDayPluginInfo|
|Version|1.4.1|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
|Type|plugin|
|Description|Display a randomly selected "quote of the day" from a list defined in a separate tiddler|

!!!!!Documentation
>see [[QuoteOfTheDayPluginInfo]]
!!!!!Revisions
<<<
2008.03.21 [1.4.1] in showNextItem(), corrected handling for random selection so that //initial// index value will randomized correctly instead of always showing first item, even when randomizing. Thanks to Riccardo Gherardi for finding this.
| Please see [[QuoteOfTheDayPluginInfo]] for previous revision details |
2005.10.21 [1.0.0] Initial Release. Based on a suggestion by M.Russula
<<<
!!!!!Code
***/
//{{{
version.extensions.QuoteOfTheDayPlugin= {major: 1, minor: 4, revision: 1, date: new Date(2008,3,21)};
config.macros.QOTD = {
 clickTooltip: "click to view another item",
 timerTooltip: "auto-timer stopped... 'mouseout' to restart timer",
 timerClickTooltip: "auto-timer stopped... click to view another item, or 'mouseout' to restart timer",
 handler:
 function(place,macroName,params) {
 var tid=params.shift(); // source tiddler containing HR-separated quotes
 var p=params.shift();
 var click=true; // allow click for next item
 var inline=false; // wrap in slider for animation effect
 var random=true; // pick an item at random (default for "quote of the day" usage)
 var folder=false; // use local filesystem folder list
 var cookie=""; // default to no cookie
 var next=0; // default to first item (or random item)
 while (p) {
 if (p.toLowerCase()=="noclick") var click=false;
 if (p.toLowerCase()=="inline") var inline=true;
 if (p.toLowerCase()=="norandom") var random=false;
 if (p.toLowerCase().substr(0,7)=="cookie:") var cookie=p.substr(8);
 if (!isNaN(p)) var delay=p;
 p=params.shift();
 }
 if ((click||delay) && !inline) {
 var panel = createTiddlyElement(null,"div",null,"sliderPanel");
 panel.style.display="none";
 place.appendChild(panel);
 var here=createTiddlyElement(panel,click?"a":"span",null,"QOTD");
 }
 else
 var here=createTiddlyElement(place,click?"a":"span",null,"QOTD");
 here.id=(new Date()).convertToYYYYMMDDHHMMSSMMM()+Math.random().toString(); // unique ID
 // get items from tiddler or file list
 var list=store.getTiddlerText(tid,"");
 if (!list||!list.length) { // not a tiddler... maybe an image directory?
 var list=this.getImageFileList(tid);
 if (!list.length) { // maybe relative path... fixup and try again
 var h=document.location.href;
 var p=getLocalPath(decodeURIComponent(h.substr(0,h.lastIndexOf("/")+1)));
 var list=this.getImageFileList(p+tid);
 }
 }
 if (!list||!list.length) return false; // no contents... nothing to display!
 here.setAttribute("list",list);
 if (delay) here.setAttribute("delay",delay);
 here.setAttribute("random",random);
 here.setAttribute("cookie",cookie);
 if (click) {
 here.title=this.clickTooltip
 if (!inline) here.style.display="block";
 here.setAttribute("href","javascript:;");
 here.onclick=function(event)
 { config.macros.QOTD.showNextItem(this); }
 }
 if (config.options["txtQOTD_"+cookie]!=undefined) next=parseInt(config.options["txtQOTD_"+cookie]);
 here.setAttribute("nextItem",next);
 config.macros.QOTD.showNextItem(here);
 if (delay) {
 here.title=click?this.timerClickTooltip:this.timerTooltip
 here.onmouseover=function(event)
 { clearTimeout(this.ticker); };
 here.onmouseout=function(event)
 { this.ticker=setTimeout("config.macros.QOTD.tick('"+this.id+"')",this.getAttribute("delay")); };
 here.ticker=setTimeout("config.macros.QOTD.tick('"+here.id+"')",delay);
 }
 },
 tick: function(id) {
 var here=document.getElementById(id); if (!here) return;
 config.macros.QOTD.showNextItem(here);
 here.ticker=setTimeout("config.macros.QOTD.tick('"+id+"')",here.getAttribute("delay"));
 },
 showNextItem:
 function (here) {
 // hide containing slider panel (if any)
 var p=here.parentNode;
 if (p.className=="sliderPanel") p.style.display = "none"
 // get a new quote
 var index=here.getAttribute("nextItem"); 
 var items=here.getAttribute("list").split("\n----\n");
 if (index<0||index>=items.length) index=0;
 if (here.getAttribute("random")=="true") index=Math.floor(Math.random()*items.length);
 var txt=items[index];
 // re-render quote display element, and advance index counter
 removeChildren(here); wikify(txt,here);
 index++; here.setAttribute("nextItem",index);
 var cookie=here.getAttribute("cookie");
 if (cookie.length) {
 config.options["txtQOTD_"+cookie]=index.toString();
 saveOptionCookie("txtQOTD_"+cookie);
 }
 // redisplay slider panel (if any)
 if (p.className=="sliderPanel") {
 if(anim && config.options.chkAnimate)
 anim.startAnimating(new Slider(p,true,false,"none"));
 else p.style.display="block";
 }
 },
 getImageFileList: function(cwd) { // returns HR-separated list of image files
 function isImage(fn) {
 var ext=fn.substr(fn.length-3,3).toLowerCase();
 return ext=="jpg"||ext=="gif"||ext=="png";
 }
 var files=[];
 if (config.browser.isIE) {
 cwd=cwd.replace(/\//g,"\\");
 // IE uses ActiveX to read filesystem info
 var fso = new ActiveXObject("Scripting.FileSystemObject");
 if(!fso.FolderExists(cwd)) return [];
 var dir=fso.GetFolder(cwd);
 for(var f=new Enumerator(dir.Files); !f.atEnd(); f.moveNext())
 if (isImage(f.item().path)) files.push("[img[%0]]".format(["file:///"+f.item().path.replace(/\\/g,"/")]));
 } else {
 // FireFox (mozilla) uses "components" to read filesystem info
 // get security access
 if(!window.Components) return;
 try { netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); }
 catch(e) { alert(e.description?e.description:e.toString()); return []; }
 // open/validate directory
 var file=Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
 try { file.initWithPath(cwd); } catch(e) { return []; }
 if (!file.exists() || !file.isDirectory()) { return []; }
 var folder=file.directoryEntries;
 while (folder.hasMoreElements()) {
 var f=folder.getNext().QueryInterface(Components.interfaces.nsILocalFile);
 if (f instanceof Components.interfaces.nsILocalFile)
 if (isImage(f.path)) files.push("[img[%0]]".format(["file:///"+f.path.replace(/\\/g,"/")]));
 }
 }
 return files.join("\n----\n");
 }
}
//}}}
/%
!info
|Name|ReplaceDoubleClick|
|Source|http://www.TiddlyTools.com/#ReplaceDoubleClick|
|Version|2.0.0|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
|Type|transclusion|
|Description|disable doubleclick-to-edit-tiddler or replace doubleclick with shift/ctrl/alt+singleclick|
Usage:
<<<
{{{
<<tiddler ReplaceDoubleClick>> or
<<tiddler ReplaceDoubleClick with: key trigger>>
}}}
*''key'' (optional)
**''none'' (default=disables double-click)
**''ctrl, shift,'' or ''alt'' invokes the action only when the indicated key is used in combination with the mouse.
*''trigger'' (optional)<br>is either 'click' or 'doubleclick' (default).
<<<
Example:
<<<
{{{<<tiddler ReplaceDoubleClick with: shift click>>}}}
<<tiddler ReplaceDoubleClick with: shift click>>//(use shift+click to edit this tiddler)//
<<<
!end
!show
<<tiddler {{
 var here=story.findContainingTiddler(place);
 if (here && here.ondblclick) {
 here.setAttribute('editKey','none');
 var key='$1'; if (key=='$'+'1') key='none'
 if (['shift','ctrl','alt'].contains(key))
 here.setAttribute('editKey',key+'Key');
 var trigger=('$2'=='click')?'onclick':'ondblclick';
 here.save_dblclick=here.ondblclick;
 here.ondblclick=null;
 if (here.getAttribute('editKey')!='none')
 here[trigger]=function(e) {
 var ev=e?e:window.event;
 if (ev[this.getAttribute('editKey')])
 this.save_dblclick.apply(this,arguments);
 }
 }'';}}>>
!end
%/<<tiddler {{var src='ReplaceDoubleClick';src+(tiddler&&tiddler.title==src?'##info':'##show')}} with: [[$1]] [[$2]]>>
/%
!info
|Name|ReplaceTiddlerTitle|
|Source|http://www.TiddlyTools.com/#ReplaceTiddlerTitle|
|Version|2.0.0|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
|Type|transclusion|
|Description|replace tiddler's title text with other content - may include wiki syntax|
Usage:
<<<
{{{
<<tiddler ReplaceTiddlerTitle with: [[new title text]]>>
}}}
*text can include wiki-syntax formatting (even links and macros!)
*all double-quotes must be preceded by backslash (e.g., {{{[[He said, \"like this\"]]}}})
*if the text contains any macros that use //evaluated parameters//, the closing {{{}} }}}sequence in those parameters must be backslash-quoted (e.g., {{{[[<<someMacro {{...eval param...}\}>>]]}}})
<<<
!end
!show
<<tiddler {{
 var here=story.findContainingTiddler(place); if (here) {
 var nodes=here.getElementsByTagName("*");
 for (var i=0; i<nodes.length; i++) if (hasClass(nodes[i],"title"))
 { removeChildren(nodes[i]); wikify("$1",nodes[i]); break; }
 }
'';}}>>
!end
%/<<tiddler {{'ReplaceTiddlerTitle##'+('$1'=='$'+'1'?'info':'show')}} with: [[$1]]>>
/***
|Name|SinglePageModePlugin|
|Source|http://www.TiddlyTools.com/#SinglePageModePlugin|
|Documentation|http://www.TiddlyTools.com/#SinglePageModePluginInfo|
|Version|2.9.7|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
***/
//{{{
version.extensions.SinglePageModePlugin= {major: 2, minor: 9, revision: 7, date: new Date(2010,11,30)};
//}}}
//{{{
config.paramifiers.SPM = { onstart: function(v) {
 config.options.chkSinglePageMode=eval(v);
 if (config.options.chkSinglePageMode && config.options.chkSinglePagePermalink && !config.browser.isSafari) {
 config.lastURL = window.location.hash;
 if (!config.SPMTimer) config.SPMTimer=window.setInterval(function() {checkLastURL();},1000);
 }
} };
//}}}
//{{{
if (config.options.chkSinglePageMode==undefined)
 config.options.chkSinglePageMode=false;
if (config.options.chkSinglePagePermalink==undefined)
 config.options.chkSinglePagePermalink=true;
if (config.options.chkSinglePageKeepFoldedTiddlers==undefined)
 config.options.chkSinglePageKeepFoldedTiddlers=false;
if (config.options.chkSinglePageKeepEditedTiddlers==undefined)
 config.options.chkSinglePageKeepEditedTiddlers=false;
if (config.options.chkTopOfPageMode==undefined)
 config.options.chkTopOfPageMode=false;
if (config.options.chkBottomOfPageMode==undefined)
 config.options.chkBottomOfPageMode=false;
if (config.options.chkSinglePageAutoScroll==undefined)
 config.options.chkSinglePageAutoScroll=false;
//}}}
//{{{
config.SPMTimer = 0;
config.lastURL = window.location.hash;
function checkLastURL()
{
 if (!config.options.chkSinglePageMode)
 { window.clearInterval(config.SPMTimer); config.SPMTimer=0; return; }
 if (config.lastURL == window.location.hash) return; // no change in hash
 var tids=decodeURIComponent(window.location.hash.substr(1)).readBracketedList();
 if (tids.length==1) // permalink (single tiddler in URL)
 story.displayTiddler(null,tids[0]);
 else { // restore permaview or default view
 config.lastURL = window.location.hash;
 if (!tids.length) tids=store.getTiddlerText("DefaultTiddlers").readBracketedList();
 story.closeAllTiddlers();
 story.displayTiddlers(null,tids);
 }
}


if (Story.prototype.SPM_coreDisplayTiddler==undefined)
 Story.prototype.SPM_coreDisplayTiddler=Story.prototype.displayTiddler;
Story.prototype.displayTiddler = function(srcElement,tiddler,template,animate,slowly)
{
 var title=(tiddler instanceof Tiddler)?tiddler.title:tiddler;
 var tiddlerElem=story.getTiddler(title); // ==null unless tiddler is already displayed
 var opt=config.options;
 var single=opt.chkSinglePageMode && !startingUp;
 var top=opt.chkTopOfPageMode && !startingUp;
 var bottom=opt.chkBottomOfPageMode && !startingUp;
 if (single) {
 story.forEachTiddler(function(tid,elem) {
 // skip current tiddler and, optionally, tiddlers that are folded.
 if ( tid==title
 || (opt.chkSinglePageKeepFoldedTiddlers && elem.getAttribute("folded")=="true"))
 return;
 // if a tiddler is being edited, ask before closing
 if (elem.getAttribute("dirty")=="true") {
 if (opt.chkSinglePageKeepEditedTiddlers) return;
 // if tiddler to be displayed is already shown, then leave active tiddler editor as is
 // (occurs when switching between view and edit modes)
 if (tiddlerElem) return;
 // otherwise, ask for permission
 var msg="'"+tid+"' is currently being edited.\n\n";
 msg+="Press OK to save and close this tiddler\nor press Cancel to leave it opened";
 if (!confirm(msg)) return; else story.saveTiddler(tid);
 }
 story.closeTiddler(tid);
 });
 }
 else if (top)
 arguments[0]=null;
 else if (bottom)
 arguments[0]="bottom";
 if (single && opt.chkSinglePagePermalink && !config.browser.isSafari) {
 window.location.hash = encodeURIComponent(String.encodeTiddlyLink(title));
 config.lastURL = window.location.hash;
 document.title = wikifyPlain("SiteTitle") + " - " + title;
 if (!config.SPMTimer) config.SPMTimer=window.setInterval(function() {checkLastURL();},1000);
 }
 if (tiddlerElem && tiddlerElem.getAttribute("dirty")=="true") { // editing... move tiddler without re-rendering
 var isTopTiddler=(tiddlerElem.previousSibling==null);
 if (!isTopTiddler && (single || top))
 tiddlerElem.parentNode.insertBefore(tiddlerElem,tiddlerElem.parentNode.firstChild);
 else if (bottom)
 tiddlerElem.parentNode.insertBefore(tiddlerElem,null);
 else this.SPM_coreDisplayTiddler.apply(this,arguments); // let CORE render tiddler
 } else
 this.SPM_coreDisplayTiddler.apply(this,arguments); // let CORE render tiddler
 var tiddlerElem=story.getTiddler(title);
 if (tiddlerElem&&opt.chkSinglePageAutoScroll) {
 // scroll to top of page or top of tiddler
 var isTopTiddler=(tiddlerElem.previousSibling==null);
 var yPos=isTopTiddler?0:ensureVisible(tiddlerElem);
 // if animating, defer scroll until after animation completes
 var delay=opt.chkAnimate?config.animDuration+10:0;
 setTimeout("window.scrollTo(0,"+yPos+")",delay); 
 }
}

if (Story.prototype.SPM_coreDisplayTiddlers==undefined)
 Story.prototype.SPM_coreDisplayTiddlers=Story.prototype.displayTiddlers;
Story.prototype.displayTiddlers = function() {
 // suspend single/top/bottom modes when showing multiple tiddlers
 var opt=config.options;
 var saveSPM=opt.chkSinglePageMode; opt.chkSinglePageMode=false;
 var saveTPM=opt.chkTopOfPageMode; opt.chkTopOfPageMode=false;
 var saveBPM=opt.chkBottomOfPageMode; opt.chkBottomOfPageMode=false;
 this.SPM_coreDisplayTiddlers.apply(this,arguments);
 opt.chkBottomOfPageMode=saveBPM;
 opt.chkTopOfPageMode=saveTPM;
 opt.chkSinglePageMode=saveSPM;
}
//}}}
[[myCSS]]
/*{{{*/
@media print {#mainMenu {display: none ! important;}}
@media print {#topMenu {display: none ! important;}}
@media print {#sidebar {display: none ! important;}}
@media print {#messageArea {display: none ! important;}} 
@media print {#toolbar {display: none ! important;}}
@media print {.header {display: none ! important;}}
@media print {.tiddler .subtitle {display: none ! important;}}
@media print {.tiddler .toolbar {display; none ! important; }}
@media print {.tiddler .tagging {display; none ! important; }}
@media print {.tiddler .tagged {display; none ! important; }}
/*}}}*/
/***
|Name|TiddlerTweakerPlugin|
|Source|http://www.TiddlyTools.com/#TiddlerTweakerPlugin|
|Version|2.4.5|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
|Type|plugin|
|Description|select multiple tiddlers and modify author, created, modified and/or tag values|
~TiddlerTweaker is a 'power tool' for TiddlyWiki authors.  Select multiple tiddlers from a listbox and 'bulk modify' the creator, author, created, modified and/or tag values of those tiddlers using a compact set of form fields.  The values you enter into the fields simultaneously overwrite the existing values in all tiddlers you have selected.
!!!!!Usage
<<<
{{{<<tiddlerTweaker>>}}}
{{smallform{<<tiddlerTweaker>>}}}
By default, any tags you enter into the TiddlerTweaker will //replace// the existing tags in all the tiddlers you have selected.  However, you can also use TiddlerTweaker to quickly filter specified tags from the selected tiddlers, while leaving any other tags assigned to those tiddlers unchanged:
>Any tag preceded by a '+' (plus) or '-' (minus), will be added or removed from the existing tags //instead of replacing the entire tag definition// of each tiddler (e.g., enter '-excludeLists' to remove that tag from all selected tiddlers.  When using this syntax, care should be taken to ensure that //every// tag is preceded by '+' or '-', to avoid inadvertently overwriting any other existing tags on the selected tiddlers.  (note: the '+' or '-' prefix on each tag value is NOT part of the tag value, and is only used by TiddlerTweaker to control how that tag value is processed)
Important Notes:
* TiddlerTweaker is a 'power user' tool that can make changes to many tiddlers at once.  ''You should always have a recent backup of your document (or 'save changes' just *before* tweaking the tiddlers), just in case you accidentally 'shoot yourself in the foot'.''
* The date and author information on any tiddlers you tweak will ONLY be updated if the corresponding checkboxes have been selected.  As a general rule, after using TiddlerTweaker, always ''//remember to save your document//'' when you are done, even though the tiddler timeline tab may not show any recently modified tiddlers.
* Selecting and updating all tiddlers in a document can take a while.  Your browser may warn about an 'unresponsive script'.  Usually, if you allow it to continue, it should complete the processing... eventually.  Nonetheless, be sure to save your work before you begin tweaking lots of tiddlers, just in case something does get stuck.
<<<
!!!!!Revisions
<<<
2011.01.21 2.4.5 auto-selection: use "-" for untagged tiddlers.  Also, added 'opened', 'invert'
2009.09.15 2.4.4 added 'edit' button. moved html definition to separate section
2009.09.13 2.4.3 in settiddlers(), convert backslashed chars (\n\b\s\t) in replacement text
2009.06.26 2.4.2 only add brackets around tags containing spaces
2009.06.22 2.4.1 in setFields(), add brackets around all tags shown tweaker edit field
2009.03.30 2.4.0 added 'sort by modifier'
2009.01.22 2.3.0 added support for text pattern find/replace
2008.10.27 2.2.3 in setTiddlers(), fixed Safari bug by replacing static Array.concat(...) with new Array().concat(...)
2008.09.07 2.2.2 added removeCookie() function for compatibility with [[CookieManagerPlugin]]
2008.05.12 2.2.1 replace built-in backstage tweak task with tiddler tweaker control panel (moved from BackstageTweaks)
2008.01.13 2.2.0 added 'auto-selection' links: all, changed, tags, title, text
2007.12.26 2.1.0 added support for managing 'creator' custom field (see [[CoreTweaks]])
2007.11.01 2.0.3 added config.options.txtTweakerSortBy for cookie-based persistence of list display order preference setting.
2007.09.28 2.0.2 in settiddlers() and deltiddlers(), added suspend/resume notification handling (improves performance when operating on multiple tiddlers)
2007.08.03 2.0.1 added shadow definition for [[TiddlerTweaker]] tiddler for use as parameter references with {{{<<tiddler>>, <<slider>> or <<tabs>>}}} macros.
2007.08.03 2.0.0 converted from inline script
2006.01.01 1.0.0 initial release
<<<
!!!!!Code
***/
//{{{
version.extensions.TiddlerTweakerPlugin= {major: 2, minor: 4, revision: 5, date: new Date(2011,1,21)};

// shadow tiddler
config.shadowTiddlers.TiddlerTweaker='<<tiddlerTweaker>>';

// defaults
if (config.options.txtTweakerSortBy==undefined) config.options.txtTweakerSortBy='modified';

// backstage task
if (config.tasks) { // for TW2.2b3 or above
	config.tasks.tweak.tooltip='review/modify tiddler internals: dates, authors, tags, etc.';
	config.tasks.tweak.content='{{smallform small groupbox{<<tiddlerTweaker>>}}}';
}

// if removeCookie() function is not defined by TW core, define it here.
if (window.removeCookie===undefined) {
	window.removeCookie=function(name) {
		document.cookie = name+'=; expires=Thu, 01-Jan-1970 00:00:01 UTC; path=/;'; 
	}
}

config.macros.tiddlerTweaker = {
	handler: function(place,macroName,params,wikifier,paramString,tiddler) {
		var span=createTiddlyElement(place,'span');
		span.innerHTML=store.getTiddlerText('TiddlerTweakerPlugin##html');
		this.init(span.getElementsByTagName('form')[0],config.options.txtTweakerSortBy);
	},
	init: function(f,sortby) { // set form controls
		if (!f) return; // form might not be rendered yet...
		while (f.list.options[0]) f.list.options[0]=null; // empty the list
		var tids=store.getTiddlers(sortby);
		if (sortby=='size') // descending order
			tids.sort(function(a,b) {return a.text.length > b.text.length ? -1 : (a.text.length == b.text.length ? 0 : +1);});
		var who='';
		for (i=0; i<tids.length; i++) { var t=tids[i];
			var label=t.title; var value=t.title;
			switch (sortby) {
				case 'modified':
				case 'created':
					var t=tids[tids.length-i-1]; // reverse order
					var when=t[sortby].formatString('YY.0MM.0DD 0hh:0mm ');
					label=when+t.title;
					value=t.title;
					break;
				case 'size':
					label='['+t.text.length+'] '+label;
					break;
				case 'modifier':
				case 'creator':
					if (who!=t[sortby]) {
						who=t[sortby];
						f.list.options[f.list.length]=new Option('by '+who+':','',false,false);
					}
					label='\xa0\xa0\xa0'+label; // indent
					break;
			}
			f.list.options[f.list.length]=new Option(label,value,false,false);
		}
		f.title.value=f.who.value=f.creator.value=f.tags.value='';
		f.cm.value=f.cd.value=f.cy.value=f.ch.value=f.cn.value='';
		f.mm.value=f.md.value=f.my.value=f.mh.value=f.mn.value='';
		f.stats.disabled=f.set.disabled=f.del.disabled=f.edit.disabled=f.display.disabled=true;
		f.settitle.disabled=false;
		config.options.txtTweakerSortBy=sortby;
		f.sortby.value=sortby; // sync droplist
		if (sortby!='modified') saveOptionCookie('txtTweakerSortBy');
		else removeCookie('txtTweakerSortBy');
	},
	enablefields: function(here) { // enables/disables inputs based on #items selected
		var f=here.form; var list=f.list;
		var c=0; for (i=0;i<list.length;i++) if (list.options[i].selected) c++;
		if (c>1) f.title.disabled=true;
		if (c>1) f.settitle.checked=false;
		f.set.disabled=(c==0);
		f.del.disabled=(c==0);
		f.edit.disabled=(c==0);
		f.display.disabled=(c==0);
		f.settitle.disabled=(c>1);
		f.stats.disabled=(c==0);
		var msg=(c==0)?'select tiddlers':(c+' tiddler'+(c!=1?'s':'')+' selected');
		here.previousSibling.firstChild.firstChild.nextSibling.innerHTML=msg;
		if (c) clearMessage(); else displayMessage('no tiddlers selected');
	},
	setfields: function(here) { // set fields from first selected tiddler
		var f=here.form;
		if (!here.value.length) {
			f.title.value=f.who.value=f.creator.value=f.tags.value='';
			f.cm.value=f.cd.value=f.cy.value=f.ch.value=f.cn.value='';
			f.mm.value=f.md.value=f.my.value=f.mh.value=f.mn.value='';
			return;
		}
		var tid=store.getTiddler(here.value); if (!tid) return;
		f.title.value=tid.title;
		f.who.value=tid.modifier;
		f.creator.value=tid.fields['creator']||''; // custom field - might not exist
		f.tags.value=tid.tags.map(function(t){return String.encodeTiddlyLink(t)}).join(' ');
		var c=tid.created; var m=tid.modified;
		f.cm.value=c.getMonth()+1;
		f.cd.value=c.getDate();
		f.cy.value=c.getFullYear();
		f.ch.value=c.getHours();
		f.cn.value=c.getMinutes();
		f.mm.value=m.getMonth()+1;
		f.md.value=m.getDate();
		f.my.value=m.getFullYear();
		f.mh.value=m.getHours();
		f.mn.value=m.getMinutes();
	},
	selecttiddlers: function(here,callback) {
		var f=here; while (f&&f.nodeName.toLowerCase()!='form')f=f.parentNode;
		for (var t=f.list.options.length-1; t>=0; t--)
			f.list.options[t].selected=callback(f.list.options[t]);
		config.macros.tiddlerTweaker.enablefields(f.list);
		return false;
	},
	settiddlers: function(here) {
		var f=here.form; var list=f.list;
		var tids=[];
		for (i=0;i<list.length;i++) if (list.options[i].selected) tids.push(list.options[i].value);
		if (!tids.length) { alert('please select at least one tiddler'); return; }
		var cdate=new Date(f.cy.value,f.cm.value-1,f.cd.value,f.ch.value,f.cn.value);
		var mdate=new Date(f.my.value,f.mm.value-1,f.md.value,f.mh.value,f.mn.value);
		if (tids.length>1 && !confirm('Are you sure you want to update these tiddlers:\n\n'+tids.join(', '))) return;
		store.suspendNotifications();
		for (t=0;t<tids.length;t++) {
			var tid=store.getTiddler(tids[t]); if (!tid) continue;
			var title=!f.settitle.checked?tid.title:f.title.value;
			var who=!f.setwho.checked?tid.modifier:f.who.value;
			var text=tid.text;
			if (f.replacetext.checked) {
				var r=f.replacement.value.replace(/\\t/mg,'\t').unescapeLineBreaks();
				text=text.replace(new RegExp(f.pattern.value,'mg'),r);
			}				
			var tags=tid.tags;
			if (f.settags.checked) { 
				var intags=f.tags.value.readBracketedList();
				var addtags=[]; var deltags=[]; var reptags=[];
				for (i=0;i<intags.length;i++) {
					if (intags[i].substr(0,1)=='+')
						addtags.push(intags[i].substr(1));
					else if (intags[i].substr(0,1)=='-')
						deltags.push(intags[i].substr(1));
					else
						reptags.push(intags[i]);
				}
				if (reptags.length)
					tags=reptags;
				if (addtags.length)
					tags=new Array().concat(tags,addtags);
				if (deltags.length)
					for (i=0;i<deltags.length;i++)
						{ var pos=tags.indexOf(deltags[i]); if (pos!=-1) tags.splice(pos,1); }
			}
			if (!f.setcdate.checked) cdate=tid.created;
			if (!f.setmdate.checked) mdate=tid.modified;
			store.saveTiddler(tid.title,title,text,who,mdate,tags,tid.fields);
			if (f.setcreator.checked) store.setValue(tid.title,'creator',f.creator.value); // set creator
			if (f.setcdate.checked) tid.assign(null,null,null,null,null,cdate); // set create date
		}
		store.resumeNotifications();
		this.init(f,f.sortby.value);
	},
	displaytiddlers: function(here,edit) {
		var f=here.form; var list=f.list;
		var tids=[];
		for (i=0; i<list.length;i++) if (list.options[i].selected) tids.push(list.options[i].value);
		if (!tids.length) { alert('please select at least one tiddler'); return; }
		story.displayTiddlers(story.findContainingTiddler(f),tids,edit?DEFAULT_EDIT_TEMPLATE:null);
	},
	deltiddlers: function(here) {
		var f=here.form; var list=f.list;
		var tids=[];
		for (i=0;i<list.length;i++) if (list.options[i].selected) tids.push(list.options[i].value);
		if (!tids.length) { alert('please select at least one tiddler'); return; }
		if (!confirm('Are you sure you want to delete these tiddlers:\n\n'+tids.join(', '))) return;
		store.suspendNotifications();
		for (t=0;t<tids.length;t++) {
			var tid=store.getTiddler(tids[t]); if (!tid) continue;
			if (tid.tags.contains('systemConfig')) {
				var msg=tid.title+' is tagged with systemConfig.'
					+'\n\nRemoving this tiddler may cause unexpected results.  Are you sure?';
				if (!confirm(msg)) continue;
			}
			store.removeTiddler(tid.title);
			story.closeTiddler(tid.title);
		}
		store.resumeNotifications();
		this.init(f,f.sortby.value);
	},
	stats: function(here) {
		var f=here.form; var list=f.list; var tids=[]; var out=''; var tot=0;
		var target=f.nextSibling;
		for (i=0;i<list.length;i++) if (list.options[i].selected) tids.push(list.options[i].value);
		if (!tids.length) { alert('please select at least one tiddler'); return; }
		for (t=0;t<tids.length;t++) {
			var tid=store.getTiddler(tids[t]); if (!tid) continue;
			out+='[['+tid.title+']] '+tid.text.length+'\n'; tot+=tid.text.length;
		}
		var avg=tot/tids.length;
		out=tot+' bytes in '+tids.length+' selected tiddlers ('+avg+' bytes/tiddler)\n<<<\n'+out+'<<<\n';
		removeChildren(target);
		target.innerHTML="<hr><font size=-2><a href='javascript:;' style='float:right' "
			+"onclick='this.parentNode.parentNode.style.display=\"none\"'>close</a></font>";
		wikify(out,target);
		target.style.display='block';
	}
};
//}}}
/***
//{{{
!html
<style>
.tiddlerTweaker table,
.tiddlerTweaker table tr,
.tiddlerTweaker table td
	{ padding:0;margin:0;border:0;white-space:nowrap; }
</style><form class='tiddlerTweaker'><!--
--><table style="width:100%"><tr valign="top"><!--
--><td style="text-align:center;width:99%;"><!--
	--><font size=-2><div style="text-align:left;"><span style="float:right"><!--
	-->&nbsp; <a href="javascript:;" 
		title="select all tiddlers"
		onclick="return config.macros.tiddlerTweaker.selecttiddlers(this,function(opt){
			return opt.value.length;
		});">all</a><!--
	-->&nbsp; <a href="javascript:;" 
		title="select tiddlers currently displayed in the story column"
		onclick="return config.macros.tiddlerTweaker.selecttiddlers(this,function(opt){
			return story.getTiddler(opt.value);
		});">opened</a><!--
	-->&nbsp; <a href="javascript:;" 
		title="select tiddlers that are new/changed since the last file save"
		onclick="var lastmod=new Date(document.lastModified);
			return config.macros.tiddlerTweaker.selecttiddlers(this,function(opt){
				var tid=store.getTiddler(opt.value);
				return tid&&tid.modified>lastmod;
			});
		">changed</a><!--
	-->&nbsp; <a href="javascript:;" 
		title="select tiddlers with at least one matching tag"
		onclick="var t=prompt('Enter space-separated tags (match one or more).  Use \x22-\x22 to match untagged tiddlers');
			if (!t||!t.length) return false;
			var tags=t.readBracketedList();
			return config.macros.tiddlerTweaker.selecttiddlers(this,function(opt){
				var tid=store.getTiddler(opt.value);
				return tid&&tags[0]=='-'?!tid.tags.length:tid.tags.containsAny(tags);
			});
		">tags</a><!--
	-->&nbsp; <a href="javascript:;" 
		title="select tiddlers whose titles include matching text"
		onclick="var t=prompt('Enter a title (or portion of a title) to match');
			if (!t||!t.length) return false;
			return config.macros.tiddlerTweaker.selecttiddlers(this,function(opt){
				return opt.value.indexOf(t)!=-1;
			});
		">titles</a><!--
	-->&nbsp; <a href="javascript:;" 
		title="select tiddlers containing matching text"
		onclick="var t=prompt('Enter tiddler text (content) to match');
			if (!t||!t.length) return false;
			return config.macros.tiddlerTweaker.selecttiddlers(this,function(opt){
				var tt=store.getTiddlerText(opt.value,'');
				return tt.indexOf(t)!=-1;
			});
		">text</a><!--
	-->&nbsp; <a href="javascript:;" 
		title="reverse selection of all list items"
		onclick="return config.macros.tiddlerTweaker.selecttiddlers(this,function(opt){
			return !opt.selected;
		});">invert</a><!--
	--></span><span>select tiddlers</span><!--
	--></div><!--
	--></font><select multiple name=list size="11" style="width:99.99%" 
		title="use click, shift-click and/or ctrl-click to select multiple tiddler titles" 
		onclick="config.macros.tiddlerTweaker.enablefields(this)" 
		onchange="config.macros.tiddlerTweaker.setfields(this)"><!--
	--></select><br><!--
	-->show<input type=text size=1 value="11" 
		onchange="this.form.list.size=this.value; this.form.list.multiple=(this.value>1);"><!--
	-->by<!--
	--><select name=sortby size=1 
		onchange="config.macros.tiddlerTweaker.init(this.form,this.value)"><!--
	--><option value="title">title</option><!--
	--><option value="size">size</option><!--
	--><option value="modified">modified</option><!--
	--><option value="created">created</option><!--
	--><option value="modifier">modifier</option><!--
	--></select><!--
	--><input type="button" value="refresh" 
		onclick="config.macros.tiddlerTweaker.init(this.form,this.form.sortby.value)"<!--
	--> <input type="button" name="stats" disabled value="totals..." 
		onclick="config.macros.tiddlerTweaker.stats(this)"><!--
--></td><td style="width:1%"><!--
	--><div style="text-align:left"><font size=-2>&nbsp;modify values</font></div><!--
	--><table style="width:100%;"><tr><!--
	--><td style="padding:1px"><!--
		--><input type=checkbox name=settitle unchecked 
			title="allow changes to tiddler title (rename tiddler)" 
			onclick="this.form.title.disabled=!this.checked">title<!--
	--></td><td style="padding:1px"><!--
		--><input type=text name=title size=35 style="width:98%" disabled><!--
	--></td></tr><tr><td style="padding:1px"><!--
		--><input type=checkbox name=setcreator unchecked 
			title="allow changes to tiddler creator" 
			onclick="this.form.creator.disabled=!this.checked">created by<!--
	--></td><td style="padding:1px;"><!--
		--><input type=text name=creator size=35 style="width:98%" disabled><!--
	--></td></tr><tr><td style="padding:1px"><!--
		--><input type=checkbox name=setwho unchecked 
			title="allow changes to tiddler author" 
			onclick="this.form.who.disabled=!this.checked">modified by<!--
	--></td><td style="padding:1px"><!--
		--><input type=text name=who size=35 style="width:98%" disabled><!--
	--></td></tr><tr><td style="padding:1px"><!--
		--><input type=checkbox name=setcdate unchecked 
			title="allow changes to created date" 
			onclick="var f=this.form;
				f.cm.disabled=f.cd.disabled=f.cy.disabled=f.ch.disabled=f.cn.disabled=!this.checked"><!--
		-->created on<!--
	--></td><td style="padding:1px"><!--
		--><input type=text name=cm size=2 style="width:2em;padding:0;text-align:center" disabled><!--
		--> / <input type=text name=cd size=2 style="width:2em;padding:0;text-align:center" disabled><!--
		--> / <input type=text name=cy size=4 style="width:3em;padding:0;text-align:center" disabled><!--
		--> at <input type=text name=ch size=2 style="width:2em;padding:0;text-align:center" disabled><!--
		--> : <input type=text name=cn size=2 style="width:2em;padding:0;text-align:center" disabled><!--
	--></td></tr><tr><td style="padding:1px"><!--
		--><input type=checkbox name=setmdate unchecked 
			title="allow changes to modified date" 
			onclick="var f=this.form;
				f.mm.disabled=f.md.disabled=f.my.disabled=f.mh.disabled=f.mn.disabled=!this.checked"><!--
		-->modified on<!--
	--></td><td style="padding:1px"><!--
		--><input type=text name=mm size=2 style="width:2em;padding:0;text-align:center" disabled><!--
		--> / <input type=text name=md size=2 style="width:2em;padding:0;text-align:center" disabled><!--
		--> / <input type=text name=my size=4 style="width:3em;padding:0;text-align:center" disabled><!--
		--> at <input type=text name=mh size=2 style="width:2em;padding:0;text-align:center" disabled><!--
		--> : <input type=text name=mn size=2 style="width:2em;padding:0;text-align:center" disabled><!--
	--></td></tr><tr><td style="padding:1px"><!--
		--><input type=checkbox name=replacetext unchecked
			title="find/replace matching text" 
			onclick="this.form.pattern.disabled=this.form.replacement.disabled=!this.checked">replace text<!--
	--></td><td style="padding:1px"><!--
		--><input type=text name=pattern size=15 value="" style="width:40%" disabled 
			title="enter TEXT PATTERN (regular expression)"> with<!--
		--><input type=text name=replacement size=15 value="" style="width:40%" disabled 
			title="enter REPLACEMENT TEXT"><!--
	--></td></tr><tr><td style="padding:1px"><!--
		--><input type=checkbox name=settags checked 
			title="allow changes to tiddler tags" 
			onclick="this.form.tags.disabled=!this.checked">tags<!--
	--></td><td style="padding:1px"><!--
		--><input type=text name=tags size=35 value="" style="width:98%" 
			title="enter new tags or use '+tag' and '-tag' to add/remove tags from existing tags"><!--
	--></td></tr></table><!--
	--><div style="text-align:center"><!--
	--><nobr><input type=button name=display disabled style="width:24%" value="display" 
		title="show selected tiddlers"
		onclick="config.macros.tiddlerTweaker.displaytiddlers(this,false)"><!--
	--> <input type=button name=edit disabled style="width:23%" value="edit" 
		title="edit selected tiddlers"
		onclick="config.macros.tiddlerTweaker.displaytiddlers(this,true)"><!--
	--> <input type=button name=del disabled style="width:24%" value="delete" 
		title="remove selected tiddlers"
		onclick="config.macros.tiddlerTweaker.deltiddlers(this)"><!--
	--> <input type=button name=set disabled style="width:24%" value="update" 
		title="update selected tiddlers"
		onclick="config.macros.tiddlerTweaker.settiddlers(this)"></nobr><!--
	--></div><!--
--></td></tr></table><!--
--></form><span style="display:none"><!--content replaced by tiddler "stats"--></span>
!end
//}}}
***/
 
/***
|Name|WikifyPlugin|
|Source|http://www.TiddlyTools.com/#WikifyPlugin|
|Documentation|http://www.TiddlyTools.com/#WikifyPluginInfo|
|Version|1.1.4|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
|Type|plugin|
|Description|substitute fields, slices, or computed values into a wiki-syntax format string and render results dynamically|
The {{{<<wikify>>}}} macro allows you to easily retrieve values from custom tiddler fields, tiddler slices, computed values (using javascript) or just plain old literals, and assemble them into small bits of generated wiki-syntax text content that can be rendered directly into a tiddler, or used in the ViewTemplate or EditTemplate to add dynamically-generated content to each tiddler.

The {{{<<wikiCalc>>}}} macro performs the same processing as {{{<<wikify>>}}} and, in addition, passes the assembled text content through javascript's {{{eval()}}} function before rendering the results.  This allows you to, for example, construct and compute mathematical expressions that use input values extracted from tiddler fields or slices.
!!!!!Documentation
> see [[WikifyPluginInfo]]
!!!!!Revisions
<<<
2009.03.29 [1.1.4] in handler(), pass 'tiddler' value to wikify() to fix macro errors in rendered content
|please see [[WikifyPluginInfo]] for additional revision details|
2007.06.22 [1.0.0] initial release
<<<
!!!!!Code
***/
//{{{
version.extensions.WikifyPlugin= {major: 1, minor: 1, revision: 4, date: new Date(2009,3,29)};

config.macros.wikify={
	handler: function(place,macroName,params,wikifier,paramString,tiddler) {
		var fmt=params.shift();
		var values=[];
		var out="";
		if (!fmt.match(/\%[0-9]/g) && params.length) // format has no markers, just join all params with spaces
			out=fmt+" "+params.join(" ");
		else { // format param has markers, get values and perform substitution
			while (p=params.shift()) values.push(this.getFieldReference(place,p));
			out=fmt.format(values);
		}
		if (macroName=="wikiCalc") out=eval(out).toString();
		wikify(out.unescapeLineBreaks(),place,null,tiddler);
	},
	getFieldReference: function(place,p) { // "slicename::tiddlername" or "fieldname@tiddlername" or "fieldname"
		if (typeof p != "string") return p; // literal non-string value... just return it...
		var parts=p.split(config.textPrimitives.sliceSeparator);
		if (parts.length==2) {// maybe a slice reference?
			var tid=parts[0]; var slice=parts[1];
			if (!tid || !tid.length || tid=="here") { // no target (or "here"), use containing tiddler
				tid=story.findContainingTiddler(place);
				if (tid) tid=tid.getAttribute("tiddler")
				else tid="SiteSlices"; // fallback for 'non-tiddler' areas (e.g, header, sidebar, etc.)
			}
			var val=store.getTiddlerSlice(tid,slice);  // get tiddler slice value
		}
		if (val==undefined) {// not a slice, or slice not found, maybe a field reference?
			var parts=p.split("@");
			var field=parts[0];
			if (!field || !field.length) field="checked"; // missing fieldname, fallback: checked@tiddlername
			var tid=parts[1];
			if (!tid || !tid.length || tid=="here") { // no target (or "here"), use containing tiddler
				tid=story.findContainingTiddler(place);
				if (tid) tid=tid.getAttribute("tiddler")
				else tid="SiteFields"; // fallback for 'non-tiddler' areas (e.g, header, sidebar, etc.)
			}
			var val=store.getValue(tid,field);
		}
		// not a slice or field, or slice/field not found... return value unchanged
		return val===undefined?p:val;
	}
}
//}}}
//{{{
// define alternative macroName for triggering pre-rendering call to eval()
config.macros.wikiCalc=config.macros.wikify;
//}}}
//{{{
config.options.txtUserName='CSAfr';
config.options.txtBackupFolder='.CSAfr';
config.options.chkOpenInNewWindow=true;
config.options.chkInsertTabs=true;
config.options.txtMaxEditRows="30"
config.views.editor.defaultText='...';
config.options.chkGenerateAnRssFeed=false;
config.options.chkBackstage=false;
config.messages.tiddlerLinkTooltip="→ %0";
config.messages.externalLinkTooltip="→ Lien %0";
config.options.chkHideSiteTitles=true;
//}}}
//{{{
// Misc Plug-ins
merge(config.macros.search,{ label: "Recherche", prompt: "Moteur de recherche local à ce TiddlyWiki",});
config.options.chkSnapshotHTMLOnly=false;
config.options.chkCopyTiddlerDate=false;
// TiddlyTools
//ToggleRightSidebar
config.options.chkShowRightSidebar=false;
// DisableWikiLinks
config.options.chkDisableWikiLinks=true;
config.options.chkAllowLinksFromShadowTiddlers=true;
config.options.chkDisableNonExistingWikiLinks=true;
// SinglePageMode
config.options.chkSinglePageMode=true;
config.options.chkSinglePageKeepEditedTiddlers=true;
config.options.chkTopOfPageMode=true;
config.options.chkBottomOfPageMode=true;
config.options.chkSinglePageAutoScroll=true;
config.options.chkSinglePagePermalink=false;
// ConfirmExit
config.options.chkAlwaysConfirmExit=true;
config.options.chkSaveOnExit=true;
// Breadcrumbs
config.options.chkShowBreadcrumbs=true;
config.options.txtBreadcrumbsLimit=8;
config.options.chkReorderBreadcrumbs=true;
config.options.txtBreadcrumbsCrumbSeparator=" -- » ";
config.options.chkBreadcrumbsSave=false;
config.options.chkShowStartupBreadcrumbs=true;
config.options.chkBreadcrumbsReverse=false;
config.options.chkBreadcrumbsLimitOpenTiddlers=false;
config.options.chkBreadcrumbsHideHomeLink=false;
//}}}
//{{{
merge(config.views.wikified,{
 dateFormat: "0DD.0MM.YYYY",
});
//}}}
//{{{
// TWadmin-RO
readOnly=true;
config.options.chkSinglePageMode=true;
config.options.chkHttpReadOnly=true;
showBackstage=false;
merge(config.shadowTiddlers,{ ToolbarCommands: '|~ViewToolbar|closeTiddler|\n|~EditToolbar|+saveTiddler -cancelTiddler deleteTiddler|',});
// TWadmin-RW
// readOnly=false;
// config.options.chkHttpReadOnly=false;
// showBackstage=false;
//}}}
/*{{{*/
body {font-size:.70em;font-family:Verdana,times,serif; margin:0; padding:0;}
.toolbar {text-align:left; font-size:.7em;}
/*}}}*/
/*{{{*/
/***
StyleSheet IMG
***/
img {border:2px solid [[ColorPalette::Background]];}
/*}}}*/
/*{{{*/
/***
StyleSheetHeader
***/
.headerShadow {position:relative; padding:0.5em 0em 1em 1em; left:-1px; top:-1px;}
.headerForeground {position:absolute; padding:0.5em 0em 1em 1em; left:0px; top:0px;}
.headerShadow .right { position: absolute; top: 0; }
.headerShadow .right { right: 0; }
.headerForeground .right { display: none; }
/*}}}*/
/*{{{*/
/***
InlineTabs
***/
.tabSelected{
 color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::TertiaryPale]];
 border-left:2px solid [[ColorPalette::PrimaryMid]]; border-top:2px solid [[ColorPalette::PrimaryLight]]; border-right:2px solid [[ColorPalette::PrimaryMid]]; border-bottom-style:2px solid [[ColorPalette::PrimaryMid]];
}
.tabContents {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::Background]]; border:2px solid [[ColorPalette::PrimaryMid]];}
/*}}}*/
/*{{{*/
/***
StyleSheetFirstLetter
***/
.firstletter{ float:left; width:0.6em; font-size:250%; font-family:times,arial; line-height:60%; color:#00f !important; background:inherit !important; }
.firstletterC{ float:center; width:0.6em; font-size:250%;  line-height:60%; color:#00f !important; background:inherit !important; }
.FirstLetter{ width:0.6em; font-size:150%; font-family:times,arial; line-height:60%; !important; background:inherit !important; }
/*}}}*/
/*{{{*/
/***
StyleSheetTableList
***/
.viewer ul {margin-top: 0; margin-bottom: 0;}
.viewer {text-align: justify;}
.viewer th {background:[[ColorPalette::TertiaryPale]]; color:[[ColorPalette::PrimaryMid]];}
/*}}}*/
/*{{{*/
/***
Alignement
***/
.floatleft { display:block;text-align:left; }
.floatL { display:block;text-align:left; }
.floatright { display:block;text-align:right; }
.floatR { display:block;text-align:right; }
.floatcenter { display:block;text-align:center; }
.floatC { display:block;text-align:center; }
.wideTable{width:100%}
.Table100{width:100%}
.Table98{width:98%}
/*}}}*/
/*{{{*/
/***
NestedSlidersPlugin
***/
.floatingPanel
 { z-index:700; padding:1em; margin:0em; border:1px solid; -moz-border-radius:1em; font-size:8pt; text-align:left; }
.floatingPanel hr
 { margin:2px 0 1px 0; padding:0; }
#sidebarOptions .sliderPanel
 { margin:0; padding:0; font-size:1em; background:transparent; }
#sidebarOptions .sliderPanel a
 { font-weight:normal; }
#sidebarOptions .sliderPanel blockquote
 { margin:0;padding:0;margin-left:1em; border-left:1px dotted; padding-left:1em }

.selected .floatingPanel .button,
.selected .floatingPanel a:link,
.selected .floatingPanel a:hover,
.selected .floatingPanel a:visited,
.floatingPanel .button,
.floatingPanel a:link,
.floatingPanel a:hover,
.floatingPanel a:visited
 { color:[[ColorPalette::PrimaryDark]] !important; }
/*}}}*/
/*{{{*/
.QOTD
 { color:#00f !important; background:inherit !important; }
/*}}}*/
/*{{{*/
/* displays the list of a tiddler's tags horizontally. used in ViewTemplate */
.horizTag li.listTitle { display:none }
.horizTag li { display: inline; font-size:90%; }
.horizTag ul { display:inline; margin:0px; padding:0px;}
/*}}}*/
/*{{{*/
.viewer td { vertical-align: top; }
.viewer th { vertical-align: top; }
.viewer dl { margin: 0; }
/*}}}*/
!"//
//"
[>img(150px,auto)[iCSA/	]]Publié le 	2018 -- Rédigé par 

<<<
__''	''__
//	//
[...]
<<<
&rArr; Lire [[la suite|	]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
[[Bienvenue]][[Blog]]
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::EditToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='editor' macro='edit title'></div>
<div macro='annotations'></div>
<div class='editor' macro='edit tags'></div><div class='editorFooter'><span macro='message views.editor.tagPrompt'></span><span macro='tagChooser excludeLists'></span></div>
<div class='editor' macro='edit text'></div>
<!--}}}-->
----
[img(200px,auto)[i/Email-CSA_FR.png]]
<<tiddler .ToggleRightSidebar>>
<<tiddler .ToggleLeftSidebar>> __[[Salon Cloud & Cyber Security|20180724 - Salon Cloud & Cyber Security Novembre 2018]]__ • <<tiddler HeaderNewsPublished>>
__[[Salon Cloud & Cyber Security|20180724 - Salon Cloud & Cyber Security Novembre 2018]]__ • [[Dernières publications|Publications]] : [[Médical|Publications - Médical]] • [[Menaces|Publications - Menaces]] • [[Cloud Controls Matrix|Publications - Cloud Controls Matrix]] • [[Cryptographie|Publications - Cryptographie]] • [[RGPD|Publications - RGPD]] • [[Incidents|Publications - Incidents]] • [[Situation 2018|Publications - Situation]]
[img(100px,auto)[i/CCSEP_201811.jpg][20180724 - Salon Cloud & Cyber Security Novembre 2018]]
Participation au Salon [[Cloud & Cyber Security|20180724 - Salon Cloud & Cyber Security Novembre 2018]] fin novembre 2018 à Paris
[[en savoir plus...|20180724 - Salon Cloud & Cyber Security Novembre 2018]]

----
<html><i class="fa fa-graduation-cap fa-3x" aria-hidden="true"></i></html>
Depuis 2012, partenaire du 
''Mastère Spécialisé ®
[[Expertise Cloud Computing|https://formation-continue.isep.fr/cloud-computing/]]''
→ [[Inscriptions|20180702 - ISEP Mastere Spécialisé Cloud]]
→ [[ouvertes pour|20180702 - ISEP Mastere Spécialisé Cloud]]
→ [[octobre 2018|20180702 - ISEP Mastere Spécialisé Cloud]]
[img(100px,auto)[i/ISEP-FC.jpg][https://www.isep.fr/masteres-specialises/]]
----
<<tiddler HeaderNewsPublished>>
----
__Document de référence__
[[Cloud Controls Matrix|Groupe de Travail - Cloud Controls Matrix]]
[img(100px,auto)[CCM|iCSA/CCM_logo.png][Groupe de Travail - Cloud Controls Matrix]]
----
[img[Lien vers le compte Twitter du Chapitre Français|i/Twitter_icon.png][http://twitter.com/cloudsaFR]]
http://twitter.com/cloudsaFR
Suivez nous sur Twitter
----
[img[Lien vers l'espace Slack du Chapitre Français|i/Slack_icon.png][https://csafr.slack.com/]] 
https://csafr.slack.com/
Rejoignez nous sur Slack (à condition de faire déjà partie du groupe sur LinkedIn)
----
[img[Lien vers le compte Twitter du Chapitre Français|i/Twitter_icon.png][http://twitter.com/cloudsa]]
http://twitter.com/cloudsa
Suivez la [[Cloud Security Alliance]] sur Twitter
@@display:none;<<tiddler .ToggleRightSidebar>>@@{{floatL{^^1^^ [[Quoi de neuf|Dernières mises à jour]]
^^2^^ [[Présentation|Présentation du Chapitre Français de la Cloud Security Alliance]]
^^3^^ [[Actualités]]
^^4^^ [[Blog]]
^^5^^ [[Groupes de travail]]
^^6^^ [[Documents]]
^^7^^ [[Webographie]]
----
Rejoignez nous 
[img[Lien vers le compte Twitter du Chapitre Français|i/Twitter_icon.png][https://twitter.com/cloudsaFR]] [img[Lien vers l'espace Slack du Chapitre Français|i/Slack_icon.png][https://csafr.slack.com/]] [img[i/In.png][https://www.linkedin.com/groupRegistration?gid=3758242]]
----
[[Une question ?|Contact]]
----
}}}{{floatL{__[[Actualités]]__ <<tiddler HeadlinesRoll>>}}}
<!--{{{-->
<link rel='stylesheet' href='font-awesome/css/font-awesome.min.css' />
<!-- link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml' -->
<!--}}}-->
<!--{{{-->
<div class='header' role='banner' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryDark]]'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>
<img src="i/FR.jpg" align="right">
<img src="i/cloud-security-alliance-2.png" align="right">
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>&nbsp;
</div>
</div>
<div id='mainMenu' role='navigation' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' role='navigation' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' role='complementary' refresh='content' force='true' tiddler='SideBarTabs'></div>
</div>
<div id='displayArea' role='main'>
<div id='messageArea'></div>
<div style="text-align:center"><span class='HeaderNews' refresh='content' tiddler='HeaderNews'></span></div>
<div id='tiddlerDisplay'></div>
<div style="text-align:center"><span class='FooterNews' refresh='content' tiddler='FooterDisclaimer'></span></div>
</div>
<!--}}}-->
~~Chapitre Français~~
Cloud Security Alliance
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::ViewToolbar]]'></div>
<div class='title' macro='view title'></div>
<!-- <div class='subtitle'> <span macro='view modifier link'></span> <span macro='view modified date'></span> &#x2022; <div class='horizTag' macro='tags'> &#x2022; (<span macro='message views.wikified.createdPrompt'></span> <span macro='view created date'></span> <span macro='view tags'></span> </div> -->
<!-- <div class='tagging' macro='tagging'></div> -->
<!-- <div class='tagged' macro='tags'></div> -->
<!-- <div class='subtitle'> <div class='horizTag' macro='tags'></div> --> </div>
<div class='viewer' macro='view text wikified'></div>
<div class='viewer' macro='tiddler ReplaceDoubleClick'></div>
<div class='tagClear'></div>
<!--}}}-->
<<tabs Actu "Aout 2018" "Aout 2018" "Actualités Aout 2018" "Juillet 2018" "Juillet 2018" "Actualités Juillet 2018" "Mars 2018" "Mars 2018" "Actualités Mars 2018" "2018" "2018" "Actualités 2018" >>
!Réactivation du serveur Web du chapitre français de la [[Cloud Security Alliance]]

[>img(200px,auto)[i/cloud-security-alliance.png]]Après plusieurs mois d'arrêt, le serveur Web du [[Chapitre français|CSA-FR]] de la [[Cloud Security Alliance]] sera remis en ligne pour le 1^^er^^ mars 2018.

Les nuages se lèvent, les travaux sont terminés, le site va de nouveau être visible !

Le lien à ajouter à vos favoris : http://www.cloudsecurityalliance.fr
<<tiddler [[20180724 - Salon Cloud & Cyber Security Novembre 2018]]>>
<<tiddler [[20180702 - ISEP Mastere Spécialisé Cloud]]>>
!Prochaines conférences téléphoniques des groupes de travail en mars 2018
* "//''Top Threats'' Working Group//" : 27.03.2018, 19h00
* "//Blockchain/Distributed Ledger Working Group//" : 28.03.2018, 19h00
* "//''Cloud Controls Matrix'' Working Group//" : 29.03.2018, 19h00
* "//Software Defined Perimeter Working Group//" : 30.03.2018, 19h00

!Conférences au [[Forum Securité@Cloud|http://www.cloudcomputing-world.com/security]] le jeudi 22 mars 2018
[>img(300px,auto)[i/ForumSecuriteCloud-2018.png]]
La [[Cloud Security Alliance]] fera la présentation d'introduction le jeudi 22 mars 2018 à 14h15 et participera à une table ronde à 15h15 lors de la conférence [[Forum Securité@Cloud|http://www.cloudcomputing-world.com/security]] à Paris, Porte de Versailles.

* Forum Sécurité@Cloud : http://www.cloudcomputing-world.com/security
** Flux Twitter : https://twitter.com/forumsecucloud
* ''F10 : Panorama des attaques dans le Cloud'' +++[»]
<<<
!F10 : Panorama des attaques dans le Cloud.
Y-a-t-il des rançongiciels dans le Cloud ? A quels types d'attaques devons-nous nous préparer ?
__Intervenant :__
* Olivier CALEFF - co-fondateur du Chapter français de la [[Cloud Security Alliance]]	
<<<
 
=== 
** Détails : http://www.cloudcomputing-world.com/conferences-et-ateliers/conferences#F10
** Inscription : http://www.cloudcomputing-world.com/visiter?interetConf=F10
* ''F12 : Comment réagir face à une attaque ?'' (Table ronde) +++[»]
<<<
!F12 : Comment réagir face à une attaque ?
Quelles mesures doit-on prendre avant et après une attaque ? Quels sont les organismes qui vont pouvoir vous aider ? Quelles conséquences vis-à-vis des clients et des fournisseurs ?
__Participants à la table ronde :__
* __Animateur :__ Olivier CALEFF -- co-fondateur du Chapter français de la [[Cloud Security Alliance]]
* Mahault BONNET-MADIN -- responsable partenariats au CSIRT-PJ
* Adrienne CHARMET -- chargée de mission, Cybermalveillance.gouv.fr
* Michel JUVIN -- expert en cybersécurité, CESIN
* Christophe MARAIS -- capitaine de police, chef adjoint du CSIRT-PJ
<<<
 
=== 
** Détails : http://www.cloudcomputing-world.com/conferences-et-ateliers/conferences#F12
** Inscription : http://www.cloudcomputing-world.com/visiter?interetConf=F12

!Partenariat avec le salon [[Cloud Computing World Expo|http://www.cloudcomputing-world.com/]] les 21 et 22 mars 2018 à Paris, Porte de Versailles
[>img(100px,auto)[i/CloudComputingWorld.jpg]]
La [[Cloud Security Alliance]] est partenaire de la [[Cloud Computing World Expo|http://www.cloudcomputing-world.com/]]

* Détails : http://www.cloudcomputing-world.com/
* Inscription : http://www.cloudcomputing-world.com/visiter
!Le groupe de travail "Application Containers and Microservices" a besoin de vous !
[>img(150px,auto)[iCSA/microservices.png][https://cloudsecurityalliance.org/group/containerization/]]La [[Cloud Security Alliance]] recherche des bénévoles pour participer à l'élaboration et la rédaction d'un livre blanc sur les bonnes pratiques et les défis en matière de sécurisation des conteneurs et des micro-services.
La charte du groupe de travail est disponible sur ce site [[ici|https://cloudsecurityalliance.fr/fichiers/201806-Application_Containers_and_Microservices_Working_Group_Charter.pdf]]

Si vous êtes intéressé, veuillez vous inscrire au groupe de travail sur la page du Groupe de Travail [[ici|https://cloudsecurityalliance.org/group/containerization/]].

__''Extrait :''__
> //The Cloud Security Alliance is launching the Application Containers and Microservices (ACM) Working Group. The CSA ACM Working Group previously work with the National Institute of Standards and Technology (NIST) ACM Working Group to provide research, guidance, and best practices for the secure use of application containers and microservices.//
[...]
> //The mission of the CSA Application Containers and Microservices working group is to conduct research on the security of application containers and microservices and publish guidance and best practices for the secure use of application containers and microservices.//
Bienvenue sur le site du [[Chapitre français|CSA-FR]] de la [[Cloud Security Alliance]]. [>img(200px,auto)[i/cloud-security-alliance.png][https://www.cloudsecurityalliance.fr]]Vous y trouverez :
* une [[présentation|Présentation du Chapitre Français de la Cloud Security Alliance]] succinte
* les dernières [[actualités|Actualités]]
* les dernières publications sur le [[blog|Blog]] de la [[Cloud Security Alliance]] (dernière mise à jour le __''15 Septembre 2018''__)
* les derniers [[documents|Documents]] publiés par la [[Cloud Security Alliance]]
* les [[groupes de travail|Groupes de travail]] de la [[Cloud Security Alliance]]
!Le [[Chamitre Français|CSA-FR]] de la[[Cloud Security Alliance]]
[>img(200px,auto)[i/cloud-security-alliance.png]]
Le [[Chapitre français|CSA-FR]] de la [[Cloud Security Alliance]] a été créé en décembre 2010 par ''[[Olivier Caleff|https://www.linkedin.com/in/caleff]]'' et ''[[Pierre Vacherand|https://www.linkedin.com/in/pierrevacherand/]]''.

Après un bon début, le [[Chapitre français|CSA-FR]] a tourné au ralenti entre 2013 et 2017.
Les activités se sont concentrées autour de participations et contributions à des événements de la [[Cloud Security Alliance]] en Europe, à des participations dans des groupes de travail de la [[Cloud Security Alliance]], et à une participation très active dans le domaine de la formation (voir ci-dessous)
Mais en 2018, les activités reprennent avec :
* La participation à deux salons (Mars et Novembre 2018)
* La poursuite des activités de formation
* L'animation du groupe LinkedIn : https://www.linkedin.com/groups/3758242
* La relance des réunions des membres du [[Chapitre français|CSA-FR]]

__Contact :__  https://CloudSecurityAlliance.fr et [img(200px,auto)[i/Email-CSA_FR.png]]

!Les partenariats
[>img(200px,auto)[i/ISEP-FC.jpg]]
Depuis 2012, le [[Chapitre français|CSA-FR]] de la [[Cloud Security Alliance]] a établi un partenariat en matière de formation avec l'[[ISEP Formation Continue|https://www.isep.fr/masteres-specialises/]] et assure notamment l'enseignement de la partie "Sécurité du Cloud" dans le cadre du Mastère Spécialisé [[Expertise Cloud Computing|https://formation-continue.isep.fr/cloud-computing/]].
La 6^^ème^^ promotion a commencé son cursus en Septembre 2017.
La [[Cloud Security Alliance]] (CSA) est une organisation à but non lucratif qui a pour mission :
* de promouvoir de bonnes pratiques en matière d'assurance de la sécurité dans le Cloud Computing
* de fournir des formations sur les utilisations du Cloud Computing pour aider à sécuriser toutes les autres formes d'informatique
La [[Cloud Security Alliance]] est dirigée par une vaste coalition de praticiens de l'industrie, d'entreprises, d'associations et d'autres intervenants clés.

__Historique__
Les enjeux et opportunités du cloud computing ont fait l'objet d'une attention particulière en 2008 au sein de la communauté de la sécurité de l'information.
Lors du forum CISO de l'ISSA à Las Vegas, en novembre 2008, le concept de d'une Alliance pour la sécurité du Cloud Computing ([[Cloud Security Alliance]]) a vu le jour. Après une présentation des tendances émergentes par ''[[Jim Reavis|https://www.linkedin.com/in/jimreavis/]]'', dont un appel à l'action pour la sécurisation du cloud computing, ''Jim Reavis'' et ''[[Nils Puhlmann|https://www.linkedin.com/in/npuhlmann/]]'' ont présenté la mission et la stratégie initiales du CSA. Une série de réunions organisationnelles avec des chefs de file de l'industrie au début de décembre 2008 a officialisé la fondation du CSA.
Le travail de sensibilisation auprès de la communauté de la sécurité de l'information pour créer un support de travail initial en vue de la Conférence RSA 2009 a donné lieu à des échanges etnre des dizaines de bénévoles pour la recherche, l'auteur, la rédaction et la révision du premier livre blanc.

__Mission__
Promouvoir l'utilisation des meilleures pratiques pour fournir une assurance de sécurité dans le Cloud Computing, et fournir de l'éducation sur les utilisations du Cloud Computing pour aider à sécuriser toutes les autres formes d'informatique.

__Site Web__
Le site Web de la [[Cloud Security Alliance]] est: https://www.cloudsecurityalliance.org
{{floatC{[img[i/Email-CSA_FR.png]]
[img[i/Cloud_Question.png]]}}}
<<tabs Blog "Septembre 2018" "Septembre 2018" "Blog Septembre 2018" "Aout 2018" "Aout 2018" "Blog Aout 2018" "Juillet 2018" "Juillet 2018" "Blog Juillet 2018" "Juin 2018" "Juin 2018" "Blog Juin 2018" "Mai 2018" "Mai 2018" "Blog Mai 2018" "Avril 2018" "Avril 2018" "Blog Avril 2018" "Mars 2018" "Mars 2018" "Blog Mars 2018" "Février 2018" "Février 2018" "Blog Février 2018" "2017" "2017" "Blog 2017" "2016" "2016" "Blog 2016" >>
!Participation au Salon ''Cloud & Cyber Security Paris'' les 27 et 28 novembre 2018
[>img(250px,auto)[i/CCSEP_201811.jpg][https://www.cloudexpoeurope.fr/cloud-security-alliance-newsletter-july-august-partner]]
Le Chapitre Français de la [[Cloud Security Alliance]] participera au  Salon ''Cloud & Cyber Security Paris''.
Les dates du salon sont les suivantes : les ''mardi 27 et mercredi 28 novembre 2018 à Paris Porte de Versailles'' (Hall 3)
L'intervention aura lieu le ''mardi 27 novembre 2018 de 15h45 à 16h10''.

En suivant le lien ci-dessous, vous pouvez obtenir une invitation gratuite qui donne accès aux deux évènements suivants :
* ''Cloud Expo Europe Paris''
* ''Data Centre World Paris''.
Inscription : https://www.cloudexpoeurope.fr/cloud-security-alliance-newsletter-july-august-partner

----
!"//Pwned Passwords – Have Your Credentials Been Stolen?//"
[>img(100px,auto)[iCSA/pwned.png]]^^Bien que publié le 14 septembre 2018 sur le blog de la CSA, cet article l'a déjà été le 15 août 2018 sur le blog de la société Bitglass
&rArr; Lire la suite [[sur le blog de la CSA|https://blog.cloudsecurityalliance.org/2018/09/14/pwned-passwords-stolen-credentials/]] ou [[l'original|https://www.bitglass.com/blog/pwnd-passwords-credentials]].^^


----
!"//Avoiding Holes in Your AWS Buckets//"
[>img(100px,auto)[iCSA/avoiding-holes-in-your-s3-buckets.png]]^^Bien que publié le 7 septembre 2018 sur le blog de la CSA, cet article l'a déjà été le 12 avril 2018 sur le site Infosec Island
&rArr; Lire la suite [[sur le blog de la CSA|https://blog.cloudsecurityalliance.org/2018/09/07/avoiding-holes-in-your-aws-buckets/]] ou [[l'original|http://www.infosecisland.com/blogview/25056-Avoiding-Holes-in-Your-AWS-Buckets.html]].^^
Cet article, rédigé par Sanjay Kalra de la société Lacework, mérite d'être lu.


----
!"//US CLOUD Act Drives Adoption of Cloud Encryption//"
[>img(100px,auto)[iCSA/US-Cloud.png]]^^Bien que publié le 5 septembre 2018 sur le blog de la CSA, cet article l'a déjà été le 12 juillet 2018 sur le blog de la société Bitglass
&rArr; Lire la suite [[sur le blog de la CSA|https://blog.cloudsecurityalliance.org/2018/09/05/us-cloud-act-drives-cloud-encryption/]] ou [[l'original|https://www.bitglass.com/blog/us-cloud-act-drives-adoption-of-cloud-encryption]].^^


----
!//NIST SP 1800-19A -- Trusted Cloud: Security Practice Guide for VMware Hybrid Cloud Infrastructure as a Service (IaaS) Environments -- Volume A: Executive Summary (Prelim. Draft 1)//
[>img(150px,auto)[i/NIST.gif]]Publié le 23 août 2018.
Le NIST a publié un appel à commentaire sur la synthèse managériale d'un document portant sur les pratiques de sécurité dans un environnement VMware IaaS en Cloud hybride.

Les commentaires sont à transmettre avant le 30 septembre 2018.
&rArr; Pour les détails, consultez la page dédiée [[ici|https://csrc.nist.gov/publications/detail/sp/1800-19a/draft]] ou directement le document [[ici|https://www.nccoe.nist.gov/sites/default/files/library/sp1800/tc-hybrid-sp1800-19a-preliminary-draft.pdf]].

__Résumé :__
<<<
//Cloud services can provide organizations the opportunity to increase their flexibility, availability, resiliency, and scalability, which they can use in turn to increase security, privacy, efficiency, responsiveness, innovation, and competitiveness.
The core impediments to an organization’s broader adoption of cloud technologies are the ability to protect its information and virtual assets in the cloud, and to have sufficient visibility so it can conduct oversight and ensure that it (and its cloud provider) are complying with applicable laws and business practices.
The National Cybersecurity Center of Excellence (NCCoE) at NIST built a laboratory environment using commercial off-the-shelf technology and cloud services to safeguard the security and privacy of an organization’s applications and data being run within or transferred between private and hybrid/public clouds.
The full NIST Cybersecurity Practice Guide being developed for this project will demonstrate how organizations can implement trusted compute pools in order to enforce and monitor their security and privacy policies on their cloud workloads and meet compliance requirements as specified in NIST Special Publication 800-53 and the Cybersecurity Framework.//
<<<
__Mots clés :__
<<<
//Cloud Computing -- Cybersecurity -- Infrastructure as a Service (IaaS) -- Security and Privacy Policies -- Virtualization //
<<<
__Auteurs :__
<<<
//Donna Dodson (NIST), Daniel Carroll (Dell/EMC), Gina Scinta (Gemalto), Hemma Prafullchandra (HyTrust), Harmeet Singh (IBM), Raghuram Yeluri (Intel), Tim Shea (RSA), Carlos Phoenix (VMware)//
<<<

----
!"//California’s CCPA Brings EU Data Privacy to the US//"
[>img(100px,auto)[iCSA/ccpa.png]]^^Bien que publié le 27 août 2018 sur le blog de la CSA, cet article l'a déjà été le 2 juillet 2018 sur le blog de la société Bitglass
&rArr; Lire la suite [[sur le blog de la CSA|https://blog.cloudsecurityalliance.org/2018/08/27/ccpa-brings-eu-data-privacy-us/]] ou [[l'original|https://www.bitglass.com/blog/californias-ccpa-brings-eu-data-privacy-to-the-us]].^^


----
!"//Software-Defined Perimeter Architecture Guide Preview (2/4)//"
[>img(200px,auto)[iCSA/cyber-security-3400657__340.jpg]]Publié le 23 août 2018 -- Rédigé par Jason Garbis, Vice President/Secure Access Products, Cyxtera Technologies Inc.

<<<
__''Aperçu du guide sur l'architecture du Software-Defined Perimeter (SDP) -- article 2/4''__
//Dans ce deuxième article, nous nous concentrons sur la section "Scénarios SDP" du document, qui présente brièvement les principaux scénarios pour le SDP, explique pourquoi les organisations devraient envisager d'adopter le SDP, et énumère les avantages que le SDP offre dans ce cas.

Cette section est, par conception, concise. Nous sommes passionnés par le SDP et la sécurité des réseaux, et nous pourrions écrire un roman entier sur ce sujet (dans lequel notre héros, l'architecte de la sécurité des réseaux Reavis Macdonald, utilise le SDP pour vaincre un adversaire malveillant et sauver son organisation d'une amende RGPD record ! Malheureusement, notre rédacteur en chef nous assure qu'une telle histoire ne serait pas un bestseller, et que notre guide d'architecture devrait également revoir le concept de briéveté...

Dans cet article, nous avons choisi d'étudier plusieurs scénarios et de les commenter://
# Scénario 1: //Identity-Driven Network Access Control//
# Scénario 2: //Network Microsegmentation//
# Scénario 3: //Secure Remote Access (VPN Alternative)//
# Scénario 4: //Third-party User Access//
# Scénario 5: //Enabling Secure Transition to IaaS Cloud Environments//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/08/23/sdp-architecture-guide-preview-part-2/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//EU GDPR vs US: What Is Personal Data?//"
[>img(100px,auto)[iCSA/CASB-personal-data.jpg]]^^Bien que publié le 20 août 2018 sur le blog de la CSA, cet article l'a déjà été le 11 juin 2018 sur le blog de la société Bitglass
&rArr; Lire la suite [[sur le blog de la CSA|https://blog.cloudsecurityalliance.org/2018/08/20/eu-gdpr-vs-us-what-is-personal-data/]] ou [[l'original|https://www.bitglass.com/blog/eu-gdpr-vs-us-what-is-personal-data]].^^



----
!"//CVE and Cloud Services, Part 1: The Exclusion of Cloud Service Vulnerabilities//"
[>img(500px,auto)[iCSA/CVE1.png]]Publié le 13 août 2018 -- Rédigé par Kurt Seifried, Director of IT, Cloud Security Alliance and Victor Chin, Research Analyst, Cloud Security Alliance

<<<
__''CVE et services Cloud, première partie : L'exclusion des vulnérabilités des services cloud''__
//Le processus de gestion des vulnérabilités est traditionnellement soutenu par un écosystème en équilibre parfois incertain, qui comprend des parties prenantes telles que les chercheurs en sécurité, les entreprises et les fournisseurs. Au cœur de cet écosystème se trouve le système CVE d'Identification Commune des Vulnérabilités et des Expositions (CVE). Pour se voir attribuer un numéro de vulnérabilité CVE, certains critères doivent être remplis. Ces derniers temps, ces critères ont commencé à poser des problèmes, car ils excluent les vulnérabilités de certaines catégories de services informatiques qui deviennent de plus en plus courantes.
Cet article est le premier d'une série qui explorera les défis et les opportunités de la gestion des vulnérabilités en relation avec l'adoption croissante des services cloud.//
[...]
* //Vulnérabilités et expositions communes : CVE est une liste d'enregistrement, chacun contenant un numéro d'identification, une description et au moins une référence publique pour les vulnérabilités de elles mêmes publiques//
[...]
* //CVE et gestion des vulnérabilités : Le système CVE est la cheville ouvrière du processus de gestion des vulnérabilités, car son utilisation et son adoption généralisées permettent l'interopérabilité des différents services et processus métier.//
[...]
* //Règles et limites de l'inclusion CVE : La décision d'attribuer un numéro d'identifiant à une vulnérabilité est régie par les règles d'inclusion.//
[...]
* //Conclusion de cette première partie : La Cloud Security Alliance et le conseil d'administration de CVE explorent actuellement des solutions aux points évoqués ci-dessus.
L'une des premières tâches consiste à obtenir les commentaires des acteurs de l'industrie au sujet d'une éventuelle modification de INC3 pour tenir compte des vulnérabilités qui ne sont pas contrôlées par le client. Un tel changement mettrait officiellement les vulnérabilités des services cloud dans le champ d'application du système CVE. Cela permettrait non seulement de suivre correctement les vulnérabilités, mais aussi d'associer des informations importantes à une vulnérabilité liée.
Veuillez nous faire savoir ce que vous pensez d'un changement à INC3 et l'impact qui en résulterait sur l'écosystème de gestion des vulnérabilités//
[...]
//Les commentaires à envoyer à l'adresse "cve-services-feedback at cloudsecurityalliance point org"//
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/08/13/cve-cloud-services-part-1/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
<<tiddler [[20180724 - Salon Cloud & Cyber Security Novembre 2018]]>>

----
!"//Software-Defined Perimeter Architecture Guide Preview (1/4)//"
[>img(200px,auto)[iCSA/cyber-security-3400657__340.jpg]]Publié le 31 juillet 2018 -- Rédigé par Jason Garbis, Vice President/Secure Access Products, Cyxtera Technologies Inc.
<<<
__''Aperçu du guide sur l'architecture du Software-Defined Perimeter (SDP) -- article 1/4''__
//Le Groupe de travail ''Software-Defined Perimeter'' (SDP) a été fondé il y a cinq ans, avec pour mission de promouvoir et d'évangéliser une nouvelle architecture plus sécurisée pour la gestion de l'accès des utilisateurs aux applications. Depuis la publication initiale de la spécification SDP, nous avons été témoins d'une adoption et d'une sensibilisation croissantes dans l'ensemble de l'industrie. En tant que praticiens, vendeurs, évangélistes et guides, nous (en tant que groupe de travail du SDP) avons beaucoup appris sur le SDP dans la pratique, et nous voulions capturer et partager cette connaissance.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/07/31/software-defined-perimeter-architecture-preview-part-1/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
<<tiddler [[20180724 - Salon Cloud & Cyber Security Novembre 2018]]>>
----
!"//Convincing Organizations to Say “Yes to InfoSec”//"
[>img(200px,auto)[iCSA/cyber-security-2765707_640-300x200.jpg]]Publié le 20 juillet 2018 -- Rédigé par Jon-Michael C. Brook, Principal, Guide Holdings, LLC

<<<
__''Convaincre les organisations de dire "oui à la sécurité de l'information".''__
//La sécurité, la cause de tous les maux? La première moitié de ma carrière, je l'ai passée dans les services de l'état, et nous sommes toujours apparus comme ceux qui ne disaient que "non", tuant dans l'oeuf la plupart des initiatives avant même qu'elles ne commencent. 
La plupart du temps, les risques l'emportaient sur les avantages, et à moins qu'il n'y ait un commanditaire à un niveau hiérarchue élevé, comme le PDG ou un membre du Comité Drecteur, les demandes étaient rejettées.
Plus récemment, en réponse à un "non" de l'équipe sécurité, le service informatique a lancé plusieurs projets de type "Shadow IT". Les gens ont commencé à utiliser des systèmes informatiques dans le cloud avec un paiement à la consommation via une carte de crédit d'entreprise. Résultat : des projets ont été lancés, développés et déployés rapidement, avant même que quiconque dans l'équipe sécurité ne puisse avoir un mot à dire.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/07/20/reshaping-value-of-security/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//What Is a CASB?//"
[>img(200px,auto)[iCSA/CASB_cartoon_Man-300x169.png]]Publié le 16 juillet 2018 -- Rédigé par Dylan Press, Director of Marketing, Avanan

<<<
__''CASB, kesako ?''__
//Email est devenu le premier vecteur d'attaque. La prse de contrôle de compte est devenue la première cible d'attaque.
Un CASB est le meilleur moyen de se protéger contre ces menaces.
Gartner a d'abord défini le terme //Cloud Access Security Broker// (CASB) en 2011, lorsque la plupart des applications informatiques étaient hébergées dans le centre informatique et que peu d'entreprises faisaient confiance au cloud. La plupart des services en ligne étaient principalement destinés aux consommateurs. À l'époque, les produits du CASB étaient conçus pour assurer la visibilité de ce qu'on appelait le Shadow IT et limiter l'accès des utilisateurs à des services Cloud non autorisés.
Aujourd'hui, les entreprises ont adopté le cloud, remplaçant un grand nombre de leurs applications internalisées par le mode "Software as a Service" (SaaS) ou transférant une grande partie de leur informatique vers des fournisseurs d'infrastructure (IaaS) comme Amazon ou Azure. Au lieu de limiter l'accès, les CASB ont évolué pour protéger les données hébergées dans le Cloud et fournir des niveaux de contrôles de sécurité dignes de ce nom afin que les enteprises puissent incorporer le SaaS et l'IaaaS dans leur architecture de sécurité existante.
Les CASB fournissent quatre services de sécurité primaires : Visibilité, sécurité des données, protection contre les menaces et conformité. Lorsque vous comparez les solutions de CASB, vous devez d'abord vous assurer qu'elles répondent à vos besoins dans chacune de ces catégories.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/07/16/what-is-a-casb/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
__Avertissement :__ bien que publié sur le site de la [[Cloud Security Alliance]], cet article a été rédigé par un tiers de la société Avanan

----
!"//Avoiding Cyber Fatigue in Four Easy Steps//"
[>img(200px,auto)[iCSA/coffee-office-worker-300x200.jpg]]Publié le 12 juillet 2018 -- Rédigé par Jon-Michael C. Brook, Principal, Guide Holdings, LLC

<<<
__''Éviter la cyberfatigue en quatre étapes simples''__
//L'épuisement lié aux cyber-alertes.
Dans le domaine de la cybersécurité, c'est inévitable. Chaque jour, il y aura une nouvelle divulfation, un nouveau piratage, un nouveau titre accrocheur pour le dernier rebondissement d'une d'attaque précédente. En tant que praticien de 23 ans, l'épuisement professionnel est un phénomène réel et, malheureusement, il se produit par vagues.
Vous suivrez avec attention les toutes dernières nouvelles pendant des mois. Prenez ne serait-ce que quelques semaines de congés au mauvais moment de l'année, peut-être aux alentours d'une des grandes conférences sur la sécurité (par exemple RSA ou Blackhat/DEF CON), et vous pourriez avoir à ramer pendant 6 semaines pour rattraper votre retard. Tout le monde a une opinion, et s'il l'on n'est pas aux premières loges, il devient difficile de séparer le bon grain de l'ivraie. Comment pouvez-vous éviter, ou du moins réduire, le risque de ne pas pouvoir répondre à la prochaine question d'un RSSI tout en conservant un sentiment d'être sain de corps et d'esprit ?
Quel est le point de non-retour au delà duquel, la quête du savoir se transforme en spirale infinie ?//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/07/12/four-easy-steps-to-avoiding-cyber-fatigue/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//Methodology for the Mapping of the Cloud Controls Matrix//"
[>img(150px,auto)[iCSA/ccm-mapping-methodology-231x300.png]]Publié le 9 juillet 2018 -- Rédigé par Victor Chin, Research Analyst, Cloud Security Alliance

<<<
__''Méthodologie pour la cartographie de la matrice des contrôles CCM''__
//La [[Cloud Controls Matrix]] (CCM) de la [[Cloud Security Alliance]] (CSA) fournit des principes fondamentaux de sécurité pour guider les vendeurs et les clients du Cloud Computing qui cherchent à évaluer le risque global de sécurité d'un service Cloud.
Pour réduire la charge de travail dans l'industrie des services dans le Cloud, le programme CCM comprend également des équivalence avec d'autres cadres de l'industrie tels que l'ISO 27001 de l'ISO/IEC, le SP 800-53 du NIST (National Institute of Standards and Technology), et l'American Institute of Certified Public Accountants (AICPA) Trust Services Criteria (TSC) Trust Services (TSC).//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/07/09/methodology-for-mapping-the-cloud-controls-matrix/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
Ce nouveau document est disponible ici : https://cloudsecurityalliance.org/download/ccm-mapping-methodology/
/% https://downloads.cloudsecurityalliance.org/assets/research/cloud-controls-matrix/ccm-mapping-methodology.pdf %/

----
<<tiddler [[20180702 - ISEP Mastere Spécialisé Cloud]]>>
!"//Cloud Migration Strategies and Their Impact on Security and Governance//"
[>img(150px,auto)[iCSA/102643738.png]]^^Bien que publié le 29 juin 2018 sur le blog de la CSA, cet article l'a déjà été le 27 mars 2018 sur le site CloudTweaks.com
Il a été rédigé par Peter HJ van Eijk, Head Coach and Cloud Architect, ClubCloudComputing.com
<<<
__''Les stratégies de migration dans le Cloud et leur impact sur la sécurité et la gouvernance''__
//Même si les migrations dans le Cloud public se font dans des contextes différents, je vois trois approches principales. Chacune d'entre elles a des implications techniques et de gouvernance très différentes.
Trois approches de la migration des nuages//
# //Approche "lift and shift", principalement IaaS//
# //Adoption de solutions SaaS//
# //Architecture Cloud native, de type PaaS//
[...]
<<<
&rArr; Lire la suite [[sur le blog de la CSA|https://blog.cloudsecurityalliance.org/2018/06/29/cloud-migration-strategies-impact-on-security-governance/]] ou [[l'original|https://cloudtweaks.com/2018/03/cloud-migration-strategies-and-their-impact-on-security-and-governance/]].^^

----
!"//Top Security Tips for Small Businesses//"
[>img(150px,auto)[iCSA/95.png]]Publié le 27 juin 2018 -- Rédigé par Jon-Michael C. Brook, Principal, Guide Holdings, LLC
<<<
__''Recommandations sécurité pour les petites entreprises''__
//La plupart des petites entreprises adoptent des offres de Cloud Computing, qu'il s'agisse de SaaS comme Quickbooks ou Salesforce, ou même de louer des ressources dans Amazon Web Services ou Azure de Microsoft, dans un environnement de type IaaS. Elles bénéficient ainsi d'une assistance informatique digne des grandes entreprises, y compris des niveaux de service qu'une petite entreprise ne pourrait jamais avoir, comme la sécurité des locaux ou la protection contre les pannes électriques avec une fiabilité de 99,999%.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/06/27/top-security-tips-small-businesses/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//Updated CCM Introduces Reverse Mappings, Gap Analysis//"
[>img(200px,auto)[iCSA/CCM-new.png]]Publié le 26 juin 2018 -- Rédigé par Sean Cordero, VP Cloud Strategy, Netskope 
<<<
__''Mise à jour de la [[Cloud Controls Matrix|Groupe de Travail - Cloud Controls Matrix]] (CCM) avec tables de correspondances inversées et mesure d'écart''__
//Depuis son introduction en 2010, la [[Cloud Controls Matrix|Groupe de Travail - Cloud Controls Matrix]] (CCM) de la [[Cloud Security Alliance]] est à la pointe quad il s'agit d'évaluer les fournisseurs de services cloud (CSP). La matrice de contrôle CCM offre aux fournisseurs (CSP) et aux consommateurs (utilisateurs) de Cloud Computing, un ensemble homogène de contrôles pour mesurer l'état de préparation et de maturité sécurité. Il continue d'être la norme utilisée pour mesurer, évaluer et informer les acteurs de la sécurité sur les bonnes pratiques pour sécuriser les services dans le Cloud.

Conformément à l'engagement de la [[Cloud Security Alliance]] d'oeuvrer à l'amélioration de la sécurité et de la confiance dans l'univers du Cloud, cette évolution de la [[Cloud Controls Matrix|Groupe de Travail - Cloud Controls Matrix]] intègre les contrôles ISO/IEC 27017:2015, ISO/IEC 27018:2014 et ISO/IEC 27002:2013, et introduit à la fois une nouvelle approche pour l'élaboration de la [[Cloud Controls Matrix|Groupe de Travail - Cloud Controls Matrix]], et une approche actualisée pour incorporer les nouvelles normes de l'industrie de la sécurité.

Les deux autres objectifs définis par le Groupe de travail de la CCM sont les tables de correspondances inversées (ou matrice inversée) et la mesure d'écart.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/06/26/ccm-iso-reverse-mapping/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
__Autres liens :__
* https://cloudsecurityalliance.org/group/cloud-controls-matrix/#_overview
* https://cloudsecurityalliance.org/download/cloud-controls-matrix-v3-0-1-iso-reverse-mapping

----
!"//Cybersecurity Trends and Training Q and A//"
[>img(150px,auto)[iCSA/security-2337429_640.png]]Publié le 22 juin 2018 -- Rédigé par Jon-Michael C. Brook, Principal, Guide Holdings, LLC
<<<
__''Questions/Réponses sur les tendances et les aspects de formation cybersécurité''__
//
Q: Why is it important for organizations and agencies to stay current in their cybersecurity training? A: Changes accelerate in technology. There’s an idea called Moore’s Law, named after Gordon Moore working with Intel, that the power of a micro-chip doubles every 18 months. When combined with the virtualization […]

Question : Pourquoi est-il important pour les entreprises et les entités gouvernementales de rester à jour dans leur formation en cybersécurité ?
R : Les changements s'accélèrent dans la technologie. Il y a une idée appelée loi de Moore, du nom de Gordon Moore qui  travaillait pour Intel, selon laquelle la puissance d'un microprocesseur double tous les 18 mois.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/06/22/cybersecurity-trends-training-q-and-a/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//Cybersecurity Certifications That Make a Difference//"
[>img(150px,auto)[iCSA/programming-3432058_640.jpg]]Publié le 14 juin 2018 -- Rédigé par Jon-Michael C. Brook, Principal, Guide Holdings, LLC
<<<
__''Lescertifications en cybersécurité qui font la différence''__
//L'industrie de la sécurité est en sous-effectif. Et de beaucoup. Les précédentes estimations de l'Institut Ponemon suggèrent jusqu'à 50% des postes de cybersécurité ne sont pas pourvus. Soixante-dix pour cent des organisations manquent de personnel et 58% déclarent avoir du mal à retenir les candidats qualifiés.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/06/14/cybersecurity-certifications-make-a-difference/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]



----
!"//Microsoft Workplace Join Part 2: Defusing the Security Timebomb//"
[>img(50px,auto)[iCSA/Risk-on-Black-Golden-Watch-Face-with-Watch-Mechanism.-Full-Frame-Closeup.jpg]]^^Bien que publié le 13 juin 2018 sur le blog de la CSA, cet article l'a déjà été le 30 avril 2018 sur le blog de la société Bitglass
&rArr; Lire la suite [[sur le blog de la CSA|https://blog.cloudsecurityalliance.org/2018/06/13/microsoft-workplace-join-defusing-the-security-timebomb/]] ou [[l'original|https://www.bitglass.com/blog/microsoft-workplace-join-part-2-defusing-security-timebomb]].^^


----
!"//Firmware Integrity in the Cloud Data Center//"
[>img(150px,auto)[iCSA/firmware-usethis.png]]Publié le 12 juin 2018 -- Rédigé par John Yeoh, Research Director/Americas, Cloud Security Alliance 
<<<
__''Intégrité du firmware dans le Cloud Data Center''__
//Nous vous annonçons que le dernier rapport de la [[Cloud Security Alliance]] intitulé "Firmware Integrity in the Cloud Data Center" est disponible. Les principaux fournisseurs de services dans le Cloud (CSP) et les acteurs des centres de calcul partagent leurs réflexions sur la construction d'une infrastructure Cloud en utilisant des serveurs sécurisés.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/06/12/firmware-integrity-cloud-data-center/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
__Page de téléchargement du rapport :__ https://cloudsecurityalliance.org/download/firmware-integrity-in-the-cloud-data-center



----
!"//New Software-Defined Perimeter Glossary Sheds Light on Industry Terms//"
[>img(150px,auto)[iCSA/SDP-Glossary_Cover.png]]Publié le 12 juin 2018 -- Rédigé par Shamun Mahmud, Research Analyst, Cloud Security Alliance 
<<<
__''Le nouveau glossaire du SDP éclaire les termes de l'industrie''__
//Le groupe de travail sur le Software Defined Perimeter (SDP) de la [[Cloud Security Alliance]] a créé un glossaire sur les termes et définitions dans les architectures SDP, car le SDP a évolué depuis la création du groupe de travail en 2014.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/06/12/software-defined-perimeter-glossary/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
__Page de téléchargement du glossaire :__ https://cloudsecurityalliance.org/download/software-defined-perimeter-glossary




----
!"//Continuous Monitoring in the Cloud//"
[>img(150px,auto)[iCSA/lock-3216823_640.jpg]]Publié le 11 juin 2018 -- Rédigé par Michael Pitcher, Vice President, Technical Cyber Services, Coalfire Federal
<<<
__''Contrôle continue dans le Cloud''__
//J'ai récemment pris la parole lors du sommet fédéral de la [[Cloud Security Alliance]] sur le thème "//Continuous Monitoring / Continuous Diagnostics and Mitigation (CDM) Concepts in the Cloud//". Comme le gouvernement américain a commencé à migrer vers le Cloud, il devient de plus en plus important d'assurer que les objectifs de contrôle continu sont bien atteints.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/06/11/continuous-monitoring-in-the-cloud/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//Cybersecurity and Privacy Certification from the Ground Up//"
[>img(200px,auto)[iCSA/dsgvo-3415444_640-300x200.jpg]]Publié le 4 juin 2018 -- Rédigé par Daniele Catteddu, CTO, Cloud Security Alliance
<<<
__''Cybersécurité et protection de la vie privée : bâtissons une certification''__
//La loi européenne sur la cybersécurité (European Cybersecurity Act), proposée en 2017 par la Commission européenne, est le plus récent des documents de gouvernance adoptés et/ou proposés par les gouvernements du monde entier, chacun avec notamment l'intention de clarifier les certifications en matière de cybersécurité pour divers produits et services.

La raison pour laquelle les certifications cybersécurité et plus récemment, de protection de la vie privée, sont si importantes est assez évidente : elles représentent un véhicule de confiance et servent à fournir une assurance quant au niveau de sécurité qu'une solution pourrait fournir. Ils représentent, du moins en théorie, un mécanisme simple par lequel les organisations et les individus peuvent prendre des décisions rapides et fondées sur les risques sans avoir besoin de comprendre pleinement les spécifications techniques du service ou du produit qu'ils achètent.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/06/04/cybersecurity-and-privacy-certification-from-the-ground-up/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

__A noter :__ un sondage est ouvert par la [[Cloud Security Alliance]]jusqu'au 2 juillet 2018
Lien : https://www.surveymonkey.com/r/csacertification

----
!"//Five Cloud Migration Mistakes That Will Sink a Business//"
[>img(200px,auto)[iCSA/success-259710_640-300x180.jpg]]Publié le 5 juin 2018 -- Rédigé par Jon-Michael C. Brook, Principal, Guide Holdings, LLC
<<<
__''Cinq erreurs de migration dans le Cloud qui feront couler une entreprise''__
//Aujourd'hui, avec la popularité croissante du Cloud Computing, il existe une multitude de ressources pour les entreprises qui envisagent ou qui sont en train de migrer leurs données vers le Cloud. Des listes de contrôle aux meilleures pratiques, Internet regorge de conseils. Mais qu'en est-il de ce que vous ne devriez pas faire ? Le meilleur des plans peut mal tourner, et il en est de même dans le cas d'une migration dans le Cloud... à moins que vous n'évitiez ces 5 erreurs courantes :
* "Le fournisseur de services cloud (Cloud Service Provider) fera tout."
* "La cryptographie est la solution à tout : la protection des données au repos et en transit fonctionne de la même manière dans le Cloud."
* "L'authentification par défaut de mon fournisseur de services cloud est suffisante."
* "Pour migrer dans le Cloud, il suffit de prendre tout ce qui est en place en interne et de le déplacer."
* "Bien évidemment, nous sommes conformes."
//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/06/05/five-cloud-migration-mistakes-that-will-sink-a-business/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//Microsoft Workplace Join Part 1: The Security Timebomb//"
[>img(50px,auto)[iCSA/Risk-on-Black-Golden-Watch-Face-with-Watch-Mechanism.-Full-Frame-Closeup.jpg]]^^Bien que publié le 8 juin 2018 sur le blog de la CSA, cet article l'a déjà été le 25 avril 2018 sur le blog de la société Bitglass
&rArr; Lire la suite [[sur le blog de la CSA|https://blog.cloudsecurityalliance.org/2018/06/08/microsoft-workplace-join-part-1-the-security-timebomb/]] ou [[l'original|https://www.bitglass.com/blog/microsoft-workplace-join-part-1-security-timebomb]].^^


----
!"//Cloud Security Trailing Cloud App Adoption in 2018//"
[>img(200px,auto)[iCSA/Screen-Shot-2018-05-14-at-4.18.12-PM.png]]^^Bien que publié le 6 juin 2018 sur le blog de la CSA, cet article l'a déjà été le 30 mai 2018 sur le blog de la société Bitglass^^
<<<
__''La sécurité à la traîne de l'adoption des applications dans le Cloud en 2018''__
//Au cours des dernières années, le Cloud Computing a attiré un nombre important d'entreprises avec ses promesses d'augmentation de la productivité, d'amélioration de la collaboration et de réduction des frais généraux informatiques. Au fur et à mesure que de plus en plus d'entreprises migrent vers le Cloud, de plus en plus d'outils Cloud voient le jour.
Dans son quatrième rapport sur l'adoption du Cloud, Bitglass présente son "état du Cloud en 2018". Comme on pouvait s'y attendre, les entreprises adoptent de plus en plus de solutions de Cloud que précédemment. Toutefois, elles n'utilisent pas les principaux outils de sécurité dans Cloud.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/06/06/cloud-security-trailing-cloud-app-adoption-in-2018/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]] ou [[l'original|https://www.bitglass.com/blog/cloud-security-trailing-cloud-apps]].

Lien vers le rapport en anglais "Cloud Adoption: 2018 War" (inscription obligatoire): https://pages.bitglass.com/FY18BR-CloudAdoption_LP.html
__Avertissement :__ Le rapport a été rédigé par la société Bitglass et non par la [[Cloud Security Alliance]].
!"//CCSK Certification vs AWS Certification – A Definitive Guide//"
[>img(300px,auto)[iCSA/ccsk-transparent-flat-300x160.png]]Publié le 28 mai 2018 -- Rédigé par Graham Thompson, CCSK, CCSP, CISSP, Authorized Trainer, Intrinsec Security
<<<
__''Certifications CCSK ou AWS, éléments de comparaison''__
//On m'a récemment demandé de comparer les certifications CCSK et AWS, et mon avis sur celle qui devrait être tentée par quelqu'un qui cherche à se lancer dans la sécurité du Cloud. Cet article tente de répondre à la question "quelle certification Cloud est la plus adaptée à votre cas". Je vous donnerai un aperçu des deux certifications, des formations existates, des examens, puis je conclurai par quelques réflexions sur la certification qui pourrait vous convenir.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/05/28/ccsk-certification-vs-aws-certification-a-definitive-guide/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//Bitglass Security Spotlight: Twitter, PyRoMine, & Stresspaint//"
[>img(200px,auto)[iCSA/Businessman-holding-a-newspaper-while-having-breakfast-in-his-kitchen.jpg]]Publié le 31 mai 2018 -- Rédigé par Jacob Serpa, Product Marketing Manager, Bitglass
<<<
__''Synthèse sécurité de Bitglass : Twitter, PyRoMine et Stresspaint''__
//Voici les arthicles sur la cybersécurité de ces dernières semaines ://
* Twitter expose des informations d'identification de ses utilisateurs en clair.
* le maliciel PyRoMine fait du cryto-minage de Monero et désactive des fonctions de sécurité chez ses victimes 
* le maliciel Stresspaint fait la chasse aux identifiants Facebook.
* le maliciel MassMiner fait lui aussi du cryto-minage
* l'organisation "Access Group Education Lending" a été compromise
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/05/31/bitglass-security-spotlight-twitter-pyromine-stresspaint/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//How ChromeOS Dramatically Simplifies Enterprise Security//"
[>img(100px,auto)[iCSA/chrome.png]]^^Bien que publié le 28 mai 2018 sur le blog de la CSA, cet article l'a déjà été le 3 mai 2018 sur le blog de la société Bitglass
&rArr; Lire la suite [[sur le blog de la CSA|https://blog.cloudsecurityalliance.org/2018/05/25/how-chromeos-dramatically-simplifies-enterprise-security/]] ou [[l'original|https://www.bitglass.com/blog/chrome-os-security-with-casb]].^^


----
!"//Prepare to Take (and Ace) the CCSK Exam at Infosecurity Europe//"
[>img(300px,auto)[iCSA/ccsk-transparent-flat-300x160.png]]Publié le 31 mai 2018 -- Rédigé par Ryan Bergsma, Training Program Director, Cloud Security Alliance
<<<
__''Préparez-vous à passer (et réussir) l'examen CCSK à Infosecurity Europe''__
//Petite devinette.
J'ai été qualifié de "mère de toutes les certifications de sécurité en informatique dans le Cloud" par __CIO Magazine__. __Search Cloud Security__ a déclaré que j'étais une "bonne alternative de certification de sécurité dans le Cloud pour un professionnel de la sécurité de novice à intermédiaire, et qui s'intéresse à la sécurité dans le loud". Enfin __Certification Magazine__ m'a classé au premier rang de l'enquête sur les salaires en 2016.
Qui suis-je ?//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/05/31/prepare-to-take-ace-the-ccsk-certification-exam/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//What If the Cryptography Underlying the Internet Fell Apart?//"
[>img(150px,auto)[iCSA/PQC-cover2-233x300.png]]Publié le 23 mai 2018 -- Rédigé par Roberta Faux, Director of Research, Envieta
<<<
__''Quel serait l'impact si la cryptographie sur laquelle Internet est basé, venait à s'effondrer ?''__
//Sans le cryptage utilisé pour sécuriser les mots de passe pour se connecter à des services comme Paypal, Gmail ou Facebook, un utilisateur est vulnérable aux attaques. La sécurité en ligne devient un élément fondamental de la vie au XXIe siècle. Une fois l'informatique quantique établie, toutes les clés secrètes que nous utilisons pour sécuriser notre vie en ligne sont en danger.
Le Groupe de travail sur la sécurité quantique du CSA (//Quantum-Safe Security Working Group//) a rédigé une nouvelle publication sur l'avenir de la cryptographie. Ce document, "//The State of Post-Quantum Cryptography//", a pour but d'aider les dirigeants d'entreprises non techniques à comprendre l'impact des ordinateurs quantiques sur l'infrastructure de sécurité d'aujourd'hui.
Parmi les sujets abordés, mentionnons :
* Qu'est-ce que la cryptographie post-quantum ?
* Briser la cryptographie à clé publique
* Echange de clés et signatures numériques
* Quantum Safe Alternative
* Planification de la transition vers un avenir avec cryptographie quantique.
//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/05/23/what-if-the-cryptography-underlying-the-internet-fell-apart/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//Surprise Apps in Your CASB PoC//"
[>img(100px,auto)[iCSA/casb-surprise-apps.png]]^^Bien que publié le 21 mai 2018 sur le blog de la CSA, cet article l'a déjà été le 4 avril 2018 sur le blog de la société Bitglass^^
<<<
__''Des applications surprises pour votre PoC CASB !''__
//Alors qu'il n'existe que depuis cinq ans, le marché du Cloud Access Security Broker (CASB) connaît son deuxième changement majeur dans l'utilisation. Les premiers CASBs qui ont été lancés sur le marché en 2013-2014 ont principalement fourni une visibilité à l'informatique en "Shadow IT". L'intérêt pour cette capacité à améliorer la visibilité a rapidement diminué en faveur de la protection des données (et plus tard de la protection contre les menaces) pour les applications SaaS autorisées et reconnues comme Office 365 et Box - ce fut le premier changement majeur sur le marché du CASB.

Le deuxième grand changement, celui que nous subissons actuellement, ne remplace pas ce cas d'utilisation, mais s'y ajoute. Au fur et à mesure que les équipes informatiques et de sécurité se sont familiarisées avec les applications ans le Cloud comme Office 365, l'entreprise a répondu par une demande accrue d'applications. Parfois cela signifie se traduit par d'autres applications SaaS, et parfois par plus d'applications personnalisées ou des progiciels qui migrent vers le cloud. Quoi qu'il en soit, ce qui a commencé comme un ensemble relativement restreint et bien défini d'applications a explosé en une demande beaucoup plus importante au cours de la dernière année et ne montre aucun signe de ralentissement - c'est le deuxième grand changement et nous le constatons dans toutes les industries et dans toutes les organisations de toutes tailles.//
[...]
<<<
&rArr; Lire la suite [[sur le blog de la CSA|&rArr; Lire la suite [[sur le blog de la CSA|https://blog.cloudsecurityalliance.org/2018/05/25/how-chromeos-dramatically-simplifies-enterprise-security/]] ou [[l'original|https://www.bitglass.com/blog/surprise-app-casb-poc]].

----
!"//Majority of Australian Data Breaches Caused by Human Error//"
[>img(200px,auto)[iCSA/map-1-300x151.png]]^^Bien que publié le 18 mai 2018 sur le blog de la CSA, cet article l'a déjà été le 16 avril 2018 sur le blog de la société Bitglass^^
<<<
__''La majorité des atteintes à la protection des données en Australie causées par une erreur humaine''__
//Il n'y a pas si longtemps, la première violation du projet de loi sur la protection de la vie privée ([[Privacy Amendment Bill|http://parlinfo.aph.gov.au/parlInfo/download/legislation/ems/r5747_ems_ed12b5bb-d3b3-4a6a-9536-53bb459a00df/upload_pdf/6000003.pdf]]) du Commissariat à l'information de l'Australie (//Office of the Australian Information Commissioner// : "OAIC") a été rendue publique. L'OAIC est de retour et vient de publier avec son premier rapport trimestriel sur les atteintes à la protection des données à déclaration obligatoire ([[Quarterly Statistics Report of Notifiable Data Breaches|https://www.oaic.gov.au/resources/privacy-law/privacy-act/notifiable-data-breaches-scheme/quarterly-statistics/Notifiable_Data_Breaches_Quarterly_Statistics_Report_January_2018__March_.pdf]]). Bien que le rapport n'offre pas beaucoup de détails, il met en évidence quelques tendances intéressantes.
La statistique la plus notable est que parmi les 63 atteintes signalées au cours du premier trimestre, la majorité d'entre elles (51 %) était le résultat d'une "erreur humaine". Selon l'OAIC, la catégorie "erreur humaine" peut intégrer la "divulgation par inadvertance, par exemple par l'envoi d'un document contenant des renseignements personnels au mauvais destinataire". Il semble que trop peu d'organisations australiennes contrôlent des choses comme le partage avec des tiers, même si le partage (et beaucoup d'autres activités potentiellement à risques) peut être contrôlé assez facilement avec un Cloud Access Security Broker (CASB).//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/05/18/majority-of-australian-data-breaches-caused-by-human-error/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]] ou [[l'original|https://www.bitglass.com/blog/australian-oaic-human-error-breaches]].

----
!"//Bitglass Security Spotlight : LinkedIn, Vector et AWS//"
[>img(150px,auto)[iCSA/Businessman-holding-a-newspaper-while-having-breakfast-in-his-kitchen.jpg]]^^Bien que publié le 17 mai 2018 sur le blog de la CSA, cet article l'a déjà été le 9 mai 2018 sur le blog de la société Bitglass^^
<<<
__''Synthèse sécurité de Bitglass : LinkedIn, Vector et AWS''__
//Voici les arthicles sur la cybersécurité de ces dernières semaines ://
* Une faille de sécurité sur LinkedIn (fonction //AutoFill//) expose les données des utilisateurs
** https://www.securityweek.com/linkedin-vulnerability-allowed-user-data-harvesting
* Une application de Vector (société énergétique néo-zélandaise) révèle les informations de clients
** https://www.msn.com/en-nz/money/company-news/personal-information-leaked-by-vector-app/ar-AAwlF7X
* Une mauvaise configuration de LocalBlox rend accessible des informations sur les utilisateurs de LocalBlox
** https://www.bleepingcomputer.com/news/security/data-firm-left-profiles-of-48-million-users-on-a-publicly-accessible-aws-server/
* PowerHammer, un logiciel malveillant de démonstration qui exfiltre les données au travers des cables électriques
** https://www.securityweek.com/hackers-can-stealthily-exfiltrate-data-power-lines
* Les applications bancaires considérées comme étant les moins sécurisées
**  https://www.zdnet.com/article/bank-sites-and-web-apps-are-most-vulnerable-to-hackers/
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/05/17/bitglass-security-spotlight-linkedin-vector-and-aws/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//Orbitz: Why You Can’t Secure Data in the Dark//"
[>img(150px,auto)[iCSA/cloudplug.jpg]]^^Bien que publié le 11 mai 2018 sur le blog de la CSA, cet article l'a déjà été le 22 mars 2018 sur le blog de la société Bitglass^^
<<<
__''Orbitz : Pourquoi l'on ne peut pas sécuriser les données sans visibilité''__
//Le 1^^er^^ mars 2018, Orbitz a découvert qu'un acteur malveillant avait peut-être pu voler des informations sur l'une de ses plates-formes. La plate-forme compromise hébergeait des informations sur les clients d'Orbitz (la filiale d'Expedia spécialisée dans la réservation de voyages en ligne) telles que les adresses postales, les numéros de téléphone, les adresses électroniques, les noms complets, ainsi que des détails d'environ 900.000 cartes de paiement.
Cette incident met en évidence la lutte quotidienne à laquelle de nombreuses entreprises sont confrontées.
En termes simples, les entreprises ne peuvent pas se permettre de sécuriser leurs données sans visibilité. En l'absence d'une visibilité complète, il est presque impossible de protéger les informations sensibles : vous ne pouvez pas vous défendre contre des menaces que vous ne pouvez pas voir. Lorsque les entreprises ne parviennent pas à mettre en oeuvre une journalisation automatique et complète de tous les événements impliquant les données de l'entreprise, difficile de dire que les incidents sont une fatalité.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/05/11/orbitz-why-you-cant-secure-data-in-the-dark/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]] ou [[l'original|https://www.bitglass.com/blog/orbitz-why-you-cant-secure-data-in-the-dark]].

----
!"//baseStriker: Office 365 Security Fails To Secure 100 Million Email Users//"
[>img(350px,auto)[iCSA/baseStriker-wbase.png]]^^Bien que publié le 19 mai 2018 sur le blog de la CSA, cet article l'a déjà été le 8 mai 2018 sur le blog de la société Avanan^^
Rédigé par Yoav Nathaniel, Customer Success Manager, Avanan
<<<
__''BaseStriker : Office 365 Security ne parvient pas à sécuriser 100 millions d'utilisateurs d'emails''__
//Nous avons récemment découvert ce qui pourrait être la plus grande faille de sécurité d'Office 365 depuis la création du service. Contrairement aux attaques similaires qui peuvent être analysées puis bloquées, l'exploitation de cette vulnérabilité permet aux hackers de contourner complètement les mécanismes de sécurité de Microsoft, y compris ses services avancés comme ATP (//Advanced Threat Protection//) Safe Links, etc.
Le nom "baseStriker" fait référence à la méthode utilisée par les pirates pour tirer parti de cette vulnérabilité : décomposer et déguiser un lien malveillant en utilisant une balise HTML appelée balise <base> URL.
Jusqu'à présent, nous n'avons vu que des exploitations de cette vulnérabilité dans le cadre d'attaques de phishing, mais elle peut également permettre de distribuer des rançongiciels, des malwares et d'autres contenus malveillants.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/05/10/basestriker-office-365-security-fails-to-secure-100-million-email-users/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]] ou [[l'original|https://www.avanan.com/resources/basestriker-vulnerability-office-365]]

----
!"//One Simple Way to Avoid 57 Percent of Breaches//"
[>img(200px,auto)[iCSA/patches.jpg]]^^Bien que publié le 8 mai 2018 sur le blog de la CSA, cet article l'a déjà été le 9 avril 2018 sur le blog de la société Bitglass^^
<<<
__''Une façon simple d'éviter 57% des atteintes à la vie privée''__
//J'ai récemment eu vent d'une enquête auprès de 3.000 professionnels de la cybersécurité commandée par la société "ServiceNow" et l'institut "Ponemon". Devinez quelle est l'une des premières statistiques qui m'a sauté aux yeux ?
"//57 % des victimes d'atteinte à la protection des données ont déclaré qu'elles ont été atteintes en raison d'une vulnérabilité non corrigée connue.//"
Du grand n'importe quoi !
Et ce nombre massif de brèches dues à l'absence de correctifs de vulnérabilité survient malgré le fait que les entreprises interrogées passent 321 heures par semaine, soit environ 8 ETPs, dans le processus de réponse aux vulnérabilités.
Donc, en moyenne, huit personnes en quête d'un processus manuel, et qui sont toujours en retard, ce qui fait que la majorité des fuites de données sont le résultat de vulnérabilités ''CONNUES'' pour lesquelles ''IL Y A UN CORRECTIF'' ?//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/05/08/one-simple-way-to-avoid-57-percent-of-breaches/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//The Case for CASB: Healthcare//"
[>img(150px,auto)[iCSA/Healthcare-Technology-How-Tech-Is-Changing-the-Patient-Physician-Relationship-300x204.jpg]]^^Bien que publié le 1er mai 2018 sur le blog de la CSA, cet article l'a déjà été le 19 mars 2018 sur le blog de la société Bitglass^^
<<<
__''Les arguments en faveur des CASBs : le secteur de la santé''__
//Au cours des deux dernières années, les Cloud Access Security Brokers (CASBs) sont passés d'une technologie naissante et à peine connue, à la norme //de facto// pour la sécurisation du cloud public dans toutes les secteurs verticaux. Au début, il est difficile de dessiner des modèles entre les industries, mais une fois que vous avez quelques centaines de déploiements d'entreprise sous votre ceinture, il devient très intéressant d'observer comment les organisations d'une industrie utilisent la même technologie (CASBs) d'une manière complètement différente des organisations d'une autre industrie.
Je suis en train de créer une série d'articles pour traiter certaines des principales différences dans l'utilisation des CASBs. Pour commencer, le secteur de la santé.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/05/01/the-case-for-casb-healthcare/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
!"//Are Traditional Security Tools Dead?//"
[>img(150px,auto)[iCSA/cloud_hard.png]]^^Bien que publié le 26 avril mai 2018 sur le blog de la CSA, cet article l'a déjà été le 16 mars 2018 sur le blog de la société Bitglass^^
<<<
__''Les outils de sécurité traditionnels ont-ils encore un avenir?''__
//Lors de l'évaluation des différentes options en matière de sécurité, les RSSI et les architectes sécurité recherchent toujours la solution qui minimisera les coûts et les frais d'administration et d'exploitation tout en maximisant la protection des données. Au plus haut niveau, les entreprises se sont appuyées sur les outils traditionnels comme moyen de protection des données à long terme, mais au fur et à mesure de l'adoption des applications Cloud, ces outils sont de plus en plus considérés comme inefficaces, incapables de répondre aux besoins d'une entreprise en perpétuelle évolution avec un parc  croissant d'applications Cloud et de terminaux non gérés capables d'accéder à ces applications.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/04/26/are-traditional-security-tools-dead/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
&rArr; Télécharger le rapport Bitglass sur https://pages.bitglass.com/CloudHard_LP.html

----
!"//CCSK vs CCSP: An Unbiased Comparison//"
[>img(150px,auto)[iCSA/CCSP-Triangle-1.png]]Publié le 24 avril 2018 -- Rédigé par Graham Thompson, CCSK, CCSP, CISSP, Authorized Trainer, Intrinsec Security
<<<
__''CCSK ou CCSP: une comparaison impartiale''__
//CCSK vs CCSP - On me pose souvent deux questions chaque fois que quelqu'un découvre que je suis instructeur pour les cours CCSK de la Cloud Security Alliance et ceux du CCSP de l'(ISC)^^2^^ :
# "Quelle est la différence entre les deux certifications ?"
# "L'examen CCSK est-il difficile ?" .... C'est très difficile, mais on en reparlera plus tard !
Dans cet article, je vais identifier les différences entre deux des certifications de sécurité dans le Cloud les plus respectées de l'industrie, à savoir le CCSK et le CCSP. Nous espérons qu'après lecture de cet article, vous saurez quelle certification correspondra le mieux à vos objectifs professionnels. Je ne pense pas être subjectif dans la mesure où j'enseigne les deux cours depuis un certain temps. En effet, j'ai donné le premier cours CCSK public en marge du cours initial de formation de formateurs à San Jose. Pour ce qui est du CCSP, j'ai participé à l'élaboration de ce cours. Je pense donc être objectif dans ma comparaison entre ces deux cours.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/04/24/ccsk-vs-ccsp-an-unbiased-comparison//]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//GDPR Is Coming: Will the Industry Be Ready?//"
[>img(150px,auto)[iCSA/GDPR_Prep-232x300.png]]Publié le 20 avril 2018 -- Rédigé par Jervis Hui, Senior Product Marketing Manager, Netskope
<<<
__''Le RGPD arrive : l'industrie sera-t-elle prête ?''__
//Avec l'imminence du 25 mai 2018, date de mise en conformité de GDPR, Netskope a travaillé avec la Cloud Security Alliance (CSA) pour sonder les professionnels de l'IT et de la sécurité en vue de la publication du rapport récemment publié et qui concerne la préparation et les défis de RGPD. D'après l'un des rapports "Netskope Cloud Reports", seulement 25% de tous les services cloud à travers le SaaS et le IaaaS sont prêts pour RGPD. Et avec l'omniprésence du cloud et des services Web, les entreprises font face à des défis de taille rien qu'avec le SaaS, l'IaaaS et le Web, sans parler de la myriade d'autres questions qu'elles doivent aborder pour le GDPR.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/04/20/gdpr-is-coming-will-the-industry-be-ready//]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
&rArr; Télécharger le rapport sur https://cloudsecurityalliance.org/download/gdpr-preparation-and-awareness-survey-report/ (lien [[direct|https://downloads.cloudsecurityalliance.org/assets/research/gdpr/GDPR_Survey.pdf]])

----
!"//Imagine a Day Without Safe Cryptography//"
[>img(150px,auto)[iCSA/SafeCrypto-cover-234x300.png]]Publié le 19 avril 2018 -- Rédigé par Jeffrey Ritter, Visiting Fellow, Kellogg College, University of Oxford
<<<
__''Imaginez une journée sans une cryptographie de confiance''__
//Tout professionnel de la sécurité, à un moment ou à un autre (ou à plusieurs reprises), se heurte à l'opposition de sa Direction face à l'évolution de la technologie. Nous savons tous que toute innovation technologique exige des adaptations dans les services de sécurité, en introduisant de nouveaux coûts liés aux changements d'équipements, aux services de tiers et aux ressources humaines. Nous savons aussi, quels que soient les nouveaux risques liés à la nouvelle technologie, que les cadres supérieurs veulent avoir l'assurance que toute nouvelle dépense produira des résultats efficaces. Aussi souvent, le résultat final est que l'entreprise bloque, reporte les dépenses et décide de mieux évaluer la gravité des risques.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/04/19/imagine-a-day-without-safe-cryptography//]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
&rArr; Télécharger le rapport sur https://cloudsecurityalliance.org/download/a-day-without-safe-cryptography (lien [[direct|https://downloads.cloudsecurityalliance.org/assets/research/quantum-safe-security/A_Day_without_Safe_Cryptography.pdf]])----

----
!"//Building a Foundation for Successful Cyber Threat Intelligence Exchange: A New Guide from CSA//"
[>img(150px,auto)[iCSA/Cloud-CISC-1.png]]Publié le 16 avril 2018 -- Rédigé par Brian Kelly, Co-chair/Cloud Cyber Incident Sharing Center (CISC) Working Group, et  CSO/Rackspace
<<<
__''Building a Foundation for Successful Cyber Threat Intelligence Exchange: A New Guide from CSA''__
//No organization is immune from cyber attack. Malicious actors collaborate with skill and agility, moving from target to target at a breakneck pace. With new attacks spreading from dozens of companies to a few hundred within a matter of days, visibility into...//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/04/16/building-a-foundation-for-successful-cyber-threat-intelligence-exchange-a-new-guide-from-csa/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]



----
!"//Speeding the Secure Cloud Adoption Process//"
[>img(150px,auto)[iCSA/State_of_Cloud-2018.png]]Publié le 16 avril 2018 -- Rédigé par Vinay Patel, Chair, CSA Global Enterprise Advisory Board, et Managing Director, Citigroup
<<<
__''Speeding the Secure Cloud Adoption Process''__
//Innovators and early adopters have been using cloud for years, taking advantage of the quicker deployment, greater scalability, and cost saving of services. The growth of cloud computing continues to accelerate, offering more solutions with added features and benefits, and with proper...//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/04/16/speeding-the-secure-cloud-adoption-process/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]




----
!"//Cloud Security and Compliance Is a Shared Responsibility//"
[>img(200px,auto)[iCSA/iStock-467764145.jpg]]Publié le 12 avril 2018 -- Rédigé par Gail Coury, Chief Information Security Officer, Oracle
<<<
__''Cloud Security and Compliance Is a Shared Responsibility''__
//Cloud Organizations around the world are ramping up to comply with the European Union’s General Data Protection Regulation (GDPR), which will be enforced beginning on May 25, 2018, and each must have the right people, processes and technology in place to comply or else potentially face litigation and heavy...//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/04/12/cloud-security-and-compliance-is-a-shared-responsibility/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//The Early Bird Gets the Virus//"
[>img(200px,auto)[iCSA/Image-of-businessman-touching-virus-alert-icon.jpg]]Publié le 9 avril 2018 -- Rédigé par Kevin Lee, Systems QA Engineer, Bitglass
<<<
__''The Early Bird Gets the Virus''__
//Most people have heard of the proverb, “The early bird gets the worm.” The part that many haven’t heard is the followup, “But the second mouse gets the cheese.” The latter proverb makes a lot of sense when you apply it to the current state of virus and malware...//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/04/09/the-early-bird-gets-the-virus/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//Australia’s First OAIC Breach Forecasts Grim GDPR Outcome//"
[>img(200px,auto)[iCSA/aus-to-eu.png]]Publié le 4 avril 2018 -- Rédigé par Rich Campagna, Chief Marketing Officer, Bitglass
<<<
__''Australia’s First OAIC Breach Forecasts Grim GDPR Outcome''__
//The first breach under the Office of the Australian Information Commissioner’s (OAIC) Privacy Amendment Bill was made public on March 16. While this breach means bad press for the offending party, shipping company Svitzer Australia, more frightening is the grim outcome it forecasts for organizations subject to GDPR regulations, which go into...//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/04/04/australias-first-oaic-breach-forecasts-grim-gdpr-outcome/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//The “Ronald Reagan” Attack Allows Hackers to Bypass Gmail’s Anti-phishing Security//"
[>img(200px,auto)[iCSA/reagan.png]]Publié le 2 avril 2018 -- Rédigé par Yoav Nathaniel, ‎Customer Success Manager, Avanan
<<<
__''The “Ronald Reagan” Attack Allows Hackers to Bypass Gmail’s Anti-phishing Security''__
//We started tracking a new method hackers use to bypass Gmail’s SPF check for spear-phishing. The hackers send from an external server, the user sees an internal user (For example, your CEO) and Gmail’s SPF-check, designed to indicate the validity of the sender, shows “SPF-OK.” Why are we calling this “The Ronald Reagan” Attack...//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/04/02/the-ronald-reagan-attack-allows-hackers-to-bypass-gmails-anti-phishing-security/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
!"//Saturday Security Spotlight: Cryptomining, AWS, and O365//"
[>img(300px,auto)[iCSA/Businessman-holding-a-newspaper-while-having-breakfast-in-hi.jpg]]Publié le 29 mars 2018 -- Rédigé par Jacob Serpa, Directeur Marketing Produit, Bitglass
<<<
__''Plein feu dominical sur la sécurité : Cryptomining, AWS, and Office365''__
Voici les principaux articles sur la cybersécurité de ces dernières semaines:
* Le minage malveillant de monnaies virtuelles, la première des activités cybercriminelles
* De nouveaux détails émergent sur les //buckets// AWS mal sécurisés
* Le rançongiciel Data Keeper commence à se répandre
* Office 365 utilisé dans des attaques récentes de phishing de masse
* SgxSpectre attaque les enclaves Intel SGX
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/03/29/saturday-security-spotlight-cryptomining-aws-and-o365/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]


----
!"//AWS Cloud: Proactive Security and Forensic Readiness – Part 3//"
[>img(300px,auto)[iCSA/data-protection-1200x480.jpg]]Publié le 27 mars 2018 -- Rédigé par Neha Thethi, Information Security Analyst, BH Consulting
<<<
__''Cloud AWS : Sécurité proactive et préparation à l'analyse forensique (3^^ème^^ partie)''__
Il s'agit du troisième article d'une série de cinq qui fournit une liste de contrôle pour la sécurité proactive et l'état de préparation à l'analyse forensique dans un environnement Cloud Amazon. Il traite de la protection des données dans AWS.
La protection des données est un sujet très important dans les entreprises et chaud dans les organisations qui traitent les données personnelles des personnes physiques dans l'UE, car l'échéance du règlement général de l'UE sur la protection des données (GDPR) approche à grands pas.
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/03/27/aws-cloud-proactive-security-and-forensic-readiness-part-3/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
Lien original : http://bhconsulting.ie/data-protection-aws/

----
!"//34 Cloud Security Terms You Should Know//"
[>img(300px,auto)[iCSA/cloud-security-101.png]]Publié le 23 mars 2018 -- Rédigé par Dylan Press, Directeur Marketing, Avanan
<<<
__''34 termes liés à la sécurité du Cloud que vous devriez connaître''__
Nous espérons que vous vous en servirez comme référence, mais aussi pour votre équipe et pour la formation de votre entreprise. Imprimez [[le document associé|https://www.avanan.com/hubfs/docs/34-Cloud-Security-Terms.pdf]] et affichez le !

Comment pouvez-vous correctement rechercher une solution de sécurité dans le Cloud, si vous ne comprenez pas ce que vous lisez ? Nous avons toujours cru que la sécurité dans les nuages devait être simple, c'est pourquoi nous avons créé Avananan. Dans le but de simplifier encore plus, nous avons créé un glossaire de 34 termes de sécurité dans le Cloud communément mal compris, et ce qu'ils signifient.
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/03/23/34-cloud-security-terms-you-should-know/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//Are Healthcare Breaches Down Because of CASBs?//"
[>img(300px,auto)[iCSA/chart.jpg]]Publié le 19 mars 2018 -- Rédigé par Salim Hafid, Responsable Marketing Produit, Bitglass
<<<
__''Les atteintes aux données de santé sont-elles en baisse à cause des CASBs''__
Bitglass vient de publier son quatrième rapport annuel sur les atteintes au secteur de la santé (//Healthcare Breach Report//). Il porte sur les fuites de données de santé en 2017 et compare le taux de ces fuites aux années précédentes. Il y a une surprise cette année avec la chute importante du volume des fuites et de l'ampleur de chaque attaque. Notre équipe de chercheurs a entrepris de découvrir le pourquoi.

Notre rapport annuel sur le secteur de la santé est fondé sur les atteintes à la vie privée issues du ministère américain de la Santé et des Services Sociaux. Le gouvernement américain exige que tous les organismes de santé et leurs affiliés divulguent publiquement les fuites qui affectent au moins 500 personnes.
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/03/19/healthcare-breaches-casbs/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]





----
!"//You Are the Weakest Link -- Goodbye//"
[>img(300px,auto)[iCSA/close-up-of-a-broken-chain-and-a-paper-clip-on-white-background-300x151.jpg]]Publié le 14 mars 2018 -- Rédigé par Jacob Serpa, Product Marketing Manager, Bitglass
<<<
__''Vous êtes le maillon faible -- Au revoir.''__

La sécurité dans le nuage est une préoccupation majeure pour l'entreprise moderne. Heureusement, à condition que les organisations fassent preuve de diligence raisonnable lorsqu'elles évaluent les outils de sécurité, le stockage de données dans le Cloud peut être encore plus sûr que le stockage de données dans les locaux de l'entreprise. 
Cependant, cela nécessite le déploiement d'une variété de solutions pour sécuriser les données statiques, sécuriser l'accès aux données, sécuriser les appareils mobiles et non gérés, se défendre contre les logiciels malveillants, détecter les applications non autorisées dans le Cloud (shadow IT), et plus encore. Dans ce contexte d'adoption effrénée des outils de sécurité, les entreprises oublient souvent de soutenir le maillon le plus faible de leur chaîne de sécurité, leurs utilisateurs. [...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/03/14/weakest-link-goodbye/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//AWS Cloud: Proactive Security and Forensic Readiness – Part 2//"
[>img(300px,auto)[iCSA/defense-in-depth.jpg]]Publié le 13 mars 2018 -- Rédigé par Neha Thethi, Information Security Analyst, BH Consulting
<<<
__''Cloud AWS : Sécurité proactive et préparation à l'analyse forensique (2^^ème^^ partie)''__

Il s'agit du deuxième d'une série de cinq articles qui fournit une liste de contrôle pour la sécurité proactive et l'état de préparation judiciaire dans l'univers du Cloud Amazon (AWS). Cet article concerne la protection de votre infrastructure virtuelle au sein d'AWS.

La protection de toute infrastructure informatique nécessite une approche de défense en couches ou en profondeur. Les couches sont généralement divisées en couches physique, réseau (périmètrique et interne), système (ou hôte), application et données. Dans un environnement //Infrastructure as a Service// (IaaS), AWS est responsable de la sécurité "du" Cloud, y compris le périmètre physique, le matériel, le traitement logiciel, le stockage et la mise en réseau, tandis que les clients sont responsables de la sécurité "dans" le Cloud ou sur les couches au-dessus de l'hyperviseur. [...]

<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/03/13/aws-cloud-proactive-security-forensic-readiness-part-2/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

__''En compléments ;''__
* Le premier article de la série est sur : http://bhconsulting.ie/aws-cloud-proactive-security-forensic-readiness-five-part-best-practice/
* Le second article de la série est sur : http://bhconsulting.ie/infrastructure-level-protection-aws/
* La troisième partie est sur le site : http://bhconsulting.ie/data-protection-aws/

----
!"//Securing the Internet of Things: Devices & Networks//"
[>img[iCSA/weigand-wedding-300x126.jpg]]Publié le 12 mars 2018 -- Rédigé par Ranjeet Khanna, Director of Product Management–IoT/Embedded Security, Entrust Datacard
<<<
__''Sécuriser l'Internet des objets: les appareils et les réseaux''__
L'Internet des objets (IoT) est en train de changer la prodution industrielle pour le meilleur.

Avec les données provenant de milliards d'appareils connectés et de trillions de capteurs, les opérateurs de la chaîne d'approvisionnement et de la prodution industrielle profitent de nouveaux avantages. Il faut penser amélioreration de l'efficacité et flexibilité pour des modèles d'affaires potentiels. Mais comme l'IoT joue un rôle plus important dans toutes les industries, la sécurité doit être une priorité absolue. Voici un aperçu des quatre principaux défis à relever avant de réaliser les avantages d'une connectivité accrue.

__''Réduire les risques''__
Atténuer les risques ne doit pas toujours se faire aux dépens de la disponibilité et de la fiabilité. [...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/03/12/securing-internet-things-devices-networks/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//Zero-Day in the Cloud -- Say It Ain't So//"
[>img[iCSA/Businessman-hand-working-with-a-Cloud-Computing-diagram-on-t.jpg]]Publié le 9 mars 2018 -- Rédigé par Steve Armstrong, directeur régional des ventes, Bitglass
<<<
__''Des vulnérabilités //zéro-day// dans le Cloud... Dites moi que ce n'est pas vrai''__
Les vulnérabilités "//zéro day//" sont des failles de sécurité informatique ou logicielle inconnues du public, en particulier de ceux qui souhaitent combler ces failles, comme les fournisseurs de logiciels vulnérables.

Pour beaucoup de membres de la communauté de la sécurité informatique, le terme "//zéro day//" est synonyme de correctif de sécurité ou de mise à jour des systèmes. Prenons, par exemple, le monde des éditeurs de logiciels anti-programmes malveillants. Il y a ceux dont les solutions utilisent des signatures ou des codes de hachage pour se défendre contre les menaces. Leurs produits reçoivent en entrée un logiciel malveillant, l'analysent dans différents systèmes, font peut-être analyser le fichier par un humain, puis génèrent une signature. [...]
<<<

&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/03/09/zero-day-cloud-say-aint/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//Saturday Security Spotlight: Tesla, FedEx, & the White House//"
[>img[iCSA/Businessman-holding-a-newspaper-while-having-breakfast-in-hi.jpg]]Publié le 8 mars 2018 -- Rédigé par Jacob Serpa, Directeur Marketing Produit, Bitglass
<<<
__''Plein feu dominical sur la sécurité : Tesla, FedEx et la Maison-Blanche''__
Voici les principaux articles sur la cybersécurité de ces dernières semaines:
* Tesla a été piraté et utilisé pour extraire la cryptocurrence
* FedEx expose les données des clients dans une erreur de configuration AWS
* La Maison-Blanche publie un rapport sur la cybersécurité
* Le SEC classe la connaissance d'infractions non annoncées dans la catégorie des informations privilégiées.
* Plus de données d'Equifax volées que ce que l'on croyait initialement

__Tesla a été piraté et utilisé pour extraire de la cryptocurrence__
En ciblant une instance Tesla de Kubernetes, la console d'administration open-source de Google pour les applications cloud, les pirates ont pu infiltrer la société. Les attaquants ont ensuite obtenu des informations d'identification sur l'environnement AWS de Tesla, ont accédé à des informations propriétaires et ont commencé à exécuter des scripts pour générer de la cryptomonnaie en utilisant la puissance de calcul de Tesla. [...]
<<<

&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/03/08/saturday-security-spotlight-tesla-fedex-white-house/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//FedRAMP – Three Stages of Vulnerability Scanning and their Pitfalls//"
[>img[iCSA/FedRamp-300x169.jpg]]Publié le 7 mars 2018 -- Rédigé par Matt Wilgus, Responsable de l'entité, Évaluation des menaces et de la vulnérabilité, Schellman & Co.
<<<
__''FedRAMP -- Les trois étapes de l'analyse des vulnérabilités et leurs pièges''__
Bien que l'analyse des vulnérabilités ne soit qu'une des exigences de contrôle de FedRAMP, c'est en fait l'un des pièges les plus fréquents en termes d'impact sur une autorisation d'exploitation (ATO : //Authorization To Operate//), car les exigences de FedRAMP attendent des fournisseurs de services cloud (CSP : //Cloud Service provider//) qu'ils aient un programme de gestion des vulnérabilités mature. Un CSP doit avoir les personnes adaptées, les bons processus et les bonnes technologies en place et doit faire preuve de maturité pour les trois. Les CSPs qui ont plus de facilité avec les exigences d'analyse des vulnérabilités suivent une approche similaire, qui peut être mieux articulée en décomposant les attentes en trois étapes. [...]
<<<

&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/03/07/fedramp-three-stages-vulnerability-scanning-pitfalls/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//Securing the Internet of Things: Connected Cars//"
[>img[iCSA/CarSmile-300x126.jpg]]Publié le 5 mars 2018 -- Rédigé par Ranjeet Khanna, Director of Product Management–IoT/Embedded Security, Entrust DatacardDatacard
<<<
__''Sécuriser l'Internet des objets: Voitures connectées''__
Le déploiement de la sécurité et de la sûreté dans la conception automobile va bien au-delà des essais de collision.

D'ici 2022, on s'attend à ce que le marché mondial de l'Internet des Objets (IoT) dans le secteur automobile atteigne 82,79 milliards de dollars, et les constructeurs se précipitent sur cette opportunité. Bien que les calculateurs embarqués et les technologies réseaux existent depuis les années 1980, l'avènement de la connectivité ouvre un éventail de nouvelles options pour les constructeurs automobiles. De la détection avancée des collisions et des diagnostics prédictifs aux systèmes de divertissement qui chargent les mélodies préférées du conducteur dès qu'il s'assied, les voitures connectées sont prêtes à améliorer l'expérience du consommateur. [...]
<<<

&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/03/05/securing-internet-things-connected-cars/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]

----
!"//CASBs and Education’s Flight to the Cloud//"
[>img(150px,auto)[iCSA/higher_education-grey-1-300x206.jpg]]^^Bien que publié le 1er mars 2018 sur le blog de la CSA, cet article l'a déjà été le 16 février 2018 sur le blog de la société Bitglass^^
<<<
__''L'envol des CASBs et du monde de l'éducation dans le Cloud''__
Le Cloud fait de plus en plus partie intégrante des entreprises qui recherchent productivité et flexibilité. Pour l'enseignement supérieur, le Cloud permet la création de cours en ligne, la collaboration dynamique sur des documents de recherche, etc. Comme de nombreux services cloud comme la [[G Suite|https://www.bitglass.com/g-suite-security]] sont offerts gratuitement aux établissements d'enseignement, l'adoption est encore plus simple. Toutefois, dans tous les cas d'utilisation multiple en éducation, des solutions de sécurité complètes doivent être utilisées pour protéger les données où qu'elles se trouvent. [...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/03/01/casbs-educations-flight-cloud/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]] ou [[l'original|https://www.bitglass.com/blog/casbs-and-educations-flight-to-the-cloud]]



----
!"//Saturday Security Spotlight: Malware, AWS, and US Defense//"
[>img[iCSA/Businessman-holding-a-newspaper-while-having-breakfast-in-hi.jpg]]Publié le 26 février 2018 -- Rédigé par Jacob Serpa, Product Marketing Manager, Bitglass

<<<
__''Plein feu dominical sur la sécurité : Malware, AWS, et le Ministère de la Défense américain''__
Voici les principaux articles sur la cybersécurité de ces dernières semaines:
* le logiciel malveillant AndroRAT espionne les utilisateurs Android
* les Smart TV facilement piratables
* l'outil BuckHacker trouve des données non sécurisées dans les //buckets// AWS
* la divulgation de données de Octoly expose les données personnelles de stars des médias sociaux
* Les pirates russes ciblent les sous-traitants du Ministère de la Défense américain.

__le logiciel malveillant AndroRAT espionne les utilisateurs Android__
Un nouveau type de logiciel malveillant ciblant les périphériques Android donne aux pirates informatiques un contrôle étendu sur les téléphones des utilisateurs. La menace permet aux malveillants d'utiliser les microphones des appareils (pour enregistrer de l'audio), les caméras (pour prendre des photos) et les fichiers (pour voler de l'information). Cela pose bien évidemment un grand problème de confidentialité pour tous les utilisateurs d'Android du monde.
<<<

&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/02/26/saturday-security-spotlight-malware-aws-us-defense/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
----
!"//Unmanaged Device Controls, External Sharing, and Other Real CASB Use Cases//"
[>img[iCSA/hands-coffee-smartphone-technology-300x200.jpg]]Publié le 23 février 2018 -- Rédigé par Salim Hafid, Responsable Marketing Produit, Bitglass

<<<
__''Contrôles de périphériques non gérés, partage externe et autres cas d'utilisation réels du CASB''__
Beaucoup de gens dans l'industrie de la sécurité ont entendu parler des CASB (//Cloud Access Security Brokers// ou courtiers en sécurité d'accès au nuage) comme étant les solutions de référence pour la protection des données et des menaces dans le Cloud. Mais où les CASB s'intègrent ils exactement ? Si vous possédez déjà un pare-feu NGFW (//Next Generation FireWall// : Pare-Feu de Nouvelle Génération) ou peut-être une solution de type passerelle Web sécurisée, pourquoi investir dans le déploiement d'un CASB?

Ci-dessous, nous vous présentons trois des cas d'utilisation les plus courants dans le monde réel pour un courtier en sécurité d'accès au Cloud.

__Partage externe__
La plupart des applications cloud ont une forme de contrôle de partage externe intégré. Peut-être un administrateur peut-il révoquer l'accès à certains documents, définir des permissions granulaires dans toute l'organisation ou bloquer le partage dans son ensemble.
<<<

&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/02/23/unmanaged-device-controls-external-sharing-real-casb-use-cases/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
----
!"//A Home for CASB//"
[>img[iCSA/A-home-for-CASB-300x161.png]]Publié le 21 février 2018 -- Rédigé par Kyle Watson, Partner, Information Security, Cedrus

<<<
__''Un positionnement organisationnel pour les CASB''__

Au cours des 18 derniers mois, j'ai travaillé sur le CASB sous une forme ou une autre, y compris:
* des vidéos architecturales et techniques éducatives
* des demandes d'assistance pour une demande de proposition (RFP : //Request for Proposal//)
* des présentations avant-vente et des démos
* des maquettes et des Preuve des Concepts (PoC : //Proof Of Concept//)
* des mises en œuvre
* des opération de construction er des transitions

J'ai découvert des choses intéressantes en travaillant avec des fournisseurs, des clients et notre propre personnel technique de sécurité au sein de la société Cedrus. L'une d'entre elles concerne le modèle de propriété. Il n' y a pas de cartographie avec relations bi-directionnelles lorsque vous comparez les fonctionnalités de la solution CASB aux structures des organisations qui les déploient. Il semble qu'il y ait un manque de placement organisationnel, un foyer permanent lorsqu'il s'agit du CASB.
<<<

&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/02/21/a-home-for-casb/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
----
!"//Malware P.I. – Odds Are You’re Infected//"
[>img[iCSA/br-malware-pi-thumb-300x232.png]]Publié le 19 février 2018 -- Rédigé par Jacob Serpa, Responsable Marketing Produit, Bitglass

<<<
In Bitglass’ latest report, Malware P.I., the Next-Gen CASB company uncovered startling information about the rate of malware infection amongst organizations. Additionally, experiments with a new piece of zero-day malware yielded shocking results. Here is a glimpse at some of the outcomes.

Nearly half of organizations have malware in one of their cloud apps
While the cloud endows organizations with great flexibility, efficiency, and collaboration, cloud apps and personal devices accessing corporate data can inadvertantly house and spread malware. However, this does not mean that operating in the cloud is inherently more dangerous than the traditional way of doing things.
<<<

&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/02/19/malware-p-odds-youre-infected/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
----
!"//Agentless Mobile Security: No More Tradeoffs//"
[>img[iCSA/Triangle-300x173.png]]Publié le 15 février 2018 -- Rédigé par Kevin Lee, Systems QA Engineer, Bitglass

<<<
Have you ever seen a “Pick two out of three” diagram? They present three concepts and force individuals to select the one that they see as the least important. The tradeoffs between convenience, privacy, and security serve as a perfect example of a “Pick two” situation for many mobile security solutions. 

Industries have seen massive growth in the number of personal devices that touch sensitive information, resulting in a need to secure data as it is accessed by these endpoints. Various solutions have been adopted by many companies, but all tend to fall into the classic “Pick two” scenario. 
<<<

&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/02/15/agentless-mobile-security-no-tradeoffs/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
----
!"//Saturday Security Spotlight: Military, Apps, and Threats//"
[>img[iCSA/Businessman-holding-a-newspaper-while-having-breakfast-in-hi.jpg]]Publié le 12 février 2018 -- Rédigé par Jacob Serpa, Responsable Marketing, Bitglass

<<<
Here are the top cybersecurity stories of recent weeks:
* Fitness app exposes military bases
* Soldiers’ names revealed by app
* Google Play filled with fake apps
* Medical devices easily hacked
* The internet of things creates risk for the enterprise

Fitness app exposes military bases
Strava, the creators of a fitness tracking app, released heatmaps of its users’ movements. Unfortunately, this revealed the inner workings of military bases abroad by highlighting the movements of soldiers who use said app within their bases. Naturally, making this information publicly available raises questions of privacy and national security.
<<<

&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/02/12/saturday-security-spotlight-military-apps-threats/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
----
!"//Why Next-Gen Firewalls Can’t Replace CASBs//"
[>img[iCSA/Server-hallway-in-the-sky-300x200.jpg]]Publié le 7 février 2018 -- Rédigé par Joe Green, Vice President,/WW Solutions Engineering, Bitglass

<<<
A security solution is only as good as the data it protects. Some solutions focus on data protection on the corporate network, others focus entirely on cloud data, and a select few enable security at access from any network.

Next-gen firewalls (NGFWs) are the traditional solution for many organizations looking to secure their corporate networks. They are effective at what they do, securing corporate network traffic by routing everything through on-premises appliances. As corporate data begins moving outside the corporate network, as it does with cloud and mobile, the NGFW can no longer provide protection.
<<<

&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/02/07/next-gen-firewalls-cant-replace-casbs/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
----
!"//EMV Chip Cards Are Working – That’s Good and Bad//"
[>img[iCSA/emv-casb-300x134.jpg]]Publié le 2 février 2018 -- Rédigé par Rich Campagna, CEO, Bitglass

<<<
For many years, credit card companies and retailers ruled the news headlines as victims of breaches. Why? Hackers’ profit motives lead them to credit card numbers as the quickest path to monetization. Appropriate data in hand and a working counterfeit card could be cranked out in seconds and used to purchase a laptop or TV at the local Walmart -- easy to fence in the local black market.

Sick of being the target, the payment card industry got smart about fraud detection, created a set of regulatory compliance requirements (PCI-DSS) and perhaps even more importantly, rolled out EMV “chip-and-pin” technologies, which are meant to reduce counterfeit card fraud by presenting a unique cryptographic code for each transaction -- much more difficult to duplicate than the static information embedded in the magnetic stripe of older cards.
<<<

&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2018/02/02/emv-chip-cards-working-thats-good-bad/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
----
Seuls quelques articles ont été repris sur ce site pour le moment.
----
!"//AWS Cloud: Proactive Security and Forensic Readiness – Part 1//"
[>img(200px,auto)[iCSA/pexels-photo-417070-cropped1-1200x480-300x120.jpg]]Publié le 	2018 -- Rédigé par Neha Thethi, Information Security Analyst, BH Consulting

<<<
__''Part 1 – Identity and Access Management in AWS''__
//This is the first in a five-part blog series that provides a checklist for proactive security and forensic readiness in the AWS cloud environment. This post relates to identity and access management in AWS.
In a recent study by Dashlane regarding password strength, AWS was listed as an organization that supports weak password rules. However, AWS has numerous features that enable granular control for access to an account’s resources by means of the Identity and Access Management (IAM) service. IAM provides control over who can use AWS resources (authentication) and how they can use those resources (authorization).
The following list focuses on limiting access to, and use of, root account and user credentials; defining roles and responsibilities of system users; limiting automated access to AWS resources; and protecting access to data stored in storage buckets – including important data stored by services such as CloudTrail.//
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2017/12/11/aws-cloud-proactive-security-forensic-readiness-part-1/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
Lien original : http://bhconsulting.ie/identity-access-management-aws/

----
!"//AWS Cloud: Proactive Security & Forensic Readiness//"
[>img(200px,auto)[iCSA/pexels-photo-417070-cropped1-1200x480-300x120.jpg]]Publié le 1er décembre 2017 -- Rédigé par Neha Thethi, Information Security Analyst, BH Consulting

<<<
__''	''__
//This post kicks off a series examining proactive security and forensic readiness in the AWS cloud environment. 
In a time where cyber-attacks are on the rise in magnitude and frequency, being prepared during a security incident is paramount. This is especially crucial for organisations adopting the cloud for storing confidential or sensitive information.
This blog is an introduction to a five-part blog series that provides a checklist for proactive security and forensic readiness in the AWS cloud environment.
__Cyber-attack via third party services__
A number of noteworthy information security incidents and data breaches have come to light recently that involve major organisations being targeted via third-party services or vendors. Such incidents are facilitated in many ways, such as a weakness or misconfiguration in the third-party service, or more commonly, a failure to implement or enable existing security features.//
[...]
__Five-part best practice checklist__
The blog series will offer the following five-part best practice checklists, for proactive security and forensic readiness in AWS Cloud.
# Identity and Access Management in AWS
# Infrastructure Level Protection in AWS
# Data Protection in AWS
# Detective Controls in AWS
# Incident Response in AWS
[...]
<<<
&rArr; Lire [[la suite|https://blog.cloudsecurityalliance.org/2017/12/01/aws-cloud-proactive-security-forensic-readiness/]] sur le [[blog de la Cloud Security Alliance|https://blog.cloudsecurityalliance.org/]]
Lien original : http://bhconsulting.ie/aws-cloud-proactive-security-forensic-readiness-five-part-best-practice/	
Aucun article n'est repris sur ce[[ |.]]site pour le moment.

Consultez directement le blog sur le site original : https://blog.cloudsecurityalliance.org/ ou sur le flux RSS https://blog.cloudsecurityalliance.org/feed/ 
|>|>|!|
||Mise à jour hebdomadaire du blog|[[lien|Blog]]|
| !24 juillet 2018|!Annonce de la participation au Salon ''Cloud & Cyber Security'' en novembre 2018|![[lien|20180724 - Salon Cloud & Cyber Security Novembre 2018]]|
||>|+++[Détails] <<tiddler [[20180724 - Salon Cloud & Cyber Security Novembre 2018]]>> === |
| !2 juillet 2018|!Annonce du renouvellement du partenariat avec l'ISEP Formation Continue|![[lien|20180702 - ISEP Mastere Spécialisé Cloud]]|
||>|+++[Détails] <<tiddler [[20180702 - ISEP Mastere Spécialisé Cloud]]>> === |
| 12 mars 2018|Réouverture du blog|[[lien|Blog]]|
| 1^^er^^ mars 2018|Réouverture du site |[[lien|Actualités 2018]]|
|>|>|!|
[>img(500px,auto)[iCSA/DownloadCSA.jpg]]La page de téléchargement générale de tous les documents de la [[Cloud Security Alliance]] est la suivante : https://cloudsecurityalliance.org/download/

Parmi la centaine de documents publiés par la [[Cloud Security Alliance]], plusieurs font office de référence ou doivent être connus, aparmi lesquels :
# ''Security Guidance for Critical Areas of Focus in Cloud Computing'' +++[détails »]
|<<tiddler "Groupe de Travail - Security Guidance">> |
=== 

# ''Cloud Controls Matrix'' +++[détails »] |<<tiddler "Groupe de Travail - Cloud Controls Matrix">> | ===

# ''Cloud Computing Top Threats'' +++[détails »] |<<tiddler "Groupe de Travail - Top Threats">> | ===

# ''Mitigating Risk'' +++[détails »] [>img(200px,auto)[iCSA/CSA-MitigatingRisk.jpg]] ** Date : 17 août 2016 ** Page de téléchargement : https://cloudsecurityalliance.org/download/mitigatingrisk/ (après inscription) ===

# ''State of Cloud Security'' +++[détails »] |<<tiddler "Publications - Situation">> | ===

# ''Security Considerations for Private vs. Public Clouds'' +++[détails »] [>img(200px,auto)[iCSA/CSA-ConsiderationsPrivatePublicClouds.png]] ** Date : 15 juin 2015 ** Page de téléchargement : https://cloudsecurityalliance.org/download/security-considerations-for-private-vs-public-clouds/ (après inscription) ===
[img[iCSA/WG-CCM.jpg]]
La [[Cloud Security Alliance]] ''Cloud Controls Matrix'' (''CCM'') est spécialement conçue pour décliner les principes de sécurité fondamentaux afin de guider les fournisseurs d'énergie cloud et aider les clients potentiels à évaluer le risque global de sécurité d'un fournisseur d'énergie cloud.
La ''CCM'' du CSA fournit un cadre de contrôle qui permet une meilleure compréhension des concepts et des principes de sécurité qui sont alignés sur les directives de la [[Cloud Security Alliance]] dans 13 domaines.
Les fondements de la ''CCM'' reposent sur sa relation avec d'autres normes, règlements et cadres de contrôle de sécurité acceptés par l'industrie, tels que ISO 27001/27002, ISACA COBIT, PCI, NIST, Jericho Forum et NERC CIP. Elle permet ainsi de fournir une orientation de contrôle interne pour les attestations de rapports de contrôle.

En tant que cadre, la ''Cloud Controls Matrix'' fournit la structure, les détails et la clarté nécessaires en matière de sécurité de l'information adaptée à l'industrie du Cloud Computing.
La ''CCM'' :
* met particulèrement l'accent sur les exigences de contrôle de la sécurité de l'information,
* réduit et identifie les menaces et les vulnérabilités liées au Cloud Computing,
* fournit une sécurité normalisée et une gestion du risque opérationnel,
* cherche à normaliser les attentes en matière de sécurité, la taxonomie et la terminologie du Cloud Computing, et les mesures de sécurité mises en œuvre.

__Liens :__
* La page du groupe de travail ''Cloud Controls Matrix'' : https://cloudsecurityalliance.org/group/cloud-controls-matrix/
* La page de téléchargement de la ''Cloud Controls Matrix'' : https://cloudsecurityalliance.org/group/cloud-controls-matrix/#_downloads
* Le lien direct vers la version 3.0.1 de la ''Cloud Controls Matrix'' publiée le 03.10.2017 : [[CSA_CCM_v.3.0.1-09-01-2017_FINAL.xlsx|https://cloudsecurityalliance.org/download/cloud-controls-matrix-v3-0-1/]]
* Le lien direct vers la matrice inversée de la version 3.0.1 de la ''Cloud Controls Matrix'' publiée le 26.06.2018 : [[CSA_CCM_v.3.0.1-09-01-2017_FINAL.xlsx|https://cloudsecurityalliance.org/download/cloud-controls-matrix-v3-0-1/]]
* Le lien direct ver le document sur la méthodologie pour les équivalences de la ''Cloud Controls Matrix'' publiée le 9 juillet 2018 : [[Methodology for the Mapping of the Cloud Controls Matrix|https://cloudsecurityalliance.org/download/ccm-mapping-methodology/]]
[img(701px,auto)[iCSA/guidance-v4-header.jpg]]
Le document "Guide de sécurité pour les domaines critiques de l'informatique dans le Cloud Computing" (//Security Guidance for Critical Areas of Focus in Cloud Computing//) de la [[Cloud Security Alliance]] en est à quatrième version. Il a été conçu sur les versions précédentes (v1 et v2 en 2009, v3 en 2011), des actions de recherche spécifiques, la participation des membres de le Cloud Securitty Alliance, des groupes de travail et des experts de l'industrie au sein de notre communauté. Cette version intègre les avancées dans le Cloud, la sécurité et les technologies de support, réfléchit sur les pratiques réelles de sécurité dans le Cloud, intègre les derniers projets de recherche de la [[Cloud Security Alliance]] et offre des conseils pour les technologies connexes.

L'objectif de la quatrième version du guide ''Security Guidance for Critical Areas of Focus in Cloud Computing'' est à la fois de fournir des conseils et être source d'inspiration pour soutenir les objectifs métiers tout en gérant et en atténuant les risques associés à l'adoption de la technologie du Cloud Computing.

__Liens :__
* La page de présentation du document ''Security Guidance for Critical Areas of Focus in Cloud Computing''
** https://cloudsecurityalliance.org/group/security-guidance/
* La page de téléchargement du document ''Security Guidance for Critical Areas of Focus in Cloud Computing'' version 4 publié le 26.07.2017
** https://cloudsecurityalliance.org/download/security-guidance-v4/ (nécessite une inscription)
* Document "Security Guidance v4.0 ''Info Sheet''" du 26.07.''2017'' :
** https://cloudsecurityalliance.org/download/security-guidance-v4-info-sheet/
* Document "New Security Guidance for Early Adopters of the IoT" du 20.04.2015 :
** https://cloudsecurityalliance.org/download/new-security-guidance-for-early-adopters-of-the-iot/
* Document "Security Guidance for Critical Areas of Focus in Cloud Computing ''V3.0''" du 14.11.''2011'' :
** https://cloudsecurityalliance.org/download/security-guidance-for-critical-areas-of-focus-in-cloud-computing-v3/
* Document "Security Guidance for Critical Areas of Focus in Cloud Computing ''V2.0''" du 02.12.''2009'' :
** https://cloudsecurityalliance.org/download/security-guidance-for-critical-areas-of-focus-in-cloud-computing-v2-0/
* Document "Security Guidance for Critical Areas of Focus in Cloud Computing ''V1.0''" du 01.04.''2009'' :
** https://cloudsecurityalliance.org/download/security-guidance-for-critical-areas-of-focus-in-cloud-computing-v1-0/

[img(701px,auto)[iCSA/moving-domains.jpg]]
[>img(160px,auto)[iCSA/TopThreats_logo.png]]
Le groupe de travail de la [[Cloud Security Alliance]] sur les principales menaces (//Top Threats//) a pour objet fournir la vision éclairée des experts des risques, des menaces et des vulnérabilités sur la sécurité dans le Cloud.
Il s'agit de permettre une bonne compréhension de cette problématique de sécurité afin de pouvoir prendre des décisions en toute connaissance de cause, en matière de gestion des risques et de stratégies d'adoption du Cloud Computing.

Le groupe de travail a déjà publié 3 documents. Le prochain devrait être publié mi 2018.
# "//''The Notorious Nine: Cloud Computing Top Threats in 2013''//" [>img(auto,200px)[iCSA/2013-notorious-nine.jpg]]
** Publication : ''24.02.2013''
** Identification de 9 menaces critiques pour 2013 :
*** 1. Data Breaches
*** 2. Data Loss
*** 3. Account Hijacking
*** 4. Insecure APIs
*** 5. Denial of Service
*** 6. Malicious Insiders
*** 7. Abuse of Cloud Services
*** 8. Insufficient Due Diligence
*** 9. Shared Technology Issues
** __Liens :__
*** https://cloudsecurityalliance.org/download/the-notorious-nine-cloud-computing-top-threats-in-2013/
*** https://downloads.cloudsecurityalliance.org/initiatives/top_threats/The_Notorious_Nine_Cloud_Computing_Top_Threats_in_2013.pdf 

# "//''The Treacherous Twelve’ Cloud Computing Top Threats in 2016''//" [>img(auto,200px)[iCSA/2016-treacherous-twelve-top-threats.jpg]] ** Publication : ''29.02.2016'' ** Ajout de 3 nouvelles menaces critiques pour 2016 : *** 1. //Data Breaches// *** 2. Weak Identity, Credential and Access Management *** 3. //Insecure APIs// *** 4. System and Application Vulnerabilities *** 5. //Account Hijacking// *** 6. //Malicious Insiders// *** 7. Advanced Persistent Threats (APTs) *** 8. //Data Loss// *** 9. //Insufficient Due Diligence// *** 10. //Abuse// and Nefarious Use //of Cloud Services// *** 11. //Denial of Service// *** 12. //Shared Technology Issues// ** __Liens :__ *** https://cloudsecurityalliance.org/download/the-treacherous-twelve-cloud-computing-top-threats-in-2016/ *** https://downloads.cloudsecurityalliance.org/assets/research/top-threats/Treacherous-12_Cloud-Computing_Top-Threats.pdf

# "//''Top Threats to Cloud Computing Plus: Industry Insights''//" [>img(auto,200px)[iCSA/2017-top-threats-12.jpg]] ** Publication : ''20.10.2017'' ** Exemples de 21 incidents de sécurité lié au Cloud Computing, et utilisation du modèle ''STRIDE'' de Microsoft *** S → //''S''poofing identity// → Usurpation d'identité *** T → //''T''ampering with data// → Altération de données *** R → //''R''epudiation// → Répudiation *** I → //''I''nformation Disclosure// → Divulgation d'information *** D → //''D''enial of service// → Déni de service *** E → //''E''levation of privilege// → Élévation de privilèges ** __Liens :__ *** https://cloudsecurityalliance.org/download/top-threats-cloud-computing-plus-industry-insights/ *** https://downloads.cloudsecurityalliance.org/assets/research/top-threats/treacherous-12-top-threats.pdf *** Pour le modèle ''STRIDE'' : https://social.technet.microsoft.com/wiki/contents/articles/51078.comprendre-le-modele-stride-fr-fr.aspx
Les différents groupes de travail de la [[Cloud Security Alliance]] sont :

|[[Big Data|https://cloudsecurityalliance.org/group/big-data/]] |[[Blockchain/Distributed Ledger|https://cloudsecurityalliance.org/group/blockchain/]] |[[CloudAudit|https://cloudsecurityaliance.org/group/cloudaudit/]] |
|[[CloudCISC|https://cloudsecurityalliance.org/group/cloudcisc/]] |[[Cloud Component Specifications|https://cloudsecurityalliance.org/group/cloud-component-specifications/]] |![[Cloud Controls Matrix|Groupe de Travail - Cloud Controls Matrix]] +++[»] [img(350px,auto)[iCSA/WG-CCM.jpg]]=== |
|[[Cloud Data Center Security|https://cloudsecurityalliance.org/group/cloud-data-center-security/]] |[[Cloud Data Governance|https://cloudsecurityalliance.org/group/cloud-data-governance/]] |[[Cloud Security Services Management|https://cloudsecurityalliance.org/group/cloud-security-services-management/]] |
|[[CloudTrust|https://cloudsecurityalliance.org/group/cloudtrust/]] |[[CloudTrust Protocol|https://cloudsecurityalliance.org/group/cloudtrust-protocol/]] |[[Cloud Vulnerabilities|https://cloudsecurityalliance.org/group/cloud-vulnerabilities/]] |
|[[Consensus Assessments (CAI)|https://cloudsecurityalliance.org/group/consensus-assessments/]] |[[Containers and Microservices|https://cloudsecurityalliance.org/group/containerization/]] |[[Enterprise Architecture|https://cloudsecurityalliance.org/group/enterprise-architecture/]] |
|[[ERP Security|https://cloudsecurityalliance.org/group/enterprise-resource-planning/]] |[[Financial Services Stakeholder|https://cloudsecurityalliance.org/group/financial-services-stakeholder-platform/]] |[[Health Information Management|https://cloudsecurityalliance.org/group/health-information-management/]] |
|[[Incident Management and Forensics|https://cloudsecurityalliance.org/group/incident-management-and-forensics/]] |[[Innovation|https://cloudsecurityalliance.org/group/innovation/]] |[[International Standardization Council|https://cloudsecurityalliance.org/isc/]] +++[»] [img(350px,auto)[iCSA/WG-ISC.jpg]]=== |
|[[Internet of Things (IoT)|https://cloudsecurityalliance.org/group/internet-of-things/]] |[[Legal|https://cloudsecurityalliance.org/group/legal/]] |[[Mobile|https://cloudsecurityalliance.org/group/mobile/]] |
|[[Open API|https://cloudsecurityalliance.org/group/open-api/]] |[[Open Certification Framework (OCF)|https://cloudsecurityalliance.org/group/open-certification/]] |[[Privacy Level Agreement (PLA)|https://cloudsecurityalliance.org/group/privacy-level-agreement/]] |
|[[Quantum-safe Security (QSS)|https://cloudsecurityalliance.org/group/quantum-safe-security/]] |[[SaaS Governance|https://cloudsecurityalliance.org/group/saas-governance/]] |[[Security as a Service (SecaaS)|https://cloudsecurityalliance.org/group/security-as-a-service/]] |
|![[Security Guidance|Groupe de Travail - Security Guidance]]  +++[»] [img(350px,auto)[iCSA/moving-domains.jpg]]=== |[[Software Defined Perimeter (SDP)|https://cloudsecurityalliance.org/group/software-defined-perimeter/]] |[[Telecom|https://cloudsecurityalliance.org/group/telecom/]] |
|![[Top Threats|Groupe de Travail - Top Threats]] +++[»] [img[iCSA/TopThreats_logo.png]]=== |
|[[Virtualization|https://cloudsecurityalliance.org/group/virtualization/]] ||
[<img[i/nouveau.gif]] [>img(200px,auto)[i/cloud-security-alliance.png]]Très prochainement, vous pourrez retrouver ici les lettres bimestrielles du [[Chapitre Français|Présentation du Chapitre Français de la Cloud Security Alliance]] de la [[Cloud Security Alliance]].
La première à venir : ''Juillet & Août 2018''.
[>img(200px,auto)[i/cloud-security-alliance.png]]Le [[Chapitre Français|Présentation du Chapitre Français de la Cloud Security Alliance]] de la [[Cloud Security Alliance]] est une association formée pour faire la promotion des meilleures pratiques de sécurité au sein des infrastructures Cloud Computing.

Il se charge notamment :
* d'adapter certains documents de la [[Cloud Security Alliance]] aux spécificités françaises (notamment réglementaires)
* de favoriser les meilleures pratiques de sécurité auprès des fournisseurs de Cloud Public français et au sein des Entreprises qui batissent des Clouds Privés
* de publier de nouvelles recommandations de sécurité relatives au Cloud Computing
* de traduire certains documents de la [[Cloud Security Alliance]] en français
* de mener des actions pour former et évangéliser autour de la notion de la sécurité du Cloud Computing
* d'établir des relations avec des journalistes et des groupes de travail similaires autour du Cloud Computing et de la Sécurité
* de participer à tout type d'événements ou de conférences liées à la sécurité du Cloud Computing

<html><i class="fa fa-graduation-cap fa-3x" aria-hidden="true"></i></html> [>img(200px,auto)[i/ISEP-FC.jpg]]
Depuis 2012, le [[Chapitre français|CSA-FR]] de la [[Cloud Security Alliance]] a établi un partenariat en matière de formation avec l'[[ISEP Formation Continue|https://www.isep.fr/masteres-specialises/]] et assure notamment l'enseignement de la partie "Sécurité du Cloud" dans le cadre du ''Mastère Spécialisé ® [[Expertise Cloud Computing|https://formation-continue.isep.fr/cloud-computing/]]''.

Pour tout renseignement, contactez nous à l'adresse suivante : ''&#8238;rf.ecnaillaytirucesduolc@ofni&#8236;''
Le site de la [[Cloud Security Alliance]] est http://www.CloudSecurityAlliance.org
!Mastère Spécialisé® "Cloud Computing" : poursuite du partenariat avec l'ISEP Formation Continue [>img(auto,100px)[i/ISEP-FC.jpg]]
Paris, le 2 juillet 2018
Pour la 7^^ème^^ année consécuritve, le partenariat est reconduit entre l'[[ISEP Formation Continue|https://formation-continue.isep.fr/]] et la [[Cloud Security Alliance]].
Le Chapitre français de la [[Cloud Security Alliance]] assure ainsi les cours sur la sécurité du Cloud Computing, et la gestion d'un projet "sécurité du Cloud".

Planning :
* Date de début de formation : octobre 2017
* Date de fin de formation : juin 2018
* Soutenances de thèses : janvier 2019
* Remise des diplômes : mars 2019

Toutes les informations sont disponibles sur le site ISEP Formation Continue : https://formation-continue.isep.fr/cloud-computing/

__Contacts et pour recevoir la documentation et le dossier d'inscription pour ce Mastère :__
* Mme Aïcha ABDAT, Assistante administrative ISEP Formation Continue
** Téléphone : 01 49 54 52 59
** Adresse : 10, rue de Vanves, 92130 Issy-les-Moulineaux
** email : ''&#8238;rf.pesi@tadba.ahcia&#8236;''
** Web : https://formation-continue.isep.fr/cloud-computing/

__Labels & accréditations :__
* Le Mastère Spécialisé® est ''labellisé par la CGE (Conférence des Grandes Ecoles) depuis 2012''.
* Il est inscrit au ''RNCP (Registre National des Certifications Professionnelles)'' depuis janvier 2015 ; en conséquence, __il est éligible au financement par les OPCA et les Fongecif__.
** Code RNCP [[21792|http://www.rncp.cncp.gouv.fr/grand-public/visualisationFiche?format=fr&fiche=21792]]
* Il est inscrit au CPF sous le n° 145653.
** Le Mastère est donc éligible au compte personnel de formation(CPF), et peut être partiellement ou totalement financé.
* Il est inscrit au CNCP (Commission Nationale de la Certification Professionnelle). 

Contexte de l'enseignement :
* La formation s'étale sur une période de dix mois d'octobre à juin.
* Le rythme est celui de l’alternance :
** 2 jours de cours les semaines concernées : les jeudis / vendredis ou les vendredis / samedis.
** Des périodes de congés sont prévues en adéquation avec les congés scolaires.
** Elle permet de maintenir une activité professionnelle en temps partagé en parallèle.

{{floatC{
<html><i class="fa fa-graduation-cap fa-3x" aria-hidden="true"></i><i class="fa fa-graduation-cap fa-3x" aria-hidden="true"></i><i class="fa fa-graduation-cap fa-3x" aria-hidden="true"></i><i class="fa fa-graduation-cap fa-3x" aria-hidden="true"></i><i class="fa fa-graduation-cap fa-3x" aria-hidden="true"></i><i class="fa fa-graduation-cap fa-3x" aria-hidden="true"></i></html>@@color:#00F;<html><i class="fa fa-graduation-cap fa-3x" aria-hidden="true"></i></html>@@
}}}
!Salon ''Cloud & Cyber Security Paris'' les 27 et 28 novembre 2018
[>img(300px,auto)[i/CCSEP_201811.jpg][https://www.cloudexpoeurope.fr/cloud-security-alliance-newsletter-july-august-partner]]__Paris, le 24 juillet 2018.__

Le Chapitre Français de la [[Cloud Security Alliance]] annonce un partenariat avec le Salon ''Cloud & Cyber Security Paris''.

Le Salon ''Cloud & Cyber Security Paris'' est un salon réservé aux experts de la Sécurité du Cloud qui se tiendra :

{{floatC{les ''mardi 27 et mercredi 28 novembre 2018 à Paris Porte de Versailles'' (Hall 3)}}}

4 bonnes raisons de visiter le salon ''Cloud & Cyber Security Paris''
# __Rencontrer__ plus de 150 fournisseurs nationaux et internationaux.
# __Assister__ aux prises de parole de 250 experts dans un programme de conférence recouvrant l’actualité du secteur, dont des dizaines d’études de cas et des tables rondes. Des experts issus des plus grandes entreprises françaises, du secteur public, de PME et des prestataires de services viendront partager leurs expériences.
# __Consolider__ votre réseau et __construire__ des relations avec les acteurs du marché et découvrez les technologies de demain.
# __Optimiser__ votre temps et aborder tous vos objectifs technologiques en un seul lieu.
En suivant le lien ci-dessous, vous pouvez déjà obtenir votre invitation gratuite qui vous donnera accès aux évènements co-organisés ''Cloud Expo Europe Paris'' et ''Data Centre World Paris''.

__Lien d’inscription :__ https://www.cloudexpoeurope.fr/cloud-security-alliance-newsletter-july-august-partner

Le Chapitre Français de la [[Cloud Security Alliance]] fera une intervention le ''mardi 27 novembre 2018 de 15h45 à 16h10''.
!Les dernières publications notables sont les suivantes :
<<tabs Publications
"Médical" "Médical" "Publications - Médical" 
"Menaces" "Menaces" "Publications - Menaces" 
"Cloud Controls Matrix" "Cloud Controls Matrix" "Publications - Cloud Controls Matrix" 
"Cryptographie" "Cryptographie" "Publications - Cryptographie" 
"RGPD" "RGPD" "Publications - RGPD" 
"Incidents" "Incidents" "Publications - Incidents" 
"Situation 2018" "Situation 2018" "Publications - Situation" 
"Blockchain" "Blockchain" "Publications - Blockchain" 
"ERP" "ERP" "Publications - ERP" 
>>
!"Using Blockchain Technology to Secure the Internet of Things"
Publication du 13 février 2018
Lien : https://cloudsecurityalliance.org/download/using-blockchain-technology-to-secure-the-internet-of-things/ 

[img(150px,auto)[iCSA/Using_BlockChain_Technology_to_Secure_the_Internet_of_Things.png][https://cloudsecurityalliance.org/download/a-day-without-safe-cryptography/]] 

----
!"Blockchain/Distributed Ledger Working Group Glossary"
Publication du 15 décembre 2017
Lien : https://cloudsecurityalliance.org/download/blockchaindistributed-ledger-working-group-glossary/

[img(150px,auto)[iCSA/blockchain-distributed-ledger-glossary.png][https://cloudsecurityalliance.org/download/blockchaindistributed-ledger-working-group-glossary/]] 
!"Methodology for the Mapping of the Cloud Controls Matrix""
|!9 juillet 2018 |!Lien : https://cloudsecurityalliance.org/download/ccm-mapping-methodology/ |
|[img(150px,auto)[iCSA/ccm-mapping-methodology-231x300.png][https://cloudsecurityalliance.org/download/ccm-mapping-methodology/]]|<<tiddler [[20180709 - Methodology Mapping CCM]]>>|

!"Cloud Controls Matrix (CCM) v3.0.1 ISO Reverse Mapping"
|!26 juin 2018 |!Lien : https://cloudsecurityalliance.org/download/cloud-controls-matrix-v3-0-1-iso-reverse-mapping |
|[img(150px,auto)[iCSA/CCM-new.png][https://cloudsecurityalliance.org/download/cloud-controls-matrix-v3-0-1-iso-reverse-mapping]] |__''Description :''__
//This latest expansion to the CCM incorporates the ISO/IEC 27017:2015:2015 and ISO/IEC 27018:20147:2015 and ISO/IEC 27002:2013 controls, introduces a new approach to the development of the CCM, and an updated approach to incorporate new industry control standards.//
__''Lien :''__
Matrice inversée : [[https://downloads.cloudsecurityalliance.org/assets/research/cloud-controls-matrix/CCM-ISO_Reverse_Mapping_and_Gap_Analysis_FINAL.xlsx]] | ---- !"Cloud Controls Matrix (CCM) v3.0.1" |!3 octobre 2017 |!Lien : https://cloudsecurityalliance.org/download/cloud-controls-matrix-v3-0-1/ | |[img(150px,auto)[iCSA/CCM-new.png][https://cloudsecurityalliance.org/download/cloud-controls-matrix-v3-0-1/]] |//__''Description :''__
The CCM, the only meta-framework of cloud-specific security controls, mapped to leading standards, best practices and regulations. CCM provides organizations with the needed structure, detail and clarity relating to information security tailored to cloud computing. CCM is currently considered a de-facto standard for cloud security assurance and compliance.//| ---- !"Cloud Controls Matrix (CCM) v3" |!26 septembre 2013|!Lien : https://cloudsecurityalliance.org/download/cloud-controls-matrix-v3/ | |[img(150px,auto)[iCSA/CCM-new.png][https://cloudsecurityalliance.org/download/cloud-controls-matrix-v3/]] ||
!"The State of Post-Quantum Cryptography"
Publication du 23 mai 2018
Lien : https://cloudsecurityalliance.org/download/the-state-of-post-quantum-cryptography/

[img(150px,auto)[iCSA/PQC-cover2-233x300.png][https://cloudsecurityalliance.org/download/the-state-of-post-quantum-cryptography/]] 

----
!"A Day Without Safe Cryptography"
Publication du 19 avril 2018 
Lien : https://cloudsecurityalliance.org/download/a-day-without-safe-cryptography/

[img(150px,auto)[iCSA/SafeCrypto-cover-234x300.png][https://cloudsecurityalliance.org/download/a-day-without-safe-cryptography/]]
!"The State of Enterprise Resource Planning Security in the Cloud"
Publication du 7 février 2018 
Lien : https://cloudsecurityalliance.org/download/enterprise-resource-planning-security-in-the-cloud/

[img(150px,auto)[iCSA/ERP_Security_CSA.jpg][https://cloudsecurityalliance.org/download/enterprise-resource-planning-security-in-the-cloud/]] 
!"Best Practices for Cyber Incident Exchange"
|!16 avril 2018|!Lien : https://cloudsecurityalliance.org/download/best-practices-for-cyber-incident-exchange/ |
|[img(150px,auto)[iCSA/Cloud-CISC-1.png][ https://cloudsecurityalliance.org/download/best-practices-for-cyber-incident-exchange/]] |<<tiddler [[20180416 - Best Practices Cyber Incident Exchange]]>> |
__''Introduction''__
//''No organization is immune from cyber attack.'' Malicious actors collaborate with skill and agility, effectively moving from target to target at a breakneck pace. New attacks are directed at dozens of companies within the first 24 hours and hundreds within a few days.
A few years ago, visibility into the threat  environment was essential if cybersecurity was to have any hope of being preventive. Today, visibility into what is coming next is critical to simply staying alive.
Sophisticated organizations, particularly cloud providers, know that the difference between a minor incident and massive breach lies in their ability to quickly detect, contain, and mitigate an attack. As increasing their speed of response has grown into a top priority, cloud providers are increasingly participating in programs that allow them to exchange information on cyber events with others in the industry. Sometimes known as threat intelligence exchange or cyber incident exchange, these programs enable cloud providers to share cyber event information with others who may be experiencing the same issue or at risk for the same type of attack. 
There is no denying that cyber security information sharing has in the past been of somewhat limited value for security teams. While this was due in part to past legal and cultural obstacles to the free exchange of cyber threat data, the primary challenge was the manual and reactive design of legacy information sharing programs. These programs were more focused on sharing information about cyber security incidents after the threat was vetted, scrubbed and mitigated more as a public service to others than a tool to support rapid incident response. While this data served a purpose and had a place, as the speed and number of attacks increased, its value was diminished and information sharing was not widely adopted outside of a few critical infrastructure sectors. 
Fast forward to today’s security environment and the exchange of information about cyber incidents is practically unrecognizable from the information sharing programs of the past. As Security Operations Centers (SOCs) and Computer Security Incident Response Teams (CSIRTs) have matured, new tools and technologies in threat intelligence, data analytics and security incident management have created new opportunities for faster and actionable threat intelligence exchange. Incident data -- more accurately described as suspicious event data -- can now be rapidly shared and analyzed across teams, tools and even companies as part of the immediate response process. In fact, it can be said that if an organization waits to share information until they have an “incident”, they’ve waited too long. Now the focus is on sharing suspicious event data as soon as it is identified, which materially speeds remediation and provides an early and actionable warning to those not yet affected.
The positive impact of this new model for threat intelligence exchange was demonstrated during the Wannacry Crisis in May 2017. Though the first reports of infection originated in Spain on May 12, the UK and Scotland were hit far harder by the malware. This was due in large part to the Spanish Government’s incident response scheme for critical infrastructures, such as warnings from the National Cryptology Centre, which quickly identified the malware and its vectors, provided mitigation tools, and encouraged organizations to share this information. Spanish companies were able to quickly protect themselves against Wannacry even as the malware continued to spread in other countries. Threat intelligence spread by the United Kingdom’s National Cyber Security Centre (NCSC) to understand and share the best mitigation guidance provided the eventual killswitch to the Wannacry virus.
Cloud providers have a unique role to play in threat intelligence exchange because they not only own and manage a massive amount of the world’s IT infrastructure, but they also operate some of the most advanced CSIRTs/SOCs seen in the technology world. Due to this investment, they are arguably in the best position to operationalize shared intelligence to defend their systems. Further, because they can do this at scale and involve a significant part of the industry in the effort, they have a tangible opportunity to help level the playing field with malicious actors. CSA also has initiatives underway to help its members do both. 
This paper, the first in a series, provides a framework to help corporations seeking to participate in threat intelligence exchange programs that enhance their event data and incident response capabilities. It is primarily written for corporations beginning to explore, or who have already begun, the exchange of cyber security event data. It is designed to be helpful to security teams with both emerging and mature internal threat intelligence capabilities. In fact, any organization with at least one person dedicated to threat intelligence should consider participation in an exchange to enhance its own data. To this end, this paper will provide high- level practical guidance to support companies in three key areas:
• Connecting with sharing partners and exchange platforms that best meet their needs
• Identifying the capabilities and business requirements that will form the foundation for a value-driven threat intelligence exchange program
• Understanding the basics of the exchange process so they can efficiently share event data they are seeing and more efficiently operationalize any intelligence they collect
The guidance in this paper was developed by members of the Cloud Security Alliance (CSA) working group on cyber incident sharing. The work has been instrumental to the design, development, and operation of the Cloud-CISC (Cloud Cyber Incident Sharing Center), a threat intelligence exchange platform for CSA members. The recommendations are based largely on the lessons learned through the development and operation of Cloud-CISC, as well as individual experiences in managing threat intelligence programs for large companies. Some common challenges identified through this work include:
1. Organizations that struggle to understand their internal event data have difficulty determining what event data to share.
2. Even when threat intelligence is provided by others, its value is often limited because it is delivered in an email format that cannot be easily integrated into the response process.
3.  Organizations want the means to scale laterally to other sectors and vertically within their supply chains.
4. Perhaps most surprising, the motive for sharing is not necessarily helping others, but rather to provide better support for internal response capabilities.
The intent for this paper is to directly address these challenges and help establish a basic framework of key considerations for those getting started with threat intelligence exchange. 
We hope to work with others in the industry to further develop this guidance and define the associated best practices to make threat intelligence exchange a valuable resource and community for all organizations facing increasing threats from cyber attacks.//
[...]
__''Etapes suivantes :''__
''A Call to Action''
CSA believes any company that uses threat intelligence will tangibly benefit from the external exchange of threat intelligence data. No longer are companies being asked to risk their reputations, assets or customers by participating in one-way directional sharing of cyber security information with little return for them. It is time to embrace a new approach.
Because the cloud industry is already taking advantage of many advanced technologies that support threat intelligence exchange and has such a unique and large footprint across the IT infrastructure, there is a real opportunity to make threat intelligence sharing pervasive. Our commitment to the industry is to continue to provide a value-driven threat intelligence exchange for our members and support them in their efforts to participate by developing and publishing relevant guidance and best practices. While the cloud community is our first priority, we believe our efforts will serve as a model for those across the IT landscape seeking to derive value from threat intelligence exchange.
This paper is only the first in a series of planned efforts to provide that guidance and enable new users of threat intelligence exchange to benefit from the lessons learned from with those who already walked the path. We ask those across the community to provide feedback on our work to date and contribute to our ongoing effort by sharing best practices and lessons learned. 
Finally, we call on all corporate CSA members to join Cloud-CISC. Our industry cannot afford to let another year pass working in silos while malicious actors collaborate against us. It is time to level the playing field, and perhaps even gain an advantage.//
!"OWASP Secure Medical Devices Deployment Standard"
|!7 août 2018|!Lien : https://cloudsecurityalliance.org/media/press-releases/csa-owasp-issue-updated-guidance-for-secure-medical-%e2%80%a8device-deployment/ |
|[img(150px,auto)[iCSA/OWASP_Secure_Medical_Devices_Deployment_Standard_7.18.18.png][ https://cloudsecurityalliance.org/download/owasp-secure-medical-devices-deployment-standard]] |<<tiddler [[20180807 - OWASP Secure Medical Devices Deployment Standard]]>> |
__Publication d'une mise à jour du guide sur le déploiement sécurisé des dispositifs médicaux__
Ce rapport comprend des sections mises à jour sur les achats et les contrôles des mécanismes, ainsi que sur les directives de la FDA (//Food and Drug Administration// américaine).

La [[Cloud Security Alliance]] et l'''OWASP (//Open Web Application Security Project//)'' ont publié la deuxième version du document ''OWASP Secure Medical Device Deployment Standard'', mise à jour pour le déploiement sécurisé des dispositifs médicaux dans un établissement de santé.

Parmi les nombreuses améliorations, à noter : la section sur les contrôles des achats en ce qui a trait aux vérifications et à l'évaluation de la sécurité, à l'évaluation des facteurs relatifs à la vie privée et aux contrôles d'évaluation de soutien.
Selon Christopher Frenz, chef de projet de l'OWASP :
> "//Trop de dispositifs de sécurité réseau actuels ne sont toujours pas déployés dans un souci de sécurité, exposant les fournisseurs de soins de santé et leurs patients à des atteintes à la protection des données au mieux et à des conséquences négatives potentielles pour la santé au pire. Avec les logiciels de rançon et les botnets ciblant les dispositifs IoT, il est plus essentiel que jamais que les dispositifs soient développés et déployés avec la sécurité à l'esprit ", a déclaré , auteur de l'article original.//"

Selon Hillary Baron, gestionnaire du programme de recherche de la [[Cloud Security Alliance]] :
> "//La croissance des dossiers médicaux électroniques et des appareils sur réseau a permis aux fournisseurs de soins de santé d'améliorer leur niveau de service et l'efficacité avec laquelle ils fournissent des soins. Cependant, cette même interconnexion a ouvert une boîte de Pandore de questions de sécurité concernant les anciens systèmes et les appareils de soins de santé qui n'ont pas été conçus en tenant compte de la sécurité. Nous espérons que ce document fournit une feuille de route claire pour les organisations de soins de santé qui cherchent à s'assurer que les dispositifs et systèmes médicaux à travers l'organisation suivent les meilleures pratiques en matière de sécurité de l'IT.//"

Le rapport, auquel le Groupe de travail du CSA sur l'Internet des objets (IoT), a fourni des commentaires et des contributions importantes, dans des domaines tels que :
* Contrôle des achats : Vérifications/évaluations de la sécurité, évaluation des facteurs relatifs à la vie privée et soutien à l'évaluation ;
* Défenses du périmètre : Firewalls, Network Intrusion Detection/Prevention System (NIDS/NIPS), et Proxy Server/Web Filters ;
* Contrôles de sécurité du réseau : Segmentation du réseau, pare-feu interne, réseau interne IDS/IPS, serveurs syslog, surveillance des logs, analyse des vulnérabilités et dolines DNS.
* Contrôles de sécurité des appareils : Modifier les informations d'identification par défaut, verrouillage des comptes, activation du transport sécurisé, copies de rechange du firmware/logiciel, sauvegarde de la configuration des périphériques, configurations de base, cryptage du stockage, différents comptes utilisateurs, restriction de l'accès à l'interface de gestion, mécanismes de mise à jour, surveillance de la conformité et sécurité physique ;
* Sécurité de l'interface et de la station centrale : Renforcement du système d'exploitation, transport crypté et sécurité des messages - normes de sécurité HL7 v3 ;
* Tests de sécurité : Essais d'intrusion ; et
* Intervention en cas d'incident : Plan d'intervention en cas d'incident et incidents fictifs.
!"Top Threats to Cloud Computing: Deep Dive"
|!8 août 2018|!Lien : https://cloudsecurityalliance.org/download/top-threats-to-cloud-computing-deep-dive/ |
|[img(150px,auto)[iCSA/top-threats-to-cloud-computing-deep-dive.png][ https://cloudsecurityalliance.org/media/press-releases/csa-releases-top-threats-to-cloud-computing-deep-dive/]] |<<tiddler [[20180808 - Top Threats to Cloud Computing: Deep Dive]]>> |
Ce document identifie les principaux risques de sécurité dans le Cloud, et comment ils s'intègrent dans une analyse de sécurité plus poussée, en s'appuyant sur 9 cas concrêts.
Le "''Top Threats to Cloud Computing: Deep Dive''" est une étude de cas qui fournit plus de détails sur l'architecture, la conformité, les risques et les mesures d'atténuation pour chacune des menaces et vulnérabilités identifiées dans le document "''Treacherous 12 : Top Threats to Cloud Computing''" paru en 2016.

Jon-Michael C. Brook, coprésident du groupe de travail du CSA sur les menaces et directeur de la sécurité, du Cloud & Privacy at Guide Holdings a ainsi déclaré: "//Bien que ces cas concrêts aient permis aux responsables cybersécurité de mieux communiquer avec leurs dirigeants et leurs pairs, ils n'ont pas fourni assez de détails sur la façon dont tout s'articule du point de vue de l'analyse sécurité. Ce nouveau rapport aborde ces limitations et offre des détails supplémentaires et des informations réutilisables qui identifient où et comment les principales menaces s'inscrivent dans une analyse sécurité plus poussée. Il fournit également une compréhension claire de la façon dont les leçons, les mesures d'atténuation et les concepts peuvent être appliqués dans des scénarios rencontrés au quotidien.//"

Les 9 cas étudiés sont les suivants :
|!Cas|!Menaces concernées |
|LinkedIn |Data Breaches; Insufficient Identity, Credential and Access Management; Account Hijacking; Denial of Service; Shared Technology Vulnerabilities |
|MongoDB |Data Breaches; Insufficient Identity, Credential and Access Management; Insecure Interfaces and APIs; Malicious Insiders; Data Loss |
|Dirty Cow |Insufficient Identity, Credential and Access Management; System Vulnerabilities |
|Zynga |Data Breaches; Insufficient Identity, Credential and Access Management; Malicious Insiders |
|Net Traveler |Data Breaches; Advanced Persistent Threats; Data Loss |
|Yahoo! |Data Breaches; Data Loss; Insufficient Due Diligence |
|Zepto |Data Breaches; Data Loss; Abuse and Nefarious Use of Cloud Services |
|DynDNS |Insufficient Identity, Credential and Access Management; Denial of Service |
|Cloudbleed |Data Breaches; Shared Technology Vulnerabilities |
[<img(600px,auto)[iCSA/top-threats-case-study.png]]



Chacun des cas est présenté sous la forme d'un tableau de référence et d'un exposé détaillé.
Le document présente ensuite les domaines recommandés de la matrice de contrôle du Cloud ([[CCM|Groupe de Travail - Cloud Controls Matrix]]), triés selon la fréquence à laquelle les contrôles à l'intérieur des domaines sont pertinents comme contrôle d'atténuation. Les mesures d'atténuation et de contrôle applicables aux neuf cas étudiés couvrent 13 des 16 domaines de la matrice [[CCM|Groupe de Travail - Cloud Controls Matrix]].
!"GDPR Preparation and Awareness Survey Report"
Publication du 17 avril 2018
Lien : https://cloudsecurityalliance.org/download/gdpr-preparation-and-awareness-survey-report/ 

[img(150px,auto)[iCSA/GDPR_Prep-232x300.png][https://cloudsecurityalliance.org/download/gdpr-preparation-and-awareness-survey-report/]] 
!"State of Cloud Security Report" 2018
|!16 avril 2018 |!Lien : https://cloudsecurityalliance.org/download/state-of-cloud-report/ |
|[img(150px,auto)[iCSA/State_of_Cloud-2018.png][https://cloudsecurityalliance.org/download/state-of-cloud-report/]]|<<tiddler [[20180416 - State of Cloud Security Report 2018]]>>|
!"State of Cloud Security Report" 2016
|!27 février 2016 |!Lien : https://cloudsecurityalliance.org/download/state-of-cloud-security-2016 |
|[img(150px,auto)[iCSA/CSA-StateCloud2016.jpg][https://cloudsecurityalliance.org/download/state-of-cloud-security-2016/]]|<<tiddler [[20160227 - State of Cloud Security Report 2016]]>>|
/% downloads.cloudsecurityalliance.org__assets__board__CSA-GEAB-State-of-Cloud-Security-2016.pdf %/
__''Introduction''__//
Innovators and early adopters have been using cloud for years taking advantage of the quicker deployment, greater scalability, and cost saving of services. The growth of cloud computing continues to accelerate offering more solutions with added features and benefits, including security. In the age of information digitalization and innovation, enterprise users must keep pace with consumer demand and new technology solutions ensuring they can meet both baseline capabilities and security requirements.
This paper provides insights into some of the latest cloud practices and technologies enterprise information security practitioners must be aware of as IT and sensitive data extends beyond the traditional corporate perimeter. Providers, regulators, and the enterprise must cooperate to establish baseline security requirements across these services. Understanding the use of cloud and related technologies along with the roles and responsibilities of data security and ownership up front will improve the procurement and long term management of these services.
//[...]
__''Conclusion''__//
Technology is moving faster than the business’ set of skills to adopt them. As organizations react to this demand to stay competitive, secure adoption of these technologies becomes an even greater challenge. With cloud and new IT technologies, the supply chain ecosystem needs to collaborate so that large enterprises and regulators can understand how to securely adopt new technologies and new features on existing provider technologies. Each party must play a role in securing customer data and sharing best practices for secure operations.
Education and awareness still needs to improve around provider services and new technologies for the enterprise. Small-scale adoption projects need to be shared so that security challenges and patterns can be adopted to scale with the business and across industry verticals. This skills gap, particularly around cloud and newer IT technologies, needs to be met by the industry through partnership and collaboration between all parties of the cyber ecosystem.//
|[img(150px,auto)[iCSA/CSA-StateCloud2016.jpg]]|* Date : 27 février 2016 
* Page de téléchargement : https://cloudsecurityalliance.org/download/state-of-cloud-security-2016/
* Lien direct : https://downloads.cloudsecurityalliance.org/assets/board/CSA-GEAB-State-of-Cloud-Security-2016.pdf |
__''Introduction''__//
The objective of this document was to create design- and guideline-yielding repeatable mapping consistency, providing continuity for members and volunteers who seek to support the CCM framework and its activities.
This document describes the CSA CCM mapping process, which aims to fulfill four primary functions:
1. Provide clarity and transparency regarding the CSA CCM Working Group’s mapping approach, guidelines and naming conventions;
2. Encourage process review and improvement suggestions by the CSA community;
3. Yield a valuable reference for organizations—especially those seeking to benefit from and contribute to interoperable efforts by mapping their frameworks to the CCM;
4. Improve assessor criteria understanding and interpretation of all mapping processes through criteria mapping exercises.
//[...]
__''Conclusion''__//
This Methodology for the CSA CCM Mapping Project document was created to provide more clarity
on the mapping process. Subject matter included details on typical mapping strategies—such as the creation of work packages, outlining different gaps and identifying naming references—to ensure that CCM mappings are machine-readable and consistent.
This document will be published with downloadable sample work packages that can be used as a reference for future mapping projects. CSA will continue updating and improving this document as CCM matures, so please feel free to send any feedback to research-support@cloudsecurityalliance.org.//
Vous pouvez aussi consulter plusieurs autres sites de référence qui traitent de la sécurité du Cloud Computing. Vous en trouverez ci-dessous une liste ''non exhaustive''.
!NIST
<<tabs NIST 'Présentation' '' [[Webographie##NIST_Présentation]] 'SP 800' '' [[Webographie##NIST_SP800]] 'SP 1800' '' [[Webographie##NIST_SP1800]] 'SP 500' '' [[Webographie##NIST_SP500]] 'NISTR' '' [[Webographie##NIST_NISTR]] 'Divers' '' [[Webographie##NIST_Divers]]>>
/%
!NIST_Présentation
[>img(150px,auto)[i/NIST.gif]]Les publications du NIST ("//National Institute of Standards and Technology//") américain servent de référence dans de nombreux domaines dont l'informatique et la sécurité.
Elles sont toutes accessibles depuis le portail du "//Computer Security Resource Center//" du NIST : https://csrc.nist.gov/
Elles sont regroupées en au moins 5 catégories :
# les SP 800 : les "NIST Special Publication" 800-xxx
** Lien : https://csrc.nist.gov/publications/search?keywords-lg=800-
# les SP 500 : les "NIST Special Publication" 500-xxx
** Lien : https://csrc.nist.gov/publications/search?keywords-lg=500-
# les SP 1800 : les "NIST Special Publication" 1800-xxx
** Lien : https://csrc.nist.gov/publications/search?keywords-lg=1800-
# les NISTIR : les "NIST Internal Reports" 5xxx, 6xxx, 7xxx, ou 8xxx
** Lien : https://csrc.nist.gov/publications/nistir
# les FIPS : les "Federal Information Processing Standards" xxx
** Aucune ne concerne directement la sécurité du Cloud
** Lien : https://csrc.nist.gov/publications/fips

!NIST_SP800
Liste des documents SP 800 pertinents :
# ''SP 800-190 -- "Application Container Security Guide" ''
** +++[Détails »]> 
* __Date :__ 2017.09.25
* __Annonce :__ https://csrc.nist.gov/publications/detail/sp/800-190/final
=== 
** __Téléchargement :__ https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-190.pdf ou https://doi.org/10.6028/NIST.SP.800-190
# ''SP 800-180 -- "NIST Definition of Microservices, Application Containers and System Virtual Machines"''
** +++[Détails »]> 
* __Date :__ 2016.02.18
* __Lien :__ https://csrc.nist.gov/publications/detail/sp/800-180/draft
=== 
** __Téléchargement :__ https://csrc.nist.gov/CSRC/media/Publications/sp/800-180/draft/documents/sp800-180_draft.pdf
# ''SP 800-146 -- Cloud Computing Synopsis and Recommendations''
** +++[Détails »]> 
* __Date :__ 2012.05.29
* __Lien :__ http://www.nist.gov/itl/cloud-052912.cfm
=== 
** __Téléchargement :__ https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-146.pdf ou https://doi.org/10.6028/NIST.SP.800-146
# ''SP 800-145 -- The NIST Definition of Cloud Computing''
** +++[Détails »]> 
* __Date :__ 2011.09.28
* __Lien :__ https://www.nist.gov/news-events/news/2011/10/final-version-nist-cloud-computing-definition-published
=== 
** __Téléchargement :__ https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-145.pdf ou https://doi.org/10.6028/NIST.SP.800-145
# ''SP 800-144 -- Guidelines on Security and Privacy in Public Cloud Computing''
** +++[Détails »]> 
* __Date :__ 2011.12.09
* __Lien :__ https://www.nist.gov/news-events/news/2012/01/nist-issues-cloud-computing-guidelines-managing-security-and-privacy
=== 
** __Téléchargement :__ https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-144.pdf ou https://doi.org/10.6028/NIST.SP.800-144
# ''SP 800-125A -- Revision 1 (DRAFT) "Ensuring the Security of Virtualized Server Platforms Against Potential Threats''
** +++[Détails »]>
* __Date :__ 2018.04.12
* __Annonce :__ https://csrc.nist.gov/News/2018/NIST-Releases-Draft-SP-800-125A-Rev-1
<<<
//A virtualized server platform—like a physical server platform—needs to be protected against attacks from hackers who might want to steal information or take control of parts of the server. NIST is releasing a publication that addresses this issue by providing recommendations to ensure that the core software used in a virtual server, the hypervisor, remains secure against such attacks. Draft NIST Special Publication 800-125A Revision 1, Security Recommendations for Server-based Hypervisor Platforms, analyzes the potential threats to the secure execution of the functions of a hypervisor and provides a series of recommendations to provide assurance against such potential threats.
The approach taken in this publication is to identify the baseline functions that a hypervisor performs, the tasks involved in each baseline function, the potential threats to the secure execution of the task, and the countermeasures that can provide assurance against exploitation of these threats in the form of security recommendations. In addition to these security recommendations, a recommendation for ensuring the overall integrity of all components of a hypervisor platform is also provided.
The target audience for the security recommendations in this document are the Chief Security Officer (CSO) or the Chief Technology Officer (CTO) of an Enterprise IT department in a private enterprise or government agency who wants to develop a virtualization infrastructure, as well as managers of data centers who want to offer a virtualization infrastructure for hosting cloud offerings and who want to provide security assurance for that infrastructure to cloud service clients.
It has been found that to deploy virtualized servers for high performance applications (e.g., big data, analytics etc.), other forms of device virtualization besides the “emulation” approach covered in this document are required. This publication captures these additional technologies for device virtualization, such as para-virtualization, passthrough and self-virtualizing hardware devices as well as associated security recommendations. Major content changes in this publication, which is a revision of NIST SP 800-125A, Security Recommendations for Hypervisor Deployment on Servers, can be found in Sections 1.1, 2.2.2 and 5.//
<<<
=== 
** __Lien :__ https://csrc.nist.gov/publications/detail/sp/800-125a/rev-1/draft
# ''SP 800-125B -- "Security Recommendations for Deploying Hypervisors on Servers"''
** +++[Détails »]> 
* __Date :__ 2016.03.07
* __Téléchargement :__ https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-125B.pdf ou https://doi.org/10.6028/NIST.SP.800-125B
=== 
** __Lien :__ https://csrc.nist.gov/publications/detail/sp/800-125a/final
# ''SP 800-125A -- https://csrc.nist.gov/publications/detail/sp/800-125b/final''
** +++[Détails »]> 
* __Date :__ 2018.01.24
* __Annonce :__ https://csrc.nist.gov/News/2018/Security-Recommendations-for-Deploying-Hypervisors
<<<
//NIST has published Special Publication (SP) 800-125A, Security Recommendations for Hypervisor Deployment on Servers. A hypervisor is a collection of software modules that provides virtualization of hardware resources, enabling multiple computing stacks called Virtual Machines (VMs) to be run on a single physical host. 
The security recommendations in this document relate to ensuring the secure execution of baseline functions of the hypervisor, when deployed for the purpose of server virtualization (but not for other use cases such as embedded systems or desktops). Recommendations for secure configuration of a virtual network are dealt with separately in SP 800-125B.// 
<<<
* __Lien SP 800-125B :__ https://csrc.nist.gov/publications/detail/sp/800-125b/final
=== 
** __Lien :__ https://csrc.nist.gov/publications/detail/sp/800-125a/final
# ''SP 800-125 -- "Guide to Security for Full Virtualization Technologies"''
** +++[Détails »]> 
* __Date :__ 2018.01.18
* __Annonce :__ https://www.nist.gov/news-events/news/2011/02/nist-issues-final-version-full-virtualization-security-guidelines
=== 
** __Lien :__ https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-125.pdf ou https://doi.org/10.6028/NIST.SP.800-125

!NIST_SP1800
Liste des documents SP 1800 pertinents :
# ''SP 1800-19A -- "Trusted Cloud: Security Practice Guide for VMware Hybrid Cloud Infrastructure as a Service (IaaS) Environments—Volume A: Executive Summary" (Prelim. Draft 1)''
** +++[Détails »]>
* __Date :__ 2018.08.24
* __Annonce :__ https://csrc.nist.gov/publications/detail/sp/1800-19a/draft
<<<
//The National Cybersecurity Center of Excellence (NCCoE) at NIST recognizes the need to address security and privacy challenges for the use of shared cloud services in hybrid cloud architectures, and has launched this project. This project is using commercially available technologies to develop a cybersecurity reference design that can be implemented to increase security and privacy for cloud workloads on hybrid cloud platforms.
This project will demonstrate how the implementation and use of trusted compute pools not only will provide assurance that workloads in the cloud are running on trusted hardware and are in a trusted geolocation, but also will improve the protections for the data within workloads and flowing between workloads. This project will result in a NIST Cybersecurity Practice Guide - a publicly available description of the solution and practical steps needed to implement a cybersecurity reference design that addresses this challenge.// === 
<<<
=== 
* __Lien :__ https://www.nccoe.nist.gov/sites/default/files/library/sp1800/tc-hybrid-sp1800-19a-preliminary-draft.pdf
# ''SP 1800-4 -- "Mobile Device Security: Cloud and Hybrid Builds"''
** +++[Détails »]>
* __Date :__ 2015.11.02
* __Annonce :__ https://www.nist.gov/news-events/news/2015/11/nist-invites-comments-practice-guide-improving-mobile-device-security
=== 
** __Téléchargement :__ https://nccoe.nist.gov/projects/building_blocks/mobile_device_security

!NIST_SP500
Liste des documents SP 500 pertinents :
# ''SP 500-325 -- Fog Computing Conceptual Model''
** +++[Détails »]>
* __Date :__ 2018.03.19
* __Annonce :__ "NIST Releases Report on Fog Computing for Internet of Things Devices "
<<<
//An increasing number of people and organizations are using smart, interconnected devices, which form the so-called Internet of Things (IoT). This increase is fueled by the proliferation of mobile devices, smart sensors used to power electric grids, self-driving cars, and fitness trackers, and wireless sensors. All of these products are generating and accessing a growing amount of data that needs to be accessed more quickly and locally.
Until recently, much of this data has been managed and stored through cloud computing, a centralized network of computers and servers connected together over the Internet. But access to data through the cloud can be slow at times, because the data needs to be transported to the cloud for processing, analysis and storage.
An alternative to cloud computing is fog computing, a decentralized infrastructure in which data is accessed locally, which significantly reduces the amount of time it takes to access the data. In addition to fog computing, other concepts have been developed as alternatives to cloud computing, called mist computing, cloudlets, and edge computing. But no consensus exists on the distinction among these concepts. So NIST is releasing Special Publication 500-325, Fog Computing Conceptual Model, a report that presents the conceptual models of fog and mist computing and how they relate to cloud-based computing models for IoT.
The report not only provides the conceptual models of fog computing and its subsidiary mist computing, but it also introduces the notion of a fog node and the nodes federation model, which is composed of both distributed and centralized clusters of fog nodes operating in harmony. The report is intended to serve as a means for broad comparisons of fog computing capabilities, service models, and deployment strategies, and to provide a baseline for discussion of what fog computing is and how it may be used.// 
<<<
* __Lien :__ https://csrc.nist.gov/News/2018/Fog-Computing-for-Internet-of-Things-Devices
=== 
** __Lien :__ https://csrc.nist.gov/publications/detail/sp/500-325/final
#  ''SP 500-299 (DRAFT) -- NIST Cloud Computing Security Reference Architecture''
** +++[Détails »]>
* __Date :__ 2013.05
*__Synthèse :__
<<<
//The purpose of this document is to define a NIST Cloud Computing Security Reference Architecture (NCC-SRA) -- a framework that:
## identifies a core set of Security Components that can be implemented in a Cloud Ecosystem to secure the environment, the operations, and the data migrated to the cloud;
## provides, for each Cloud Actor, the core set of Security Components that fall under their responsibilities depending on the deployment and service models;
## defines a security-centric formal architectural model that adds a security layer to the current NIST SP 500-292, "NIST Cloud Computing Reference Architecture";
## provides several approaches for analyzing the collected and aggregated data.
//
<<<
* __Lien :__ https://csrc.nist.gov/publications/detail/sp/500-299/draft
=== 
** __Téléchargement :__ http://collaborate.nist.gov/twiki-cloud-computing/pub/CloudComputing/CloudSecurity/NIST_Security_Reference_Architecture_2013.05.15_v1.0.pdf

!NIST_NISTR
Liste des documents NISTR pertinents :
# ''NISTIR 8176 -- Security Assurance Requirements for Linux Application Container Deployments''
** +++[Détails »]>
* __Date :__ 2017.10.12
* __Annonce :__ https://csrc.nist.gov/News/2017/NIST-Releases-NISTIR-8176
<<<
//Application containers are now slowly finding adoption in production environments due to agile deployment process, efficient resource utilization and availability of automation tools. At the same time, to ensure secure deployment, security guidelines and countermeasures have been proposed (Application Container Security Guide, NIST Special Publication 800-190) to cover various components of a container environment such as: Hardware, Host Operating System (OS), Container Runtime, Image, Registry and Orchestrator.
To carry out these recommendations in the form of countermeasures, one or more security solutions are needed with defined metrics in the form of security assurance requirements. Linux (and its various distributions) being open-source and being the predominant host OS in the deployed container platforms, has sufficient reservoir of information to analyze the security impact of its various configuration options. The focus of this document is to derive the security assurance requirements for various security solutions for application containers hosted on Linux. The target audience includes system security architects and administrators who are responsible for the actual design and deployment of security solutions in enterprise infrastructures hosting containerized hosts.//
<<<
* __Lien :__ https://csrc.nist.gov/publications/detail/nistir/8176/final
=== 
** __Téléchargement :__ https://nvlpubs.nist.gov/nistpubs/ir/2017/NIST.IR.8176.pdf ou https://doi.org/10.6028/NIST.IR.8176
# ''NISTIR 8006 -- NIST Cloud Computing Forensic Science Challenges''
** +++[Détails »]>
* __Date :__ 2014.06.23
* __Annonce :__ https://csrc.nist.gov/publications/detail/nistir/8006/draft
<<<
//This document summarizes the research performed by the members of the NIST Cloud Computing Forensic Science Working Group, and aggregates, categorizes and discusses the forensics challenges faced by experts when responding to incidents that have occurred in a cloud-computing ecosystem. The challenges are presented along with the associated literature that references them. The immediate goal of the document is to begin a dialogue on forensic science concerns in cloud computing ecosystems. The long-term goal of this effort is to gain a deeper understanding of those concerns (challenges) and to identify technologies and standards that can mitigate them.//
<<<
* __Synthèse :__
<<<
//This document summarizes the research performed by the members of the NIST Cloud Computing Forensic Science Working Group, and aggregates, categorizes and discusses the forensics challenges faced by experts when responding to incidents that have occurred in a cloud-computing ecosystem. The challenges are presented along with the associated literature that references them. The immediate goal of the document is to begin a dialogue on forensic science concerns in cloud computing ecosystems. The long-term goal of this effort is to gain a deeper understanding of those concerns (challenges) and to identify technologies and standards that can mitigate them.// === 
<<<
=== 
** __Téléchargement :__ https://csrc.nist.gov/CSRC/media/Publications/nistir/8006/draft/documents/draft_nistir_8006.pdf
# ''NISTIR 7956 -- Cryptographic Key Management Issues & Challenges in Cloud Services''
** +++[Détails »]>
* __Date :__ 2013.09.18
* __Synthèse :__
<<<
//To interact with various services in the cloud and to store the data generated/processed by those services, several security capabilities are required. Based on a core set of features in the three common cloud services - Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Software as a Service (SaaS), we identify a set of security capabilities needed to exercise those features and the cryptographic operations they entail. An analysis of the common state of practice of the cryptographic operations that provide those security capabilities reveals that the management of cryptographic keys takes on an additional complexity in cloud environments compared to enterprise IT environments due to: (a) difference in ownership (between cloud Consumers and cloud Providers) and (b) control of infrastructures on which both the Key Management System (KMS) and protected resources are located. This document identifies the cryptographic key management challenges in the context of architectural solutions that are commonly deployed to perform those cryptographic operations.//
<<<
* __Lien :__ https://csrc.nist.gov/publications/detail/nistir/7956/final
=== 
** __Téléchargement :__ https://nvlpubs.nist.gov/nistpubs/ir/2013/NIST.IR.7956.pdf ou https://doi.org/10.6028/NIST.IR.7956
# ''NISTIR 7904 -- Trusted Geolocation in the Cloud: Proof of Concept Implementation''
** +++[Détails »]>
* __Date :__ 2015.12.10
* __Synthèse :__
<<<
//This publication explains selected security challenges involving Infrastructure as a Service (IaaS) cloud computing technologies and geolocation. It then describes a proof of concept implementation that was designed to address those challenges. The publication provides sufficient details about the proof of concept implementation so that organizations can reproduce it if desired. The publication is intended to be a blueprint or template that can be used by the general security community to validate and implement the described proof of concept implementation. //
<<<
* __Auteurs :__ Michael Bartock (NIST), Murugiah Souppaya (NIST), Raghuram Yeluri (Intel), Uttam Shetty (Intel), James Greene (Intel), Steve Orrin (Intel), Hemma Prafullchandra (HyTrust), John McLeese (HyTrust), Karen Scarfone (Scarfone Cybersecurity)
* __Lien :__ https://csrc.nist.gov/publications/detail/nistir/7904/final
=== 
** __Téléchargement :__ https://nvlpubs.nist.gov/nistpubs/ir/2015/NIST.IR.7904.pdf ou https://doi.org/10.6028/NIST.IR.7904

!NIST_Divers
Dans cette rubrique, d'autres nouvelles ou publications dans le contexte du NIST
# ''Présentation "Modeling and Mitigating the Insider Threat of Remote Administrators in Clouds"''
** +++[Détails »]
* __Date :__  2018.07.10
* __Synthèse :__ 
<<<
//As today’s cloud providers strive to attract customers with better services and less downtime in a highly competitive market, they increasingly rely on remote administrators including those from third party providers for fulfilling regular maintenance tasks. In such a scenario, the privileges granted for remote administrators to complete their assigned tasks may allow an attacker with stolen credentials of an administrator, or a dishonest remote administrator, to pose severe insider threats to both the cloud tenants and provider. In this paper, we take the first step towards understanding and mitigating such a threat. Specifically, we model the maintenance task assignments and their corresponding security impact due to privilege escalation. We then mitigate such impact through optimizing the task assignments with respect to given constraints. The simulation results demonstrate the effectiveness of our solution in various situations.//
<<<
* __Auteurs :__ Nawaf Alhebaishi (Concordia University), Lingyu Wang (Concordia University), Sushil Jajodia (George Mason University), and Anoop Singhal (NIST)
* __Lien :__ https://csrc.nist.gov/publications/detail/conference-paper/2018/07/10/insider-threat-of-remote-administrators-in-clouds
=== 
** __Téléchargement :__ https://ws680.nist.gov/publication/get_pdf.cfm?pub_id=925918

!end
%/
!ENISA
<<tabs ENISA 'ENISA_Présentation' '' [[Webographie##ENISA_Présentation]] 'Divers' '' [[Webographie##ENISA_Divers]]>>
/%
!ENISA_Présentation
L'ENISA a publié plusieurs documents de fond sur le Cloud Computing depuis 2009.[>img(150px,auto)[i/ENISA.png]]





!ENISA_Divers # ''"New Schemes on the Cloud Certification List"'' ** +++[Détails »] * __Date :__ 2014.12 === ** __Téléchargement :__ http://www.enisa.europa.eu/media/news-items/new-schemes-on-the-cloud-certification-list-1 # ''"ENISA Cloud Certification Schemes Metaframework"'' ** +++[Détails »] * __Date :__ 2015.01 === ** __Téléchargement :__ https://www.enisa.europa.eu/media/press-releases/enisa-cloud-certification-schemes-metaframework # ''"Procure Secure: A guide to monitoring of security service levels in cloud contracts''" ** __Téléchargement :__ http://www.enisa.europa.eu/activities/Resilience-and-CIIP/cloud-computing/procure-secure-a-guide-to-monitoring-of-security-service-levels-in-cloud-contracts/ # ''"Exploring Cloud Incidents''" ** +++[Détails »] * __Date :__ document réalisé en 2014, et publié en 2016 === ** __Téléchargement :__ http://www.enisa.europa.eu/publications/exploring-cloud-incidents # ''"Cloud Computing: Benefits, risks and recommendations for information security"'' ** +++[Détails »] * __Date :__ 2009.11 * __Annonce :__ http://www.enisa.europa.eu/activities/risk-management/files/deliverables/cloud-computing-risk-assessment/ <<< //ENISA, supported by a group of subject matter expert comprising representatives from Industries, Academia and Governmental Organizations, has conducted, in the context of the Emerging and Future Risk Framework project, an risks assessment on cloud computing business model and technologies. The result is an in-depth and independent analysis that outlines some of the information security benefits and key security risks of cloud computing. The report provide also a set of practical recommendations.Produced by ENISA with contributions from a group of subject matter expert comprising representatives from Industry, Academia and Governmental Organizations, a risk assessment of cloud computing business model and technologies. This is an in-depth and independent analysis that outlines some of the information security benefits and key security risks of cloud computing. The report provide also a set of practical recommendations. It is produced in the context of the Emerging and Future Risk Framework project.// <<< === ** __Téléchargement :__ https://www.enisa.europa.eu/activities/risk-management/files/deliverables/cloud-computing-risk-assessment !end %/