8. Claims Terminologie
Identität
Informationen zu einer Person / einem
Objekt (AD, Facebook, Microsoft ID etc.)
Claims
Token
STS
Attribute der Identität (Nutzername, E-
Mail, Alter, Schuhgröße etc.)
Binäre Repräsentanz der Identität
Enthält einen Satz an Claims
Secure Token Service
Herausgeber von Nutzer-Token
9. SharePoint Claims Encoding
i:0#.w|itacsfabian
Claim Identität
c = andere
Identitäten
i:/c:
Reserviert für
zukünftige
Claim Typen
0
#/./?/S etc.
Claim Typ
# = Logon,
5 = e-mail,
- = role
+ = group
% = farm
! = identity
provider
Herausgeber
w = windows,
s = local STS
m = membership
r = role
t = trusted STS
p = personal
c = claim provider
f = forms
w/s/m/r/t/c/f etc.
Claim Wert
Bei Forms mit
weiteren | für
den Namen des
Herausgebers
Login Name
10. Claims Encoding Beispiele
i:0#.w|contosofabianm
Windows Account
contosofabianm
c:0!.s|windows
Alle authentifizieten
Windows-Nutzer
c:0+.w|s-1-5-21… Windows-Sicherheitsgruppe
i:0#.f|membership|fm
Form-based Membership
Provider
i:05.t|azure|fm@itacs.de
Federated Location mit
E-Mail als Login Namen
11. Identität ermitteln
• Der alte Weg
HttpContext.Current.Identity;
• Weiterhin möglich
SPContext.Current.Web.CurrentUser;
• Der Claims Weg
IClaimsIdentity identity =
(ClaimsIdentity)Thread
.CurrentPrincipal.Identity;
12. SPWeb.EnsureUser
• Der alte Weg
• Der Weg mit Claims
SPUser theOldWay = SPContext.Current.Web.EnsureUser(@"contosofritzh");
SPClaimProviderManager claimProviderManager = SPClaimProviderManager.Local;
if (claimProviderManager != null)
{
SPClaim claim = new SPClaim(
SPClaimTypes.UserLogonName,
"fritzh",
"http://www.w3.org/2001/XMLSchema#string",
SPOriginalIssuers.Format(SPOriginalIssuerType.Forms, "ldapmember"));
string encodedClaimString = claimProviderManager.EncodeClaim(claim);
SPUser user = SPContext.Current.Web.EnsureUser(encodedClaimString);
}
32. App-Berechtigungen
• App-Berechtigungen…
sind anders als Nutzer-Berechtigungen
gelten für sämtliche Nutzer
haben keine Hierarchie
• Apps haben eine Standard-Berechtigung
Limitierte Leserechte auf das Host Web
Apps können weitere Rechte beantragen
Der installierende Nutzer vergibt die Rechte
33. Rechte definieren
• Wird über das App-Manifest gesteuert
<AppPermissionRequests>
<AppPermissionRequest Scope="http://sharepoint/content/sitecollection/web/list" Right="FullControl" />
<AppPermissionRequest Scope="http://sharepoint/content/sitecollection/web" Right="Read" />
<AppPermissionRequest Scope="http://sharepoint/search" Right="QueryAsUserIgnoreAppPrincipal" />
<AppPermissionRequest Scope="http://sharepoint/taxonomy" Right="Write" />
</AppPermissionRequests>
Industry leading unstructured data securityMature solution in the market since 2003Integrated with AD, Office, Exchange, SharePointCore to Microsoft cloud security strategy
Industry leading unstructured data securityMature solution in the market since 2003Integrated with AD, Office, Exchange, SharePointCore to Microsoft cloud security strategy