You are here

Feed aggregator

Sicherer Betrieb von SharePoint Server 2013 - Logische Absicherung

MSDN Blogs - Tue, 11/18/2014 - 04:51

Die Logische Absicherung des SharePoint Dienstes definiert alle Prozesse und Rollen, die für den sicheren Betrieb einer SharePoint Umgebung zu empfehlen sind. In diesem Kapitel werden die wichtigsten Prozesse beschrieben und Empfehlungen getroffen wie man sie umsetzen sollte.

Diese Beitrag ist Teil einer Reihe von mehreren Blogbeiträgen zu diesem Thema:

Einleitung: Sicherer Betrieb von SharePoint Server 2013

Teil 1: Logische Absicherung

Teil 2: Physische Absicherung

1.1 Protokollierung aller Zugriffe, inklusive Zugriffe durch den Administrator

In einer sicheren SharePoint Umgebung sollten alle Zugriffe auf Daten und Änderungen der Farmkonfiguration protokolliert werden und diese Protokolle regelmäßig analysiert werden um mögliche Angriffsversuche frühzeitig erkennen zu können.

Die Zugriffe auf im SharePoint gespeicherte Daten lassen sich durch die Auditing Funktionen im SharePoint protokolieren und in Form eines Audit Logs auswerten. Eine detaillierte Beschreibung dieses Features finden Sie unter http://office.microsoft.com/en-001/sharepoint-help/configure-audit-settings-for-a-site-collection-HA102866204.aspx.

Änderungen an der Farmkonfiguration und administrative Zugriffe über die Zentraladministration oder PowerShell werden vom SharePoint nicht direkt protokolliert. Es werden zwar Einträge im ULS Log generiert, für eine bessere Überwachung kann man aber auf Werkzeuge von Drittherstellern zugreifen.

