Understanding Operating in the Hybrid Cloud – Office 365 & SharePoint 2013 – EPC Group Strategies

Posted by Roger Padgett on Aug, 03, 2016 07:08

This blog post will provide “from the consulting trenches” (Hybrid Cloud) strategies and granular details of EPC Group’s approach to the new Hybrid Office 365 and/or SharePoint 2013 architecture’s growing proliferation and how it may affect your organization.

Hybrid Governance Fundamentals

Users that Ignore Governance and Planning for the Real World

If it’s easy to get around it, they will:

  1. To ensure it will happen, enforce it transparently
  2. If it’s too complex, it won’t happen
  3. Strike a balance between:

Note: Always consider compliance around HIPAA, PHI, and PII related data in Office 365 and/or SharePoint 2013.

EPC Group’s Hybrid Governance Framework

  • Step 1 – Understand what to Enforce
  • Step 2 – Balance the enforcement
  • Step 3 – How and where to enforce
  • Step 4 – Prioritize the enforcement solutions
  • Step 5 – Continue to Review and Enforce

When and What to Enforce – EPC Group Framework

Governance Feature Enforce Nothing Enforce Something Enforce Everything
PII Policy Document (‘here’s our policy on exposing PII’) Monthly Audit (manual or physical; random or comprehensive) Automated Audit on Upload
Site Quota No Quotas or Suggested Quotas Tiered Options;business rules Charge-back model
Site Creation Training on Where it Goes IT creates for you Fully automated with workflow
Site Expiration At owner discretion Manual email sent to site owners asking.. Automated notification/expiration based on business rules
Site Removal Up to owner IT manually removes/archives Automated deletion/archival based on business rules / workflow

What to Enforce – What is the Balance (EPC Group Framework Example)

Governance Feature Enforce Nothing Enforce Something Enforce Everything
Site Templates Let users pick from laundry list Limit list of templates Automatically pick site template based on business rules
Metadata /Document Classification Users pick metadata columns & manually enter metadata Document Library templates and managed metadata Automated  metadata population; automated business rule enforcement
Site Classification Governance Document Site Label (i.e. HBI/MBI/LBI) Automated site placement based on user input & verification
Mission Critical Classification Governance Document IT manually creates site in “special” environment Automated site placement bin redundant data-center based on user input & verification

Enforcement Scope – How to Enforce (EPC Group Example)

Governance Provisioning Tools (EPC Group Example)

Object in SharePoint 2013 and/or Office 365 Automatable Create Site Collections Create Sub Webs Create Hierarchy Available onOffice 365
People | My Sites | Social ? ? ? ?
Web Parts | Apps ? ?
List Templates (STP and XML) ? ?
Web Templates (WSP and XML) ? ? ?
Site Quotas ? ?
Web Event Receivers ? ? ?
SPD Workflows and Actions ? ? ? * ?
Feature Stapling ? ? ? ? *
Workflows ? ? ? ?
Site Definitions ? ? ? ?
Timer Jobs ? ? ? ?
Custom Site Provisioning Handlers ? ? ? ?

Matching the Policy to the Office 365 and/or SharePoint 2013 Scope (EPC Group Example)

Policy Type Scope Possible Options
Security\ Identity Management FarmWeb Application Provisioning workflowsTimer JobsWeb application policesDNS/Infrastructure
Reactive reporting FarmWeb ApplicationSites/Webs Timer JobsExternal DatabaseEvent Receivers
Proactive Sites/Webs Custom FormsEvent ReceiversFeature ReceiversCustom Field Controls
Auditing FarmWeb Application Timer JobsExternal Database
Changes Sites/Web FeaturesControl Delegates

Considerations in Complex Environments

Frequently Asked Questions of EPC Group

EPC Group’s Nationally Recognized Practice Areas

EPC Group leading SharePointOffice 365, Infrastructure Design and Business Intelligence Practice areas continue to lead the way in providing our clients with the most up-to-date and relevant information that is tailored to their individual business and functional needs.

Additional “From the Consulting Trenches” strategies and methodologies are covered in EPC Group’s new book, “SharePoint 2013 Field Guide: Advice from the Consulting Trenches” covering not only SharePoint 2013, Office 365 and SharePoint Online but Information Management, ECM\RM and overall compliance strategies in this ever changing world of “Hybrid IT.”

[gravityforms id=41 title=”true” description=”false”]
<div class='gf_browser_chrome gform_wrapper exit_intent_popup_wrapper' id='gform_wrapper_41' ><form method='post' enctype='multipart/form-data' id='gform_41' class='exit_intent_popup' action='/hybrid-cloud-case-study/'> <div class='gform_heading'> <h3 class='gform_title'>Exit Intent</h3> <span class='gform_description'></span> </div> <div class='gform_body'><ul id='gform_fields_41' class='gform_fields top_label form_sublabel_below description_below'><li id='field_41_1' class='gfield gform_hidden field_sublabel_below field_description_below gfield_visibility_visible' ><input name='input_1' id='input_41_1' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></li><li id='field_41_9' class='gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_41_9' >Full Name<span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_text'><input name='input_9' id='input_41_9' type='text' value='' class='medium' placeholder='Full Name' aria-required="true" aria-invalid="false" /></div></li><li id='field_41_6' class='gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_41_6' >Email<span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_email'> <input name='input_6' id='input_41_6' type='text' value='' class='medium' placeholder='Email Address' aria-required="true" aria-invalid="false" /> </div></li><li id='field_41_7' class='gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_41_7' >Phone<span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_phone'><input name='input_7' id='input_41_7' type='text' value='' class='medium' placeholder='Phone Number' aria-required="true" aria-invalid="false" /></div></li><li id='field_41_10' class='gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_41_10' >Company Name<span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_text'><input name='input_10' id='input_41_10' type='text' value='' class='medium' placeholder='Company Name' aria-required="true" aria-invalid="false" /></div></li><li id='field_41_8' class='gfield field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_41_8' >Message</label><div class='ginput_container ginput_container_textarea'><textarea name='input_8' id='input_41_8' class='textarea medium' placeholder='Type your message here...' aria-invalid="false" rows='10' cols='50'></textarea></div></li> </ul></div> <div class='gform_footer top_label'> <input type='submit' id='gform_submit_button_41' class='gform_button button' value='Submit' onclick='if(window["gf_submitting_41"]){return false;} window["gf_submitting_41"]=true; ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_41"]){return false;} window["gf_submitting_41"]=true; jQuery("#gform_41").trigger("submit",[true]); }' /> <input type='hidden' class='gform_hidden' name='is_submit_41' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='41' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_41' value='WyJbXSIsIjEwNTJhNGVmMWMyNzI3YTJmMjdiZTA1NjU4ZDMzYzY3Il0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_41' id='gform_target_page_number_41' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_41' id='gform_source_page_number_41' value='1' /> <input type='hidden' name='gform_field_values' value='' /> </div> </form> </div><script type='text/javascript'> jQuery(document).bind('gform_post_render', function(event, formId, currentPage){if(formId == 41) {if(typeof Placeholders != 'undefined'){ Placeholders.enable(); }jQuery('#input_41_7').mask('(999) 999-9999').bind('keypress', function(e){if(e.which == 13){jQuery(this).blur();} } );} } );jQuery(document).bind('gform_post_conditional_logic', function(event, formId, fields, isInit){} );</script><script type='text/javascript'> jQuery(document).ready(function(){jQuery(document).trigger('gform_post_render', [41, 1]) } ); </script>