Änderungen im SQL Server Backend werden standardmäßig im SQL Server Error Log und dem Default Trace protokolliert. Um eine weitergehende Überwachung zu erhalten, sollte auf den eingebauten Audit Mechanismus vom SQL Server zurückgegriffen werden. Mit Hilfe von diesem Mechanismus kann man eine sehr weitreichende Protokollierung einrichten. Weitere Informationen hierzu finden Sie unter: SQL Server Audit (http://msdn.microsoft.com/en-us/library/cc280386.aspx). Der Audit Mechanismus sollte zumindest für Systeme mit High Business Impact Daten genutzt werden.

1.2 Zeitlich beschränkte ("Just In Time") Vergabe von administrativen Berechtigungen

Im regulären Betrieb sollte niemand auf die SharePoint Farm, die Konfiguration oder die Daten mit administrativen Rechten zugreifen dürfen. Der administrative Zugriff sollte über einen Genehmigungsprozess nur bei Bedarf (z.B. Installation eines Patches, Troubleshooting usw.) und nur für eine kurze Zeit vergeben werden.

Dieser Genehmigungsprozess sollte wie folgt aufgebaut werden:

  • Die Genehmigung für weniger kritische administrative Vorgänge (z.B. die Analyse von ULS Logs) kann automatisch erteilt werden.
  • Bei kritischen Vorgängen, oder wenn der Administrator auf die Kundendaten im SharePoint zugreifen muss, sollte der Zugriff nach dem vier Augen Prinzip von mindestens einer anderen Person genehmigt werden.
  • Alle Zugriffsanforderungen und Genehmigungen sollten sicher protokolliert werden, und die Protokolle sollten regelmäßig oder automatisiert nach Anomalien untersucht werden (z.B. auffällig viele Zugriffsanforderungen von dem selben Administrator).
  • Für den Zugriff auf die Farmkonfigurationsdaten sollten Skripte entwickelt werden, die einem Administrator eine minimale Angriffsfläche anbieten. Zum Beispiel, anstatt dem Administrator den Zugriff auf den ULS Log Ordner zu geben, sollte ein PowerShell Skript entwickelt werden, das dem Administrator die letzte ULS Datei liefert, ohne dass er sich interaktiv auf dem Log Rechner anmelden muss.
  • Jeder administrative Zugriff sollte im Umfang und zeitlich beschränkt sein. Die administrative Session sollte nach Ablauf der vordefinierten Zeit automatisch abgebrochen werden. Für den erneuten Zugriff ist dann eine neue Genehmigung notwendig. Dieser Prozess lässt sich z.B. über die automatische Passwortänderung im AD realisieren.
  • Um die Anzahl der administrativen Zugriffe zu minimieren, sollen im normalen Betrieb alle relevanten Betriebsdaten und Parameter (ULS Logs, Performance Counter) - ohne die Notwendigkeit sich administrativ in der Farm anzumelden - über ein Dashboard sichtbar gemacht werden. Dafür eignet sich z.B. der System Center 2012 R2 (http://www.microsoft.com/en-us/server-cloud/products/system-center-2012-r2) mit dem Management Pack für SharePoint 2013 (http://www.microsoft.com/en-us/download/details.aspx?id=35590)
  • Im SQL Server Backend sollte man die administrativen Berechtigungen immer dann zeitlich begrenzen, wenn dies möglich ist. Darunter fällt auch die nur vorrübergehend notwendige Mitgliedschaft des SharePoint System Account in der Gruppe der lokalen Administratoren bei der Einrichtung einer Reporting Services Service Application.

 

1.3 Höchstmögliche Automatisierung

Um menschliche Fehler zu minimieren, sollten alle technischen Aufgaben im SharePoint Betrieb mittels PowerShell Skripting automatisiert werden. Alle Änderungen im SQL Server sollten per T-SQL Skripte oder - wo es möglich ist - per PowerShell umgesetzt werden und dokumentiert werden. Für die Änderungen bei den Analysis Services (PowerPivot Engine) und den Reporting Services (SharePoint Modus) gilt die Vorgabe wie für die übrige SharePoint Komponenten, da auch hier die Konfiguration mittels PowerShell durchgeführt werden kann.

Damit wird sichergestellt, dass alle Prozesse und Vorgänge reproduzierbar und nachvollziehbar ausgeführt werden können. Gleichzeitig wird die Notwendigkeit für manuelle Zugriffe auf die SharePoint Farm und die Daten minimiert.

1.4 Change Management

Alle Änderungen an der Farmkonfiguration und an allen beteiligten Soft- oder Hardwarekomponenten (inklusive Drittherstellerprodukten, Betriebssystem, Hardwaretreiber…) sollten getestet, genehmigt und protokolliert werden bevor sie in der Farm umgesetzt werden dürfen.

1.5 Datenklassifizierung und Informationsarchitektur

In einer SharePoint Farm entstehen mit der Zeit große Datenmengen mit unterschiedlichen Sicherheitsmerkmalen. Dabei beinhalten viele Daten in der Regel keine geheimen oder geschäftskritischen Informationen, und müssen nicht durch dieselben Sicherheitsmechanismen geschützt werden wie die hochsensiblen Daten.

Die Daten sollten deswegen in folgende Kategorien untergeteilt werden:

  • Low Business Impact (LBI): Geeignet für wenig oder nicht sensible Daten. Diese Kategorie passt zu den meisten Abteilungsteamseiten mit Teamkalendern, Besprechungsseiten, Teamfotos usw. Auch die persönlichen OneDrive Seiten gehören in der Regel in diese Kategorie.
  • Medium Business Impact (MBI): Trifft bei den Daten zu, die zum Teil geheim sind und nur firmenintern verwendet werden dürfen. Diese Daten werden jedoch in der Regel durch die SharePoint Suche indiziert und stehen auch über die Suche allen berechtigten Benutzern ohne weitere Genehmigung zur Verfügung.
  • High Business Impact (HBI): Geeignet für streng geheime oder geschäftskritische Daten und Daten mit persönlichen Kunden- oder Mitarbeiterdaten. Diese Daten werden häufig aus der Suche ausgeschlossen und stehen nur einer kleinen Benutzergruppe zur Verfügung. Der Zugriff auf diese Daten wird durch zwei-Wege Authentifizierung oder Smartcards zusätzlich geschützt.

Diese Einteilung ist vergleichbar mit den Schutzbedarfskategorien "normal", "hoch" und "sehr hoch", wie sie im IT-Grundschutz durch das Bundesamt für Sicherheit in der Informationstechnik (BSI) definiert sind. Siehe hierzu Kapitel 4.3 der IT-Grundschutz-Vorgehensweise (BSI-Standard 100-2) (https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Publikationen/ITGrundschutzstandards/standard_1002_pdf.pdf?__blob=publicationFile).

Um zwischen der Sicherheit und den Betriebskosten eine Balance zu schaffen, sollte man die Daten in diesen drei Kategorien physikalisch trennen und für jede Datenklasse ein eigenes Betriebs- und Sicherheitskonzept ausarbeiten. Damit die Daten getrennt gespeichert werden, empfehlen wir einen Seitenanlageprozess zu etablieren, über welchen neue SharePoint Seiten automatisiert und nach einer Genehmigung angelegt werden. Dieser Prozess sieht in der Regel die folgenden Schritte vor:

  1. Ein Benutzer erstellt einen Antrag für eine neue SharePoint Webseitensammlung (Site Collection). Dafür sollte ein Webportal entwickelt werden wo solche Anträge gestellt werden können.
  2. In dem Antrag muss der Benutzer die Datenklasse für seine neue Webseitensammlung angeben (siehe oben) und die Personen nennen, die als Besitzer (Site Owner) für die neue Webseite eingetragen werden.
  3. Bevor die Webseitensammlung erstellt wird, muss diese genehmigt werden. Die Genehmigung kann - je nach Datenklasse - entweder vollautomatisiert oder über mehrere manuelle Genehmigungsschritte erteilt werden. Dieser Prozess kann entweder als ein SharePoint oder ein BizTalk Workflow technisch realisiert werden.
  4. Nach einer erfolgreichen Genehmigung wird die neue Webseitensammlung automatisch erstellt. Je nach Datenklasse wird diese Webseitensammlung in der entsprechenden Datenbank, Webanwendung und/oder Farm erstellt und es werden die notwendigen SharePoint Features (de)aktiviert. Bei hochsicheren Seiten soll z.B. verhindert werden, dass die Listen und Dokumentenbibliotheken durch die Suche indiziert werden.
  5. Der Antragssteller wird entsprechend der Datenklasse in der neuen Seite berechtigt. Bei den unkritischen Seiten kann er die Site Owner Rechte bekommen, bei den hochsicheren Seiten soll er nur die Member Rechte haben, um jegliche Änderungen an der Seitenkonfiguration durch den Benutzer zu verhindern. Es ist auch möglich eigene Berechtigungsstufen zu definieren und einzusetzen.

Grundsätzlich sollten alle Dokumente, die in dem hochsicheren Bereich verwaltet werden, zusätzlich durch den Rights Management Server (RMS) geschützt werden. Dabei werden die Dokumente verschlüsselt, und der Zugriff auf die Inhalte wird nur einem kontrollierten Personenkreis gestattet, auch wenn das Dokument außerhalb vom SharePoint geöffnet wird. Mehr über den Einsatz vom Rights Management Server im SharePoint finden Sie unter http://blogs.office.com/2013/09/10/collaborate-confidently-using-rights-management.

SharePoint verfügt über keine eingebauten Mechanismen, die es verhindern können, aus fachlicher Sicht hochsensible Daten bspw. in "Low Business Impact" Seiten zu speichern. Durch die Benutzerschulung und regelmäßige Audits kann das Risiko jedoch minimiert werden.

Beim Löschen einer Webseitensammlung sollte ein ähnlicher Genehmigungsprozess etabliert werden. Die Benutzer sollen nicht in der Lage sein eine Webseitensammlung eigenmächtig zu löschen. Wenn das Löschen einer Webseitensammlung genehmigt wurde, sollte diese aus der Content Datenbank restlos entfernt werden. Nach dem Löschen einer Webseitensammlung bleibt diese vorerst 30 Tage in der Content Datenbank und kann wiederhergestellt werden. Verwenden Sie das Remove-SPDeletedSite PowerShell Kommando, um eine gelöschte Webseitensammlung aus der Content Datenbank vollständig zu löschen.

1.6 Regelmäßiges Testen

Die Art und Weise, wie die Angriffe auf die IT Systeme getätigt werden, ändert sich dauernd. Deswegen müssen alle sicherheitsrelevanten Prozesse ständig weiterentwickelt und überprüft werden. Das gelingt bspw. durch regelmäßige Sicherheitsaudits von unabhängigen zertifizierten Unternehmen oder auch Tool basierte Angriffssimulationen wie Lasttests, um einen Denial-of-Service (DoS) Angriff zu simulieren.

1.7 Sicherheitsstrategie bei der Entwicklung von SharePoint Erweiterungen

Eigenentwickelte oder durch einen externen Partner entwickelte SharePoint Erweiterungen (Apps oder "Full Trust Solutions") bringen potenziell eine zusätzliche Gefahr in das System. Generell sollte die Anzahl solcher Erweiterungen minimiert werden, und in hochsicheren Datenbereichen sollten keine Erweiterungen erlaubt werden.

Beim Umgang mit eigenentwickelten Erweiterungen sollten die folgenden Teilprozesse etabliert werden:

  • Code Reviews: Der Quellcode von allen eigenentwickelten oder zugekauften Erweiterungen sollte zuerst überprüft werden bevor er in der Farm installiert wird. Der Quellcode sollte nach bekannten Sicherheitslücken durchsucht werden, und - nur wenn keine sicherheits- oder leistungsrelevanten Probleme gefunden wurden - in der Farm installiert werden. Dasselbe gilt für alle Updates.
  • Verwendung von Security Development Lifecycle (SDL): "Security Development Lifecycle" ist eine Sammlung von Best Practices, Regeln, Prozessen und Werkzeugen für die Entwicklung von Anwendungen nach den höchsten IT Sicherheitsstandards. Alle eigenentwickelte Anwendungen sollten unbedingt diesem Prozess folgen und bei der Auswahl von externen Partner sollte darauf geachtet werden, dass alle externen Entwickler diesen Prozess verstehen und verwenden. Die Details zum SDL Prozess finden Sie unter http://www.microsoft.com/security/sdl/default.aspx.
  • Entwicklerrichtlinien: Alle generischen und kunden- oder projektspezifischen Richtlinien für die Entwicklung von SharePoint Erweiterungen sollten in einem formellen Dokument erfasst werden. Diese Regeln sollten für alle Entwickler bindend sein. Durch die Team Foundation Server (TFS) Check-In Regeln können viele Richtlinien automatisiert überprüft werden. Somit kann sehr früh in der Entwicklungsphase verhindert werden, dass unsicherer Quellcode in die Produktion kommt.
  • Testing: Softwaretesting ist eine der wichtigsten Maßnahmen, um alle Arten von Fehler frühzeitig zu entdecken und zu beheben. Neben den klassischen Code Unit Tests, kommen noch Lasttests, Coded UI Tests und Penetration Tests zum Einsatz. Diese Tests sollten als Teil der Qualitätssicherung etabliert werden und nach jeder Änderung im Quellcode wiederholt werden.

Tipp

Microsoft Premier Services for Developers (PSfD) hat jahrelange Erfahrung in diesem Bereich und kann beim Aufbau dieses Prozesses in allen Phasen qualifiziert unterstützen.

1.8 Einsatz von Drittherstellerlösungen

Der Einsatz von Drittherstellersoftware in einer SharePoint Farm sollte gesondert genehmigt und bewertet werden. Nur die Produkte, die vorher geprüft, getestet und freigegeben wurden, sollten installiert werden dürfen. Generell soll so wenig wie möglich Drittherstellersoftware in einer SharePoint Farm installiert werden und in hochsicheren Datenbereichen sollten möglichst Drittherstellerlösungen nur nach einer intensiven Prüfung installiert werden.

Die Drittherstellerprodukte sollten regelmäßig aktualisiert werden, und alle sicherheitsrelevanten Updates oder Fehlerkorrekturen sollten schnellstmöglich, nachdem sie vom Hersteller zur Verfügung gestellt wurden, eingespielt werden. Es sollte klar definiert werden, wer für die Wartung von jedem Drittherstellerprodukt, das in der Farm verwendet wird, verantwortlich ist.

Verwenden sie AppLocker auf allen Rechnern in der Farm und auf allen Klienten um die Installation von unerlaubter Fremdsoftware zu verhindern. Mehr über den AppLocker finden Sie unter http://technet.microsoft.com/library/hh831409.aspx.

1.9 Umgang mit dem Office Store und SharePoint Apps

Ein neues Feature von SharePoint 2013 sind die SharePoint Apps. SharePoint Apps können über den offiziellen Microsoft Office App Store und über den firmeninternen App Catalog vom Site Owner auf seiner Webseite installiert und deinstalliert werden. Jede App fragt bei der Installation nach den Berechtigungen, die sie zur Laufzeit benötigt. Erst wenn der Site Owner diese Anfrage bestätigt, wird die App installiert. Die SharePoint Apps haben viele Vorteile gegenüber klassischen "Full Trust" Farm Lösungen:

  • Die Apps laufen außerhalb vom SharePoint, und Fehler oder Abstürze in einer App haben keinen Einfluss mehr auf den SharePoint Prozess.
  • Der IIS muss nicht neu gestartet werden, wenn eine App installiert oder deinstalliert wird.
  • Da die Apps außerhalb vom SharePoint laufen, verhindern oder erschweren sie nicht mehr die Migration vom SharePoint auf eine neue Version.
  • Die Kommunikation zwischen einer App und SharePoint findet ausschließlich über http(s) statt.
  • Es werden keine Fremdkomponenten oder Dateien mehr auf den Servern in der Farm gespeichert. Alle App Artefakte befinden sich entweder in der Content Datenbank oder auf einem separaten Server außerhalb der SharePoint Farm.
  • Die Apps werden vom Site Owner auf seiner Webseite installiert. Jeder Site Owner entscheidet selbst welche Apps er auf seiner Webseite haben möchte, und der Administrator muss nicht mehr jede Erweiterung selbst installieren.
  • Die App Updates werden auch über den App Store verteilt. Der Site Owner kann seine Apps selbst aktualisieren.

Neben vielen Vorteilen ergeben sich auch einige Nachteile:

  • Die Apps können vom Site Owner in dem offiziellen Microsoft Office App Store gekauft und installiert werden. Die Möglichkeit, die Apps im Microsoft Office App Store zu kaufen, lässt sich administrativ ausschalten, es besteht jedoch keine Möglichkeit einzelne Apps selektiv zu sperren.
  • Alle Apps, die über den firmeninternen App Catalog verteilt werden, stehen jedem Site Owner zur Auswahl. Die Installation kann jedoch von einem Lizenzschlüssel abhängig gemacht werden, so dass nur die Benutzer, die einen solchen Schlüssel haben, die betreffende App installieren dürfen.
  • Pro Webanwendung im SharePoint 2013 muss jeweils ein App Catalog für firmeninterne Apps konfiguriert werden. Ein App Catalog ist immer zu einer Webanwendung zugeordnet und kann nicht für mehrere SharePoint Webanwendungen verwendet werden. Das heißt, dass die Apps, die in allen Webanwendungen zur Verfügung stehen, vom Administrator in alle App Catalogs hochgeladen werden müssen.

Die Apps geben dem Endbenutzer generell viel Flexibilität in der Auswahl von SharePoint Erweiterungen für seine Webseite und entlasten den Administrator. Bösartige Apps können jedoch die Daten aus SharePoint an fremde Webseiten hochladen oder manipulieren. Die Apps, die über den offiziellen Microsoft Office App Store vertrieben werden, werden in einem strengen Verfahren sorgfältig geprüft bevor sie in dem Store angeboten werden. Für die Apps, die über den firmeninternen App Catalog vertrieben werden (selbstentwickelte oder zugekaufte Apps), sollten die selben Kontrollmechanismen wie bei allen SharePoint Erweiterungen etabliert werden (siehe Abschnitt 1.7).

Für den sicheren Betrieb von SharePoint Seiten empfiehlt sich daher folgendes:

  • Die Installation von Apps aus dem Microsoft Office App Store und aus dem App Catalog in dem "Low Business Impact” Bereich können im allgemeinen Fall allen Site Owners erlaubt werden.
  • In den "Medium Business Impact" und "High Business Impact" Bereichen sollte die App Installation durch einen Genehmigungsprozess kontrolliert werden. Optional kann der Administrator die Installation von Apps aus dem Microsoft Store per Konfiguration sperren. Dies empfiehlt sich vor allem im "High Business Impact" Bereich.

 

1.10 Überwachung

Um die Angriffe und andere Probleme in der Farm so früh wie möglich zu erkennen, sollten alle betriebsrelevanten Parameter dauerhaft und automatisiert überwacht werden. Die so gesammelten Daten und Logs sollten jedoch keine Benutzerdaten oder andere sensible Informationen beinhalten. Erlaubt sind nur die technischen Parameter, die es dem Administrator ermöglichen den Zustand einzelnen Server in der Farm - ohne sich direkt mit dem Server verbinden zu müssen - zu überwachen.

Für die Überwachung empfiehlt sich der Einsatz von Systems Center 2012 R2 mit dem SharePoint 2013 Management Pack und dem SQL Server 2014 Management Pack. Mehr Informationen zu dem Systems Center 2012 R2 finden Sie unter http://www.microsoft.com/en-us/server-cloud/products/system-center-2012-r2 und das Management Pack für SharePoint 2013 finden Sie unter http://www.microsoft.com/en-us/download/details.aspx?id=35590. Das Management Pack für SQL Server 2014 finden Sie unter http://www.microsoft.com/en-us/download/details.aspx?id=42573.

1.11 Schulung von Personal und Benutzer

Eine der wichtigsten Maßnahmen für den sicheren Betrieb einer SharePoint Farm ist die Schulung für alle Benutzer und Administratoren vom SharePoint und dem SQL Server Backend. Die Schulungen sollten regelmäßig wiederholt werden, vor allem wenn neue SharePoint Versionen oder Drittherstellererweiterungen zur Verfügung gestellt werden.

Eine Grundannahme ist daher auch bei einer Common Criteria (CC) zertifizierten Lösung, dass die Administratoren geschult sind und sich mit dem zu betreuenden System vertraut sind (siehe Assumption A.NO_EVIL). Siehe hierzu: http://download.microsoft.com/download/9/2/3/9238F04A-56E9-475E-894F-C81AB1A528DB/MS_SQL_AGD_ADD_1.0.pdf in Kombination mit http://www.commoncriteriaportal.org/files/ppfiles/pp_dbms_v1.3.pdf.

Die Benutzer, die auf die Daten im hochsicheren Bereich zugreifen, sollten über die besonderen Einschränkungen und Richtlinien, die in diesem Bereich gelten, unbedingt im Voraus informiert werden und mit diesen einverstanden sein.

1.12 Einsatz von Mobilen Geräten im Unternehmen

Immer mehr Benutzer verwenden mobile Geräte für den Zugriff auf Firmendaten, die im SharePoint gespeichert sind. Diese Daten werden auf den mobilen Geräten häufig zwischengespeichert und verlassen auf diesem Wege das Unternehmen - häufig auch unbewusst oder ungewollt.

Um das Risiko für den Datenverlust durch den Diebstahl oder den Verlust von mobilen Geräten zu minimieren, müssen bestimmte Richtlinien für den Umgang mit den mobilen Geräten eingeführt werden:

  • Alle Dokumente, die im SharePoint liegen und auf die der Zugriff von mobilen Geräten möglich ist, sollten unbedingt durch den Einsatz vom Rights Management Server geschützt werden, unabhängig von der Datenklassifizierung (LBI, MBI, HBI). Nur so kann sichergestellt werden, dass diese Dokumente von unautorisierten Personen nicht geöffnet werden können.
  • Alle mobilen Geräte, die im Unternehmen verwendet werden, sollten verschlüsselt sein. Die Geräte, die nicht verschlüsselt sind, sollten keinen Zugriff auf die Daten im SharePoint bekommen.
  • Alle Zugriffe von mobilen Geräten sollten gesondert protokolliert werden, um einen Missbrauch frühzeitig zu erkennen.

 

1.13 Umgang mit persönlichen und sensiblen Daten

Wenn im SharePoint Dokumente oder andere Daten gespeichert werden, die persönliche oder andere sensible Daten beinhalten, dann sollten diese immer im hochsicheren Bereich und durch den Rights Management Server verschlüsselt abgelegt werden.

Benutzerprofile, die aus den externen Identitätsquellen wie Active Directory (AD) oder LDAP nach SharePoint importiert werden, können auch sensible Informationen beinhalten. Best Practice ist hier nur die Attribute zu importieren, die für den Betrieb vom SharePoint notwendig sind. Alle anderen Attribute sollen zur Laufzeit über andere Mechanismen (z.B. Webservices oder AD Lookup) ausgelesen werden.

Diese Daten sollen zudem von der SharePoint Suche ausgeschlossen werden, um den Datenklau über die Personensuche zu verhindern.

1.14 Umgang mit sozialen Funktionen im SharePoint

SharePoint 2013 bietet eine große Auswahl von sozialen Features, unter anderem:

  • Blogs
  • Tagging
  • Chat und Kommentare
  • Like
  • My Sites/Meine Website
  • Communities (Foren)

Diese Features sollten prinzipiell in allen Bereichen von SharePoint verwendet werden dürfen. Da jedoch ein Teil von sozialen Aktivitäten, die in der My Site jedes Benutzers gespeichert wird (z.B. Kommentare), wird empfohlen die Social Features bei den hochsichern Seiten nicht zu verwenden, oder - alternativ - die My Sites auch als hochsicheren Bereich zu klassifizieren.

In den Blogs und Communities sollen keine sicherheitsrelevanten oder geschäftskritischen Informationen verbreitet werden. Um das zu verhindern, sollten alle Benutzer entsprechend geschult werden.

1.15 OneDrive for Business

Jeder SharePoint Benutzer bekommt als Teil seiner My Site eine Dokumentenbibliothek, die als Ablage für alle Arten von eigenen Dateien verwendet werden kann. Durch das Synchronisieren dieser Dokumentenbibliothek auf die lokale Festplatte oder auf das Mobilgerät wird das offline Arbeiten an den Dateien auch außerhalb des Firmennetzes möglich. Das gilt auch für alle anderen Dokumentenbibliotheken, auf die der Benutzer zugreifen kann. Die Dateien, die in dem OneDrive abgelegt werden, können mit anderen Benutzern geteilt werden.

Alle Geräte, auf dem die Dateien aus SharePoint offline synchronisiert werden, sollten verschlüsselt sein (z.B. mit BitLocker). Außerdem sollen alle geschäftskritischen Dateien zusätzlich durch den Rights Management Server geschützt werden.

Wenn ein Mitarbeiter das Unternehmen verlässt, wird sein Profil im AD und im SharePoint gelöscht. Wenn das Profil eines Benutzers gelöscht wurde, wird "Meine Website" des Benutzers nach vierzehn Tagen zum Löschen gekennzeichnet. Damit Datenverluste verhindert werden, kann dem Manager des Benutzers Zugriff auf "Meine Website" erteilt werden. In Ermangelung eines Managers kann dies auch für einen sekundären Besitzer von "Meine Website" erfolgen. Auf diese Weise kann der Manager oder der sekundäre Besitzer Inhalte von "Meine Website" abrufen, bevor diese gelöscht wird. Legen Sie einen sekundären Besitzer fest, um dann Zugang zu erhalten, wenn der Manager eines Benutzers nicht ermittelt werden kann.

Grundsätzlich empfiehlt es sich aus Datenschutzgründen die Daten eines Benutzers in seinem OneDrive, nachdem sein Profil gelöscht wurde, durch einen automatisierten Prozess sofort zu löschen.

1.16 Erlaubte Dateitypen

Der Administrator kann im SharePoint konfigurieren welche Dateitypen hochgeladen werden dürfen. Es empfiehlt sich alle ausführbaren Dateien (z.B. .exe, .dll, .com, .bat, .ps1) zu sperren. Die Archive wie .zip oder .rar sollen nur nach einer Prüfung gegen Viren hochgeladen werden dürfen. Die verschlüsselten Archive, die passwortgeschützt sind, können von manchen Antivirus Programmen nicht korrekt überprüft werden und sollen daher nicht hochgeladen werden dürfen.

1.17 Berechtigungskonzept für den Zugriff auf SharePoint Seiten

Die Daten im SharePoint sollen in drei Sicherheitsklassen LBI, MBI und HBI verteilt werden. Für jede Sicherheitsklasse sollte ein separates Berechtigungskonzept entwickelt und umgesetzt werden. Das Berechtigungskonzept ist ein zentraler Bestendteil des gesamten Sicherheitskonzeptes und sollte klar dokumentiert, regelmäßig überprüft und bei Bedarf angepasst werden.

Bei der Entwicklung des Berechtigungskonzeptes sollten die folgenden Fragen beantwortet werden:

  • Welche Berechtigungen können die Endbenutzer maximal bekommen?
  • Dürfen die Benutzer andere Benutzer zu ihrer Seite einladen ("Share") und die Berechtigungen verwalten?
  • Wer kann die Einstellungen der Seite und der Webseitensammlung ansehen oder ändern?
  • Wer kann die Struktur der Seite ändern, z.B. neue Subseiten oder Listen anlegen, Content Types verwalten, Seiten editieren und die Webparts hinzufügen usw.?
  • Wer kann die Sucheinstellungen ändern?
  • Dürfen die neuangelegten Elemente (Listen, Subseiten…) von der Suche durchforstet werden?
  • Wer kann SharePoint Features aktivieren oder deaktivieren?
  • Darf der Site Owner SharePoint Apps aus dem Microsoft Office App Store installieren?
  • Dürfen die Endbenutzer das Recycle Bin leeren?
  • Sollen in der Webseite die SharePoint Standardberechtigungsgruppen ("Owners", "Members", "Visitors", …) und Standardberechtigungsstufen ("Full Control", "Contribute", "Design", "Edit", …) verwendet werden, oder eigene Gruppen und Berechtigungsstufen angelegt werden?
  • Gibt es Einschränkungen im Umgang mit Webparts? Sollen die Benutzer die Webpartseiten anlegen oder Anpassen dürfen?

 

1.18 SharePoint Designer

Generell soll die Nutzung von SharePoint Designer nur dem Administrator erlaubt werden. Die Endbenutzer sollen nicht direkt auf produktive Seiten mit dem SharePoint Designer zugreifen dürfen.

Alle Änderungen, die ein Administrator mit dem SharePoint Designer auf einer Seite macht, sollten protokolliert und vorher genehmigt werden.

1.19 Zugang für anonyme Benutzer

Der Zugang für anonyme Benutzer auf SharePoint Seiten sollte prinzipiell nicht erlaubt werden. Die Ausnahmen können aber folgende Szenarien sein:

  • Intranetportale mit allgemeinen Informationen ohne besonderen Schutzwert (Speiseplan, Wetter, Nachrichten, Fahrpläne für öffentliche Verkehrsmitteln usw.)
  • Seiten mit anonymen Umfragen
  • Technische Seiten oder Webservices im SharePoint, die bestimmte allgemeine Daten an andere Anwendungen oder Systeme liefern
  • Bibliotheken mit Firmeninformationen, Standardformularen, Standortplänen, usw.

Die Seiten, die anonym erreichbar sind, können z.B. den Firmenbesuchern und externen Mitarbeitern ohne ein Firmenkonto zur Verfügung gestellt werden.

1.20 Langzeitarchivierung und Aufbewahrungsrichtlinien

Falls in einer SharePoint Umgebung die Dokumente in einem SharePoint Archiv aufbewahrt werden, sollte unbedingt sichergestellt werden, dass für dieses Archiv dieselben Zugriffsregeln und dieselbe Datenklassifizierung implementiert wird wie auf dem ursprünglichen Ort. Für jede Datensicherheitsstufe soll ein separates Archiv angelegt werden.

In jedem Archiv sollen die Aufbewahrungsrichtlinien definiert werden, um die archivierten Dokumente nach dem Ablauf der gesetzlichen Aufbewahrungsfrist restlos zu löschen. Alle Zugriffe auf die Dokumente im Archiv sollten mithilfe der SharePoint Auditing Funktionen protokolliert und diese Protokolle regelmäßig überwacht werden.

1.21 Prävention und Erholung von Angriffen

In einer hochsicheren SharePoint Umgebung sollten nicht nur die Prozesse für die Prävention von Angriffen entwickelt werden, sondern auch die Maßnahmen entwickelt werden, die es ermöglichen im Falles eines erfolgreichen Angriffs den regulären Betrieb und die Sicherheit der Umgebung schnellstmöglich wiederherzustellen:

Abbildung 2: Umgang mit Angriffen

  • Angriff verhindern: Ständige Weiterentwicklung von technischen und organisatorischen Maßnahmen um Angriffe auf SharePoint zu verhindern
  • Angriff erkennen: Prozesse und Maßnahmen für die frühe Erkennung von einem möglichen Hackerangriff oder Datenverlust anhand von Mustern in Logfiles und Überwachungssystemen
  • Auf Angriff reagieren: Wenn ein Angriff passiert sollten schnellstmöglich alle technischen und organisatorischen Maßnahmen getroffen werden, um die betroffenen Bereiche zu identifizieren, den Zugriff auf die Daten zu sperren, den Angriff zu stoppen und seine Verbreitung im System zu verhindern.
  • Vom Angriff erholen: Nachdem ein Angriff verhindert oder abgewehrt wurde sollte der normale Betrieb schnellstmöglich wiederhergestellt werden. Die Erkenntnisse aus dem Angriff sollten unbedingt für die Verbesserung des Prozesses verwendet werden, um ähnliche Angriffe in Zukunft schneller zu erkennen und zu verhindern.

Building game with Xbox Controller Support

MSDN Blogs - Tue, 11/18/2014 - 04:48

Xbox One Wireless Controller can work with your PC if you download one of the following driver packages:

Note To use your Xbox One controller with your console after using it with a PC, you must re-sync the controller to the console. You can do this by using the wireless sync button or a USB cable. For details, see Connect a wireless Xbox One controller to your console.

If you want to use an Xbox 360 Controller with your computer, you can use an Xbox 360 Controller for Windows. Or, you can use an Xbox 360 Wireless Controller together with an Xbox 360 Wireless Gaming Receiver for Windows.

Related Issues

Connect a wireless Xbox One controller to your console
How to assign a profile to an Xbox One Wireless Controller


Getting to Grips with the API 

The main method of work with a gamepad in Windows is to use the C ++ API XInput . http://msdn.microsoft.com/en-us/library/windows/desktop/ee417001(v=vs.85).aspx  Noteworthy is the absence of initialization functions, you simply query the state of the controller:

1: XINPUT_STATE state; 2:  3: DWORD result=XInputGetState(0, &state); 4:  5:  6: if (result == ERROR_SUCCESS) 7:  8: { 9:  10: if (state.Gamepad.wButtons & XINPUT_GAMEPAD_A) 11:  12: { 13:  14: 15:  16: } 17:  18: }

XInputGetState function takes as parameters the index controller (they can be connected to more than one) as well as with the state of the structure where the return value of buttons:

 

1: { 2:  3: DWORD dwPacketNumber; 4:  5: XINPUT_GAMEPAD Gamepad; 6:  7: } XINPUT_STATE, *PXINPUT_STATE; 8:  9:  10: typedef struct _XINPUT_GAMEPAD 11:  12: { 13:  14: WORD wButtons; 15:  16: BYTE bLeftTrigger; 17:  18: BYTE bRightTrigger; 19:  20: SHORT sThumbLX; 21:  22: SHORT sThumbLY; 23:  24: SHORT sThumbRX; 25:  26: SHORT sThumbRY; 27:  28: } XINPUT_GAMEPAD, *PXINPUT_GAMEPAD;


Buttons coded bits:

1: #define XINPUT_GAMEPAD_DPAD_UP 0x0001 2: #define XINPUT_GAMEPAD_DPAD_DOWN 0x0002 3: #define XINPUT_GAMEPAD_DPAD_LEFT 0x0004 4: #define XINPUT_GAMEPAD_DPAD_RIGHT 0x0008 5: #define XINPUT_GAMEPAD_START 0x0010 6: #define XINPUT_GAMEPAD_BACK 0x0020 7: #define XINPUT_GAMEPAD_LEFT_THUMB 0x0040 8: #define XINPUT_GAMEPAD_RIGHT_THUMB 0x0080 9: #define XINPUT_GAMEPAD_LEFT_SHOULDER 0x0100 10: #define XINPUT_GAMEPAD_RIGHT_SHOULDER 0x0200 11: #define XINPUT_GAMEPAD_A 0x1000 12: #define XINPUT_GAMEPAD_B 0x2000 13: #define XINPUT_GAMEPAD_X 0x4000 14: #define XINPUT_GAMEPAD_Y 0x8000
Slightly more complicated is the values ​​of the hammers and two joysticks.  The values ​​of X, Y, are within SHRT_MIN-SHRT_MAX (-32768 +32767), and for the hammers _UI8_MAX (255).  Usually in games, these values ​​are normalized to -1.0 +1.0.  Also for joystick should consider the so-called dead zone.  Return values ​​axes at the neutral position can vary from zero, and to disregard them use the default values ​​of "dead zones", which should be computed by the following algorithm: 1: float magnitude = sqrt(state.Gamepad.sThumbRX*state.Gamepad.sThumbRX 2:  3: + state.Gamepad.sThumbRY*state.Gamepad.sThumbRY); 4:  5:  6: if (magnitude > XINPUT_GAMEPAD_RIGHT_THUMB_DEADZONE) 7:  8: { 9: 10: }
Typical values ​​of these thresholds are as follows:
1: #define XINPUT_GAMEPAD_LEFT_THUMB_DEADZONE 7849 2: #define XINPUT_GAMEPAD_RIGHT_THUMB_DEADZONE 8689 3: #define XINPUT_GAMEPAD_TRIGGER_THRESHOLD 30


You can look at more detailed examples of work with a gamepad online http://code.msdn.com as well as take advantage of the wrapper which is part of DirectX Toolkit .
 

XInput game controller sample This sample demonstrates the use of the XInput APIs in a C++ app.

Download C++ (61.0 KB)

Resources

http://msdn.microsoft.com/en-us/library/bb648761.aspx XInput Controller Sample

In addition to the functions directly related to the status polling controller to XInput also includes management features vibrating motor and is connected accessory, such as a voice recorder with a headset or audio to the headset. Support also has a joystick for managed code in the library and XNA Monogame .

Get in touch?

So if your building a game or have built a game for Windows 8 with Controller support please get in touch as I would love to share your experience!

When do conversions generate conversion warnings? And why are these bad?

MSDN Blogs - Tue, 11/18/2014 - 04:15

Hello,

A few days ago a colleague asked me why was he seeing implicit conversions in the execution plan, but no warnings of such sort were being issued. Warnings are seen in the plan if the conditions they affect occur, and then are surfaced in the <Warnings> element of SHOWPLAN either as affecting Cardinality Estimates and/or affecting the ability to Seek on an index.

Conversion related warnings are not exclusive to implicit converts, as any convert has the potential to spawn such warning. Warnings in the execution plan come from heuristics, and in the case of conversions, heuristics are set to fire the a conversion warning any time an existing convert *might* not preserve the order and thus affecting estimates, which in turn might affect the ability to seek, whether it is used in a predicate or not – although these will be more commonly seen in a search or join predicate.

Now, when referring to “order affecting conversions”, it becomes clearer that there is a connection between this concept and conversions from string to numeric data types, or unicode to non-unicode strings, and why these would show up in SHOWPLAN as warnings. Let me to illustrate all of the above with a few examples.

As we can see in the plan below, executing the next query generates a warning, because there is a string to numeric conversion (explicit) in the s.SalesOrderNumber computed column. This column definition is (isnull(N'SO'+CONVERT([nvarchar](23),[SalesOrderID]),N'*** ERROR ***')), so it uses one of the columns in the join predicate. There are some implicit conversions going on, namely on d.LineTotal column, but these are not generating warnings, as they are not affecting estimations.

USE [AdventureWorks2012] GO SELECT s.SalesOrderID, s.OrderDate, s.DueDate, s.ShipDate, s.Status, s.SalesOrderNumber, s.AccountNumber, d.LineTotal FROM Sales.SalesOrderHeader AS s INNER JOIN Sales.SalesOrderDetail AS d ON s.SalesOrderID = d.SalesOrderID WHERE (d.OrderQty = 3.0) GO

By removing the computed column s.SalesOrderNumber we avoid generating a warning as seen in the plan below, because the join predicate is not being converted to a string now, so it does not affect possible order and does not interfere with estimates.

SELECT s.SalesOrderID, s.OrderDate, s.DueDate, s.ShipDate, s.Status, s.AccountNumber, d.LineTotal FROM Sales.SalesOrderHeader AS s INNER JOIN Sales.SalesOrderDetail AS d ON s.SalesOrderID = d.SalesOrderID WHERE (d.OrderQty = 3.0) GO

Now, in the next example I was given to illustrate the question of why an implicit conversion was not generating a warning, we can see that indeed no warning exists, because the filter operator in the plan below there is no conversion. Note that we are still doing some implicit conversions on LineTotal column, but like before, these are not generating warnings.

SELECT * FROM [Sales].[SalesOrderDetail] WHERE [OrderQty] = 3.0 GO

What if we were to add the following computed column to the table and use it in the query as a predicate?

ALTER TABLE [Sales].[SalesOrderDetail] ADD [OrderQtyStr] AS (CONVERT([nvarchar](10),[OrderQty])) GO SELECT * FROM Sales.SalesOrderDetail WHERE [OrderQtyStr] = 3 GO

We can see how the predicate changed, and is now using a scalar expression (conversion):

And how a warning is generated (actually more than that) as seen below:

- One for calculating the computed column used in the predicate (blue);

- One for converting the computed column back to int for comparison with the predicate (Expr1004 in green)

- And a couple stating the conversions also disallow the use of indexes to seek (seekplan warnings in red)

Now for a last example:

SELECT * FROM HumanResources.Employee WHERE NationalIDNumber = 671089628
GO

The predicate is a unicode string to numeric conversion – NationalIDNumber is an NVARCHAR(15) and the predicate is an integer – to see the rules of precedence when doing conversions, please refer to the BOL article on Data Type Precedence.

Therefore we have the cardinality estimation warning because the conversion affects ordering (blue), and in this case also a couple seekplan warnings because this conversion also affects the ability to seek - if we change the ID number to string, then we indeed would use a seek.

Let me wrap up with my general rule of thumb: generating a warning or not, implicit conversions are a sign of added cpu cycles and probably a poor design choice, either on the database level or just with coding (like poorly declared variables), so as a best practice I aim to remove these implicit conversions when I find them anyway – more so if they are generating warnings of course.

Hope this is useful. Until next time!

Disclaimer: I hope that the information on these pages is valuable to you. Your use of the information contained in these pages, however, is at your sole risk. All information on these pages is provided "as -is", without any warranty, whether express or implied, of its accuracy, completeness, fitness for a particular purpose, title or non-infringement, and none of the third-party products or information mentioned in the work are authored, recommended, supported or guaranteed by Ezequiel. Further, Ezequiel shall not be liable for any damages you may sustain by using this information, whether direct, indirect, special, incidental or consequential, even if it has been advised of the possibility of such damages.

通过 Azure 媒体服务进行高速编码

MSDN Blogs - Tue, 11/18/2014 - 03:39

Milan Gada Azure 媒体服务首席项目经理

关于 Azure 媒体服务,客户问的最多的一个问题是能否进行高速编码。这个问题现在已经有了肯定的答案,目前有三种不同类型的 Encoding Reserved Unit 可供客户选择。在本文中,我将介绍如何使用这些新的 Encoding Reserved Unit 以及它们带来的速度提升情况。

Encoding Reserved Unit 类型

过去, Azure 媒体服务用户可登录门户网站,在“Encoding”(编码)选项卡(如下图所示)中更改 Encoding Reserved Unit 的数量:

此选项卡现已更新,为用户提供三种不同类型的 Encoding Reserved Unit(如下图所示):

这三种不同类型的 Encoding Reserved Unit 分别标示为基本级、标准级和高级选项。用户可任选其一,并通过使用滑块更改保留单位数量(以帐户配额为上限)。单击“Save”(保存)后,媒体服务帐户上的更改将立即生效。

请注意,对于已经处于处理状态的现有编码任务,将继续按编码任务开始时分配给该账户的保留单位所决定的性能级别运行。对于在保留单位更改生效之后进入处理状态的所有编码任务,则将享受到帐户中更新保留单位带来的优势。

从性能角度看,基本级保留单位提供与用户以前所能获得的相同编码性能。与基本级相比,标准级保留单位提供的编码性能提升 2 倍之多,而高级保留单位提供的编码性能则提升 4 倍以上。

实际性能提升情况将取决于输入内容及所选的编码配置文件。

计费

Encoding Reserved Unit 的定价信息可参考媒体服务定价页面。Encoding Reserved Unit 按月定价,但费用根据帐户当日最高保留单位数每日分摊计算。为计费方便,每日以 UTC 时间为准。以下示例进一步说明了这一点。

假定基本级、标准级和高级保留单位的定价分别为 X、Y 和 Z 美元。

用例

计费

说明

用户在 UTC 时间上午 10 点将基本级保留单位数从 0 改为 10,在 UTC 时间当日晚上 8 点又改回为 0

$X/31
  * 10

基本级保留单位日均成本为 X/31 美元,但保留单位实际使用时间仅为 10 个小时,当日最高保留单位数为 10

用户在 UTC 时间上午 10 点将基本级保留单位数从 0 改为 5,在 UTC 时间当日中午 12 点又从 5 改为 20。最后,用户在 UTC 时间当日晚上 9 点将保留单位改回至 0

$X/31
  * 20

基本级保留单位日均成本为 X/31 美元,20 为当日最高保留单位数

用户在 UTC 时间晚上 10 点将基本级保留单位数从 0 改为 5,在 UTC 时间次日上午 9 点又改回为 0

($X/31
  * 5) + ($X/31 * 5)

基本级保留单位日均成本为 X/31 美元,5 为这两日最高保留单位数

用户在 UTC 时间晚上 10 点将基本级保留单位数从 0 改为 8,在 UTC 时间次日上午 9 点从 8 改为 5,最后在 UTC 时间次日中午 12 点从 5 改回为 0

($X/31
  * 8) + ($X/31 * 8)

基本级保留单位日均成本为 X/31 美元,8 为这两日最高保留单位数

用户在 UTC 时间上午 10 点将基本级保留单位数从 0 改为 10,在 UTC 时间晚上 8 点更改为标准级保留单位,然后在 UTC 时间当日晚上 10 点将保留单位数改为 0

($X/31
  * 10) + ($Y/31 * 10)

基本级保留单位日均成本为 X/31 美元,标准级保留单位日均成本为 Y/31 美元,10 为当日这两类保留单位的最大数量。两项成本相加,可反映当日这两种类型的保留单位的使用情况

请注意,对所有月份(包括 2 月)而言,日均成本均按月度成本除以 31 计算

API

目前尚无任何 API 可用以更改媒体服务帐户中的保留单位类型。Azure 管理门户是唯一可执行此操作的渠道。我们会在以后的版本中考虑增加使用 API 进行更改的选项。

结语

最后,我想对在过去几个月中帮助我们验证高性能保留单位的所有客户致以衷心的感谢。下面是一家我们高度重视的企业客户的评论(Jon Robinson,来自 Blinkbox

云是进行水平伸缩的绝佳选择,但有时候您需要的只是速度,而新的高级编码器可以做到这一点,这正是我们目前针对业务所使用的工具,我们对其表现非常满意。

本文翻译自:http://azure.microsoft.com/blog/2014/09/10/high-speed-encoding-with-azure-media-services/

JW Player 现在支持 Azure 媒体服务

MSDN Blogs - Tue, 11/18/2014 - 03:24

Vishal Sood Azure 媒体服务首席项目经理

此合作伙伴关系是关于什么内容?

Azure 媒体服务现已支持一些最常见的流媒体格式,其中包括 Microsoft Smooth
Streaming 以及行业标准的 mpeg-DASH 和 Apple HTTP 实时传送流。Azure 媒体服务也提供针对当今大多数屏幕和设备的播放器解决方案。此合作伙伴关系使我们能够向客户提供使用一个播放器的选择, 它是最流行的播放器之一。经过众多努力,JW Player 支持针对 Azure 媒体服务客户的以下额外功能:

  • 在浏览器中播放Apple HTTP 实时传送流
  • 在浏览器中播放经AES-128 位 CBC 保护的内容

JW Player 的所有现有功能,如自定义皮肤、云托管播放器等,将继续保持现有的工作方式。

我怎样使用 JW Player?

JW Player 的同仁构建了非常易用的 Azure 媒体服务客户登录页面。上文概括的功能是 JW Player 中的高级功能,因此,要在解决方案中使用这些功能,您将需要建立帐户并购买高级版本。不过,您也可以简单地从网页插入从 Azure 管理门户获得的 URL 以查看其运行状况,从而进行试用。如您所见,网页上的组件也向您提供为播放器选择皮肤的功能。

下面是登录页面上提供的组件的屏幕截图:

接下来还会发生什么?

我们会继续与 JW Player 等合作伙伴合作从而带来更多的可能,如果您有任何需求,也请告诉我们,我们将很乐意接受您的反馈。如果您将参加 IBC 2014,敬请光临 13 号大厅的微软会议室,让我们了解是否可以向您进行关于 Azure 媒体服务或 JW Player 集成的任何演示。我们期待得到您的支持和反馈。

敬请访问登录页面并使用 JW Player。

本文翻译自:http://azure.microsoft.com/blog/2014/09/16/azure-media-services-now-supported-by-jw-player/

Performance counters for BizTalk isolated host are not shown

MSDN Blogs - Tue, 11/18/2014 - 03:03

Symptom:

You cannot see any BizTalk Performance counters for a specific BizTalk Isolated Host

Possible cause:

1. BizTalk Performance counters are just shown for Active Biztalk Process:

• [In-process] BizTalk services running
• [Isolated] Hosting process running with BizTalk information loaded, so that it is linked with Biztalk receive locations.

Note: If you are using any BizTalk Web Services (.svc or wsdl), Hosting process is running within IIS worker Process (App Pools).

If your isolated BizTalk Host is not shown in Performance Counters, that would means that Hosting Process is not linked with your Biztalk receive locations:


1. There has not been any call to any of the BizTalk Web Services linked with this BizTalk Host (SOAP/WCF receive location).
2. IIS worker process has been unloaded after inactivity period, by default it is after 20 minutes.


In order to be able to see BizTalk Performance Counters for you BizTalk Isolated Host, you need to make sure that Hosting process is running with BizTalk information loaded, so that it is linked with Biztalk receive locations. To confirm this is the reason why you cannot see the performance counter in your enviornment, please try one of the following actions :

1. Send a message through any of the Receive Location linked with this Isolated Host.
2. Open an Internet Explorer, and browse to any of the URL defined as Receive Location linked with this Isolated Host.

Hope you find it interesting!!

Week of Curah! Day 1: Details and Interview

MSDN Blogs - Tue, 11/18/2014 - 02:26

Welcome to the Week of Curah here in the wacky world of Wiki Ninjas!

We invite you to take advantage of the opportunity to join the founding curators of Curah! and start sharing your knowledge with the rest of the community today. You can help set the tone and quality bar for community-generated curations. Curah! has been designed from the start for the community and will be fully open to anyone with a Microsoft account (LiveID). That’s all you need to log in and start sharing what you know! So put on your curator hat, and give Curah! a try. It’s not every day that you get the chance to make the world a better place with so little effort!

Let's see what's been happening over on the main Wiki Ninjas blog...

Jump on in! The Curah is warm!

   - Ninja Ed 

 

 

Bring Your Own Tools for fremtidens udviklere

MSDN Blogs - Tue, 11/18/2014 - 02:23

Udviklerholdet bag ASP.NET vil gøre det endnu nemmere at tage egne udviklerværktøjer med ’hjemmefra’ og styre dem via Visual Studio. Danske Mads Kristensen tog turen fra Seattle for at dele visionerne med deltagerne på årets GOTO-konferencer i København og Aarhus.

– Det er nok jordens største kliché at konstatere, at udviklingsverdenen bevæger sig hurtigere end nogensinde før, men det er ikke desto mindre sandt. For det myldrer frem med nye værktøjer, ikke mindst inden for front-end udvikling, og nogle af værktøjerne er virkelig gode.  Men samtidig foretrækker mange udviklere at arbejde så meget i Visual Studio som muligt, og min opgave er blandt andet at finde ud af, hvordan vi får de to verdener til at spille optimalt sammen.

Det forklarer Mads Kristensen, Program Manager, Web Platforms & Tools hos Microsoft Corp. om sit oplæg på årets GOTO-konferencer, der ”forhåbentlig giver deltagerne en lidt større forståelse for, hvordan man får det nemmere i en cross-technology verden.”

Hvorfor opfinde den dybe tallerken igen?

– I princippet kunne vi måske nok inkorporere nogle af de her funktioner i Visual Studio. Men det ville være kostbart og besværligt. Og når f.eks. Bower, Gulp og Grunt allerede fungerer supergodt, ville det ikke rigtig tjene noget formål at opfinde den dybe tallerken en ekstra gang, bemærker han.

– Så vi har valgt en mere pragmatisk tilgang og lægger hellere kræfter i dét, vi kalder ’Bring Your Own Tools’. Nemlig at gøre udviklerne i stand til at anvende præcis de værktøjer, de foretrækker, og samtidig blive længst muligt i Visual Studio, siger Mads Kristensen.

Styr de nye værktøjer fra Visual Studio

I praksis handler opgaven for Microsoft udviklerhold bl.a. om at bygge en række abstraktionslag, som kobler værktøjerne sammen med Visual Studio, vel at mærke uden behov for konstant at integrere alt via kommandolinjen.

– Under motorhjelmen er det fuldstændig de samme tredjeparts-værktøjer, som du er vant til arbejde med. Du kan bare styre det hele inde fra Visual Studio, værktøjerne spiller meget bedre sammen, end de gør udenfor – og du slipper for at skifte grænseflade i tide og utide. Samtidig bliver læringskurven noget fladere for dem, der primært fokuserer på at udvikle evnerne indenfor som ASP.NET og C# og som ikke nødvendigvis har lyst til at gå i dybden med nye værktøjer hele tiden, siger Mads Kristensen.

Læs mere http://www.hanselman.com/blog/IntroducingGulpGruntBowerAndNpmSupportForVisualStudio.aspx

Normal 0 21 false false false DA JA X-NONE

在 Azure 网站上启用 CDN 端点

MSDN Blogs - Tue, 11/18/2014 - 02:03

Ben Cohen Azure 网站项目经理

Azure 内容分发网络 (CDN) 是一款使您能够向全球客户更快、更可靠地发送音频、图像和其它静态文件的服务。它通过全球服务器网络实现这一点,这些服务器能够从与每个用户相关的最近节点提供内容(有关目前所有节点位置的更新列表,请单击此处)。这样能够大大提升速度和可用性,显著改善用户体验。CDN 通常用于为网站提供图像和脚本,而现在,Azure 网站已经支持与 CDN 的直接集成。本博客文章将向您演示基本网站的设置、CDN 支持的集成以及使用开发人员工具观测CDN效果,从而说明如何操作 CDN。

在门户中创建网站

  • 登录 Azure 管理门户
  • 单击仪表板左下方的 +New(+新建)图标
  • 选择 Compute - Web Site - Quick Create(计算 - 网站 - 快速创建)
  • URL 框中,为您的网站提供一个唯一的名称
  • 单击 Create Web Site(创建网站)按钮

 

现在网站创建成功,并可从门户的 Web Sites(网站)选项卡下看到

创建 CDN

网站建立完成后,您还需要创建一个关联的 CDN

  • 再次单击 +New(+新建)图标
  • 选择 App Services - CDN - Quick Create(应用程序服务 - CDN - 快速创建)
  • 从下拉列表中选择与您的网站关联的 Subscription(订阅)
  • 单击 Origin Domain(源域)下拉列表
  • 在下拉列表下,您应该能看到 Web Sites(网站)类别以及您关联的站点 URL
  • 选择您的站点并单击 Create(创建)

将创建 CDN 并可在门户的 CDN 选项卡下查看

注意:原始站点 URL 位于最右端,关联 CND 的 URL 在其左侧。

现在,尝试单击链接访问 CDN

哦,糟糕!哪里出错了?实际上没有错误。CDN 网络传播最多需要 60 分钟,所以在上线之前您可能会收到状态代码 400(请求错误)或 404(未找到)。

但别担心,您仍能够完成此教程并可以随后在 CDN 可用时回来查看结果。

注意:通常,没有理由要直接访问 CDN(只须在您网页的源中引用 CDN),但直接单击链接是查看 URL 是否已上线的简单方法。

从 CDN 中提取,更新网站内容

在本部分,我们将需要在我们的站点上托管一个简单的网页。本教程不涉及在 Azure 站点部署您自己的内容的详细过程,但您可以从此处详细介绍的各种方法中选择一种。

不过,如果您想完全跟随本教程,下面是我的示例页面的文件结构 + 源。

文件结构

root-site-folder

  | index.html

  | Images

    | panda.jpg

index.html

<!DOCTYPE
html>

<html lang="en">

    <head>

        <meta charset="utf-8"/>

        <title>Hello Panda</title>

    </head>

    <body>

        <h1>Hello Panda</h1>

        <p>Web Server Hosted Image:</p>

        <img src="Images/panda.jpg" alt="panda pic goes here" height=400 width=266>

        <p>CDN Hosted Image:</p>

        <!--Replace the image source with the same file location but relevant to the CDN address-->

        <img src="http://az664986.vo.msecnd.net/Images/panda.jpg" alt="panda pic goes here" height=400 width=266>

    </body>

 </html>

我们的基本页对同一图像加载两次,一次直接从 Web 服务器加载,另一次从 CDN 加载。

要访问 CDN 上的缓存内容,请使用门户中提供的 CDN URL。地址可以从 URL 列下门户的 CDN 选项卡中找到,如下所示:

.vo.msecnd.net/">http://<CDNNamespace>.vo.msecnd.net/

此外,请注意从 CDN 访问静态内容的模式。由于 CDN 已相对于您的网站进行了自动配置,其文件结构相同。因此,如果您想要通过 CDN 而非 Web 服务器访问静态内容,您只需将源标记中站点相关的 URL 替换成类似的 CDN 相关的 URL,如:

站点相关:

<img src="path/to/file">

CDN 相关:

<img src="http://<my CDN URL>/path/to/file">

现在就可以发布网站了。

如果一切正常,您应该能看到两张图像加载,如下所示:

但是,如果您看到的界面如下所示:

可能是您的 CDN 仍没有完成上线,您将需要等待上线完成然后刷新页面。

 查看结果

通过在开发人员工具中监控网络活动,即可看到两张图像加载时间的差异。此教程将使用 Internet Explorer,但所有主要浏览器中的步骤应该相同。

  • 打开 IE
  • 导航到您的站点 URL
  • 按 F12 打开开发人员工具
  • 单击 Network(网络)选项卡
  • 将记录按钮切换至 Capture Network Traffic(捕获网络流量)
  • 刷新页面

注意服务器托管和 CDN 托管图像加载时间的差异:

注意:根据 Web 服务器位置、最终用户位置以及常规服务器加载,这些数字会有很大差异

结论

您现在应该清楚地了解了如何建立 CDN 端点并将其与您的 Azure 网站集成,以及如何使用基本的浏览器工具衡量其有效性。有关 CDN 自定义和使用的详细信息,请查看此处的文档。

本文翻译自:http://azure.microsoft.com/blog/2014/09/18/enabling-cdn-for-azure-websites/

Accessing a CNG private key from an X509Certificate2 class

MSDN Blogs - Tue, 11/18/2014 - 01:51

Currently, The .NET Framework X509Certificate2 class does not support certificates associated with a CNG private key provider.  That is, the X509Certificate.PrivateKey property can only be associated with an RSACryptoServiceProvider, a wrapper around the CryptoAPI provider.

 

If you attempt to acquire the private key of a CNG provider, the result is the following exception:

System.Security.Cryptography.CryptographicException: Invalid provider type specified.

at System.Security.Cryptography.Utils.CreateProvHandle(CspParameters parameters, Boolean randomKeyContainer)
at System.Security.Cryptography.Utils.GetKeyPairHelper(CspAlgorithmType keyType, CspParameters parameters, Boolean randomKeyContainer, Int32 dwKeySize, SafeProvHandle& safeProvHandle, SafeKeyHandle& safeKeyHandle)
at System.Security.Cryptography.RSACryptoServiceProvider.GetKeyPair()
at System.Security.Cryptography.RSACryptoServiceProvider..ctor(Int32 dwKeySize, CspParameters parameters, Boolean useDefaultKeySize)
at System.Security.Cryptography.X509Certificates.X509Certificate2.get_PrivateKey()

 

If your application is directly accessing the X509Certificate2.PrivateKey property there is a workaround for this known problem. 

The CLR team wrote an extension to the Cryptography classes including an X509Certificate2 property that allows access to a CNG private key.  The extension can be downloaded from CodePlex at http://clrsecurity.codeplex.com/wikipage?title=Security.Cryptography.dll

Once referenced in the project, the X509Certificate2 will contain the GetCngPrivateKey method.

Below is a code sample that demonstrates how an application can use the GetCngPivateKey method.

using System;
using System.Text;
using System.Security.Cryptography;
using System.Security.Cryptography.X509Certificates;
using Security.Cryptography;
using Security.Cryptography.X509Certificates;
using System.IO;

namespace SecurityTest
{
    class Program
    {
        static byte[] DecryptMessage(byte[] EncryptedData, CngKey BobsKey, byte[] pbAlicePublicKey)
        {
            int IVLength;
            byte[] Message = null;
            CngKey AlicesPublicKey = CngKey.Import(pbAlicePublicKey, CngKeyBlobFormat.EccPublicBlob);
            ECDiffieHellmanCng BobECDH = new ECDiffieHellmanCng(BobsKey);

            byte[] SymmetricKey = BobECDH.DeriveKeyMaterial(AlicesPublicKey);
            AesCryptoServiceProvider Aes = new AesCryptoServiceProvider();
            Aes.Key = SymmetricKey;
            IVLength = Aes.BlockSize/8;
            byte[] IV = new byte[IVLength];
            for (int n = 0; n < IVLength; n++)
            {
                IV[n] = EncryptedData[n];
            }
            Aes.IV = IV;

            MemoryStream ms = new MemoryStream();
            CryptoStream cs = new CryptoStream(ms, Aes.CreateDecryptor(), CryptoStreamMode.Write);

            cs.Write(EncryptedData, IVLength, EncryptedData.Length - IVLength);
            cs.FlushFinalBlock();
            cs.Close();

            Message = ms.ToArray();

            return Message;
        }

        static byte[] EncryptedMessageForBob(byte[] pbBobsPublicKey, CngAlgorithm Algorithm, out byte[] pbAlicePublicKey)
        {
            byte[] EncryptedBlob = null;
            byte[] bpMessage = Encoding.Unicode.GetBytes("This is an encrypted message from Alice");
            CngKey AliceKey = CngKey.Create(Algorithm);
            CngKey BobsPublicKey = CngKey.Import(pbBobsPublicKey, CngKeyBlobFormat.EccPublicBlob);
            pbAlicePublicKey = AliceKey.Export(CngKeyBlobFormat.EccPublicBlob);

            ECDiffieHellmanCng AliceECDH = new ECDiffieHellmanCng(AliceKey);
            byte[] SymmetricKey = AliceECDH.DeriveKeyMaterial(BobsPublicKey);

            AesCryptoServiceProvider Aes = new AesCryptoServiceProvider();
            Aes.Key = SymmetricKey;
            Aes.GenerateIV();
           
            MemoryStream ms = new MemoryStream();
            CryptoStream cs = new CryptoStream(ms, Aes.CreateEncryptor(), CryptoStreamMode.Write);

            ms.Write(Aes.IV, 0, Aes.IV.Length);
            cs.Write(bpMessage, 0, bpMessage.Length);
            cs.FlushFinalBlock();
            cs.Close();

            EncryptedBlob = ms.ToArray();

            return EncryptedBlob;
        }

        static void Main(string[] args)
        {            
            byte[] pbAlicesPublicKey = null;
            X509Store Store = new X509Store(StoreName.My, StoreLocation.CurrentUser);
            Store.Open(OpenFlags.ReadOnly);
            X509Certificate2Collection Certs = Store.Certificates;
        
            Certs = Certs.Find(X509FindType.FindBySubjectName, "CNGCert", false);
            if (Certs.Count > 0)
            {
                X509Certificate2 Cert = Certs[0];
                if (Cert.HasCngKey())
                {
                    // We are Bob in this scenario
                    CngKey Bobkey = Cert.GetCngPrivateKey();

                    // Get an encrypted message from Alice                                                         
                    byte[] EncryptedData = EncryptedMessageForBob(Bobkey.Export(CngKeyBlobFormat.EccPublicBlob), Bobkey.Algorithm, out pbAlicesPublicKey);

                    // Decrypt the message
                    byte[] Message = DecryptMessage(EncryptedData, Bobkey, pbAlicesPublicKey);

                    Console.WriteLine("Message from Alice : {0}", Encoding.Unicode.GetString(Message));
                }
                else
                {
                    // It's a CryptoAPI key
                    RSACryptoServiceProvider rsa = (RSACryptoServiceProvider)Cert.PrivateKey;                                   
                }
            }
        }
    }
}

Unfortunately, if you encounter the exception on in a product such as WCF, CRM or ADFS, the only option is to use a certificate with a CryptoAPI key since these products only know about the PrivateKey property.

Hopefully, a future version of .NET and products that use it will work with CNG keys. 

Sicherer Betrieb von SharePoint Server 2013

MSDN Blogs - Tue, 11/18/2014 - 01:38

Publiziert: November 2014
Autoren: Robert Seso, Bertil Syamken

Informationssicherheit ist ein wesentlicher Faktor für alle IT-Organisationen auf der ganzen Welt. Der Zugriff auf Daten findet von immer mehr unterschiedlichen Geräten, Plattformen und Orten statt und stellt eine immer größere Herausforderung für die IT Sicherheit dar. Die meisten Angriffe mit Datenverlust als Folge passieren heute nicht mehr durch Schadsoftware, sondern als Folge des Benutzerfehlers - der Benutzer hat sich zum zentralen Element jedes Sicherheitskonzeptes entwickelt und dies muss bei der Entwicklung von Sicherheitsmaßnahmen besonderes berücksichtigt werden.

Die Sicherheit in SharePoint Server 2013 ist ein permanenter Prozess und keine einmalige Aktion. Ein Sicherheitskonzept bestehend aus technischen und organisatorischen Maßnahmen und Prozessen sollte deswegen ständig überprüft, analysiert, getestet und weiterentwickelt werden.

Abbildung 1: Gestaffelte Sicherheitsebenen

Die einzelnen Ebenen in diesem Konzept ergänzen sich untereinander und stellen dadurch sicher, dass wenn eine Ebene durch einen Angriff kompromittiert wurde, die anderen Ebenen ihre Funktion übernehmen und den Zugriff zu den geschützten Daten verhindern können.

Das Hauptziel dieses Sicherheitskonzeptes ist externe und interne Angriffe und den daraus resultierenden Datenverlust von vorneherein zu verhindern. Um dieses Ziel zu erreichen, sollten die Sicherheitsmaßnahmen und Prozesse auf allen Ebenen dauerhaft überprüft, weiterentwickelt und verbessert werden.

Wichtig

Um die Sicherheit in einer SharePoint Umgebung zu erhalten sollten alle relevanten Maßnahmen und Prozesse ständig verbessert und weiterentwickelt werden.

Die Physikalische Ebene beschreibt alle technischen Maßnahmen zur Absicherung einer SharePoint Umgebung, wie:

  • Absicherung des Rechenzentrums
  • Netzwerkabsicherung und Überwachung
  • Absicherung der Farm, Webanwendungen und Seiten
  • Antivirenschutz
  • Authentifizierung
  • Verschlüsselung aller Kommunikationswege in der SharePoint Umgebung
  • Verwendung von Rights Management Server

Die Logische Ebene beinhaltet alle Prozesse und Rollen die für den sicheren Betrieb einer SharePoint Umgebung notwendig sind, wie:

  • Protokollierung aller Zugriffe, inklusive Zugriffe durch den Administrator
  • Zeitlich beschränkte ("Just In Time") Vergabe von administrativen Berechtigungen
  • Höchstmögliche Automatisierung
  • Change Management
  • Datenklassifizierung und Informationsarchitektur
  • Regelmäßiges Testen
  • Klar definierte Sicherheitsstrategie bei der Entwicklung von eigenen Anwendungen
  • Kontrollmechanismen beim Einsatz von Drittherstellerlösungen
  • Umgang mit dem Office Store und SharePoint Apps
  • Ständige Überwachung aller technischen und operativen Parameter
  • Schulung von Personal und Benutzer
  • Klare Regeln beim Einsatz von mobilen Geräten im Unternehmen
  • Geregelter Umgang mit persönlichen und sensiblen Daten, inklusive Kundendaten
  • Umgang mit sozialen Funktionen im SharePoint
  • Berechtigungskonzept für den Zugriff auf SharePoint Seiten
  • Zugangsregeln für externe und/oder anonyme Benutzer

Der Schutz auf der Datenebene ist der Kern des Konzeptes und beinhaltet alle technischen Maßnahmen und Prozesse beim Umgang mit den SharePoint Datenbanken:

  • Verschlüsselung aller Datenbanken
  • Verwendung von BitLocker
  • Zugriffskontrolle und Überwachung auf Datenbankebene
  • Backup und Restore Strategie und Umgang mit Datensicherungen
  • Rechtskonforme Langzeitarchivierung und Aufbewahrungsrichtlinien
  • Mandantenfähigkeit
  • Sicheres Löschen von Daten

Diese Punkte werden in den nächsten folgenden Blogbeiträgen detailliert beschrieben.

Первый юбилей проекта Curah!

MSDN Blogs - Tue, 11/18/2014 - 01:19

20 ноября - годовщина запуска проекта  Curah! - коллекции подборок ресурсов по различным техническим вопросам. У проекта своя очень специальная цель - помогать людям, ищущим в Google, Bing, Yandex,  находить аннотированные коллекции ссылок на качественный контент. Все мы проходили через это: набираешь строку поиска в поисковике, а потом щелкаешь по многочисленным ссылкам, пытаясь отфильтровать действительно нужную инфомрацию от белого шума. Проект Curah! призван помочь в этом процессе, так как предлагает наборы и коллекции ссылок, собранных экспертами.

С момента запуска проекта авторы из коммьюнити опубликовали тысячи новых подборок (curations), и мы хотим поблагодарить всех, кто присоединился к проекту, а также приглашаем новых авторов попробовать себя в создании подборок (curations).

 

Оригинал статьи на английском языке: http://blogs.technet.com/b/wikininjas/archive/2014/11/16/announcing-the-week-of-curah-11-17-11-23-celebrate-curah-39-s-birthday.aspx

Никогда не имели дело с сайтом curah.microsoft.com и не создавали своих подборок? Прочтите FAQ: https://curah.microsoft.com/60506/часто-задаваемые-вопросы-о-curah  

Angular or Backbone: Go Mobile!

MSDN Blogs - Tue, 11/18/2014 - 01:09
I have presented several times at different conference and community events. Like to share the presentation with you. Angular or Backbone, which one you will use in your mobile app? How could you develop a mobile app across iOS, Android or windows devices? This talk will take an intimate look at two of today’s most popular frameworks, Angular and Backbone and explore their differences. We’ll show how Apache Cordova opens the world of mobile app development to web developers. In the...(read more)

TIPS: How Teachers and Students can get the most out of Outlook Advanced Rules

MSDN Blogs - Tue, 11/18/2014 - 00:30

The average person receives 28 emails a day. Whether you’re a teacher of any level, or a student from secondary upwards, you’re guaranteed to have an email accounts. So you’ll be receiving all sort of messages on a daily basis, that will vary hugely in terms of their relevance, importance and urgency.

As a teacher or a student, a lot of your time is spent actually having to pay attention to or interact with people in real life, and it's rarely that case that you can deal with emails as and when they land in your inbox. When you do find the time to go through your mail it’s easy to skim through messages without taking in all of the salient information, and the important stuff can fall off the table after you breathe that sigh of relief at having ‘read’ all of your items and seemingly cleared the decks.

Setting up Advanced Rules in Outlook.com

However, if you choose to look at Outlook as your liberator rather than your captor, there are ways in which you can set up your inbox and other folders to take the sting out of dealing with your correspondence. To make sure you are getting the best out of Outlook – whether you’re a student or a teacher – you might want to consider setting up some advanced rules that not only de-clutter your inbox, but also remind you of items that you may have missed the first time around or forgotten to follow up on after reading.

Since we introduced some of the most sophisticated rules for webmail earlier this year, we’ve had some fantastic feedback from our users about how they have created bespoke rules that serve specific purposes and help them manage their inbox by staying on top of the things that matter. Long gone are the days of simply automatically moving incoming emails from certain senders to specific folders, or hiding anything that looks like spam. You can now set up your Outlook to respond to certain behaviours on your part, so that you don’t accidently miss something important.

Obviously everyone will want to go about configuring Advanced Rules in Outlook in their own subtly different ways depending on their needs and habits, but once you have an understanding of what can be achieved and the various options available to someone wanting to create their own system for email and inbox management, you can really begin to get the best out of Outlook.

With this in mind, we’d like to point you in the direction of the Office blog:

Give your inbox a personality with Advanced Rules in Outlook.com

The above link is a great resource that not only gives you some examples of potential rules you can put in place for managing your emails, but also guides you through the process of setting up these rules yourself within Outlook. So whether you're a teacher or student, these examples of how to manage your inbox with Advanced Rules in Outlook will help you to focus your attention on what matters without losing anything important in the process.

TIPS: How Teachers and Students can get the most out of Outlook Advanced Rules

MSDN Blogs - Tue, 11/18/2014 - 00:30

The average person receives 28 emails a day. Whether you’re a teacher of any level, or a student from secondary upwards, you’re guaranteed to have an email accounts. So you’ll be receiving all sort of messages on a daily basis, that will vary hugely in terms of their relevance, importance and urgency.

As a teacher or a student, a lot of your time is spent actually having to pay attention to or interact with people in real life, and it's rarely that case that you can deal with emails as and when they land in your inbox. When you do find the time to go through your mail it’s easy to skim through messages without taking in all of the salient information, and the important stuff can fall off the table after you breathe that sigh of relief at having ‘read’ all of your items and seemingly cleared the decks.

Setting up Advanced Rules in Outlook.com

However, if you choose to look at Outlook as your liberator rather than your captor, there are ways in which you can set up your inbox and other folders to take the sting out of dealing with your correspondence. To make sure you are getting the best out of Outlook – whether you’re a student or a teacher – you might want to consider setting up some advanced rules that not only de-clutter your inbox, but also remind you of items that you may have missed the first time around or forgotten to follow up on after reading.

Since we introduced some of the most sophisticated rules for webmail earlier this year, we’ve had some fantastic feedback from our users about how they have created bespoke rules that serve specific purposes and help them manage their inbox by staying on top of the things that matter. Long gone are the days of simply automatically moving incoming emails from certain senders to specific folders, or hiding anything that looks like spam. You can now set up your Outlook to respond to certain behaviours on your part, so that you don’t accidently miss something important.

Obviously everyone will want to go about configuring Advanced Rules in Outlook in their own subtly different ways depending on their needs and habits, but once you have an understanding of what can be achieved and the various options available to someone wanting to create their own system for email and inbox management, you can really begin to get the best out of Outlook.

With this in mind, we’d like to point you in the direction of the Office blog:

Give your inbox a personality with Advanced Rules in Outlook.com

The above link is a great resource that not only gives you some examples of potential rules you can put in place for managing your emails, but also guides you through the process of setting up these rules yourself within Outlook. So whether you're a teacher or student, these examples of how to manage your inbox with Advanced Rules in Outlook will help you to focus your attention on what matters without losing anything important in the process.

TIPS: How Teachers and Students can get the most out of Outlook Advanced Rules

MSDN Blogs - Tue, 11/18/2014 - 00:30

The average person receives 28 emails a day. Whether you’re a teacher of any level, or a student from secondary upwards, you’re guaranteed to have an email accounts. So you’ll be receiving all sort of messages on a daily basis, that will vary hugely in terms of their relevance, importance and urgency.

As a teacher or a student, a lot of your time is spent actually having to pay attention to or interact with people in real life, and it's rarely that case that you can deal with emails as and when they land in your inbox. When you do find the time to go through your mail it’s easy to skim through messages without taking in all of the salient information, and the important stuff can fall off the table after you breathe that sigh of relief at having ‘read’ all of your items and seemingly cleared the decks.

Setting up Advanced Rules in Outlook.com

However, if you choose to look at Outlook as your liberator rather than your captor, there are ways in which you can set up your inbox and other folders to take the sting out of dealing with your correspondence. To make sure you are getting the best out of Outlook – whether you’re a student or a teacher – you might want to consider setting up some advanced rules that not only de-clutter your inbox, but also remind you of items that you may have missed the first time around or forgotten to follow up on after reading.

Since we introduced some of the most sophisticated rules for webmail earlier this year, we’ve had some fantastic feedback from our users about how they have created bespoke rules that serve specific purposes and help them manage their inbox by staying on top of the things that matter. Long gone are the days of simply automatically moving incoming emails from certain senders to specific folders, or hiding anything that looks like spam. You can now set up your Outlook to respond to certain behaviours on your part, so that you don’t accidently miss something important.

Obviously everyone will want to go about configuring Advanced Rules in Outlook in their own subtly different ways depending on their needs and habits, but once you have an understanding of what can be achieved and the various options available to someone wanting to create their own system for email and inbox management, you can really begin to get the best out of Outlook.

With this in mind, we’d like to point you in the direction of the Office blog:

Give your inbox a personality with Advanced Rules in Outlook.com

The above link is a great resource that not only gives you some examples of potential rules you can put in place for managing your emails, but also guides you through the process of setting up these rules yourself within Outlook. So whether you're a teacher or student, these examples of how to manage your inbox with Advanced Rules in Outlook will help you to focus your attention on what matters without losing anything important in the process.

Setting up the Oculus Rift DK1

MSDN Blogs - Tue, 11/18/2014 - 00:00

 This post is for people who literally just got their hands on an Oculus Rift and are just starting out. I will outline my experience setting up and integrating the Oculus Rift Developer Kit 1, as that is what I have.

Setting up the Headset

  1. Remove the headset from the box. It comes with an around-the-head strap already, but you may want to add on the over-the-head strap that it comes with too. Most people do this, as it stays on better that way. Make the necessary adjustments to the strap so that it sits comfortably on your noggin.
  2. You can adjust the distances of the lenses and screen from your face by using a coin to turn the screws on the side. They don't recommend wearing glasses with the Oculus, since it might scratch the lenses. So if you have miserable eyesight like I do, you will probably have to wear contacts when using the Oculus
    (or just remain in a state of doubt about whether it is the quality of your game that sucks, or your eyes.)
  3. Three different pairs of lenses come with the development kit. The A cups are for those blessed with 20/20 perfect vision, or farsighted vision. If you are going to be using contact lenses with the Oculus, you should use the A cups. The B cups are kind of a happy medium and a safe bet to go with if you are going to be letting random people use your headset to play your game. I go with the C cups (if I am not wearing contacts) as those are for the very nearsighted.

Setting up the Control Box

  1. The control box is that square that is attached to the cord coming out of your Oculus Rift. The are four connectors on the control box:
    -HDMI
    -DVI
    -USB
    -Power
  2. Connect the USB to the control box and your computer
  3. Pick ONE of the two video cable options (DVI or HDMI)
  4. Plug the power cord into an outlet, and the other end into the control box
  5. There are some buttons on the top of the control box to adjust brightness and contrast of the headset display. I didn't really mess with these.
  6. There is also a power button on the control box. Turn it on!

Setting up your computer with the Oculus

  1. Go to Oculus VR Developer Center: https://developer.oculus.com/
  2. Sign up for a developer account. It bugged out when I tried to make an account as an individual, so I ended up making an organizational one. You may have to describe the project you are working on.
  3. Go to the 'Downloads' tab (the one to the right of Dashboard..) where you will need 3 things:
    -Oculus Runtime for Windows
    -Oculus SDK for Windows
    -Unity Integration
    -(Optional) Oculus Unity Tuscany Demo
    [if you're a Mac user, then fine, get those ones…]



     
  4. Go through the installs for those
  5. Go into your Display Settings. You will want to set the Oculus up like you would a second monitor and extend the displays (note that the set up is totally different for the DK2, so I was serious about this just being for the DK1)
  6. Then open OculusConfigUtil (it came with the download). If you've done everything right up till this point, your Oculus should be detected and you can open the demo scene and also go ahead and configure your profile. If your headset isn't being detected, you may want to double checked that you plugged things in properly, or that you really downloaded the Runtime and the SDK.
  7. Once you've seen the demo scene and set up your profile, you will be ready to hop on over to Unity! Stay tuned for my next post: Integrating the Oculus Rift with your Unity game. *cliffhanger*

Docker と過ごした有意義な TechEd の 1 週間

MSDN Blogs - Mon, 11/17/2014 - 23:45
このポストは、11 月 3 日に投稿された A great week at TechEd with Docker の翻訳です。 バルセロナで開催された TechEd EMEA を振り返ってみると、この一週間は Docker を交えた有意義なものでした。マイクロソフトが Docker との強力なパートナーシップの概要について 発表 した日からちょうど 2 週間がたち、Docker はこのマイクロソフト主催のイベントのさまざまなシーンで主役となっていました。スペインで皆様に披露した内容もすばらしいものでしたが、さらに、Docker Hub の Microsoft Azure への統合、Docker Open Orchestration API の開発の進展、オープン ソースの Docker Engine for Windows Server の開発を含む Docker コンテナーの Windows Server 対応など、パートナーシップの新たな段階が非常に楽しみになりました。これらの発表でおわかりのとおり、マイクロソフトはこれまでと変わらずお客様に Linux および Windows...(read more)

AIB ファイルを Azure Media Indexer および SQL Server で使用する

MSDN Blogs - Mon, 11/17/2014 - 23:30
このポストは、11 月 3 日に投稿された Using AIB Files with Azure Media Indexer and SQL Server の翻訳です。 はじめに Azure Media Indexer は強力なメディア プロセッサで、マルチメディア ファイルから意味のあるメタデータを抽出します。 前回の記事 では、このプロセッサの基本的な使用方法、および出力ファイル (主に XML ベースのファイル) の概要について説明しました。 今回は、インデックス作成ジョブで作成される、強力なオーディオ インデックス作成 BLOB (AIB) ファイルの用途について説明します。 オーディオ インデックス作成 BLOB AIB ファイルは、格子構造を持つマルチメディア ファイルのテキスト インデックスです。 概して、TTML 形式または SAMI 形式の出力ファイルを対象とするシナリオと比較すると、下記の特徴があります。 検出漏れが少ない : 格子構造により、句 (または部分句) と 'AND' 一致を使用した検索が可能です。この場合...(read more)

Microsoft joins-up with UTS and NSW Government to hatch Sydney talent

MSDN Blogs - Mon, 11/17/2014 - 23:16

Exciting news shared yesterday on the Microsoft Australia 'The Big Picture' blog. Sarah Vaughan, our Director for Developer Evangelism and Experience at Microsoft Australia, talked about a new project we are part of with the University of Technology, Sydney. It’s all about growing compelling student experiences, and helping students get a leg up on their first entrepreneurial career step.

I’ll let Sarah Vaughan take up the story from the blog post…

 

I’ve had some pretty exciting times during my 12 years with Microsoft and this week rates as one of the best, with the announcement of our partnership with the University of Technology, Sydney’s (UTS) and its newly launched precinct, Intersection: Sydney’s Digital Creative Hub.

UTS has been one of the most active academic institutions in ‘joining-up’ the innovation ecosystem, with Sydney’s Digital Creative Hub set to bring together creative and digital start-ups, cultural, media, SMEs, commercial, government and educational organisations.

I’m excited to work for a company that is a partner in connecting our best minds and talent, so they can work together, spark ideas off each other, ask for help . . . do all thing things that help take the seed of an idea and make it into something special.

Our partnership is not just about today, it’s also about uncovering and nurturing tomorrow’s innovators – something that’s always been important to Microsoft. Bookending the precinct, ‘The Hatchery’ is a pre-incubator to educate and launch tomorrow’s entrepreneurs – something that’s essential if we are going to thrive as a nation.

There are a number of reasons why this will increasingly be the way of the future:

  • It works – people working together are more creative and innovative
  • Today’s technology enables connection and collaboration at a level unimaginable just a few short years ago
  • By nurturing talent it helps ensure great ideas become reality
  • Through the introduction of the concepts of entrepreneurialism into education we will inspire innovation

As part of our backing of the Digital Creative Hub we’re providing mentors and a full time employee to curate activity, as well as making available a 12 month Azure for BizSpark grant for qualifying start-ups. We will also be using the space – which is in the basement level of ‘U@622’ on Harris St, Ultimo – to hold events such as Hackathons.

With Intersection and The Hatchery – it’s a clear sign that change is coming, that disparate groups and individuals are recognising that the way ahead – the way to innovation - is by working together.

You might have read the story in the Sydney Morning Herald but the reason for my excitement is that it’s the next part of our commitment to Joined-Up Innovation, Microsoft’s vision to drive greater innovation outcomes for Australia.

 

You can read more about our Joined-Up Innovation initiative on the Microsoft Australia website

Pages

Subscribe to Randy Riness @ SPSCC aggregator
Drupal 7 Appliance - Powered by TurnKey Linux