Ich weiß, das ist ein paar Jahre alt, aber als ich stieß ich sah, dass niemand beantwortet wirklich vollständig beantwortet die Frage ... so dachte ich, ich würde eine vollständige Lösung posten.
Soooo ...
Einfach gesagt:
SELECT RoleId, RoleName FROM aspnet_Roles;
GO
Aber für RoleIds für einen Benutzer immer ist es so:
SELECT UR.RoleID, R.RoleName FROM
aspnet_Users U, aspnet_Roles R, aspnet_UsersInRoles UR
WHERE U.UserName = @Username
AND UR.UserId = U.UserId
AND UR.RoleID = R.RoleId
GO
Dies wird Ihnen eine 2 Spaltenliste RoleIds und RoleNames für einen bestimmten Benutzer.
In Wirklichkeit sollten Sie nicht versuchen, dies zu tun, da es eine Sicherheitsverletzung gibt, wenn eine RoleId offengelegt wird. Sie sollten nur mit RoleNames arbeiten und die Elemente Mitgliedschaft und Rollen verwenden, um Dinge zu verwalten.
Hoffen, dass dies hilft :)
Die Rollen-API bietet keine Möglichkeit zum Abrufen von Rollen-IDs. Ich nehme an, Sie könnten einen benutzerdefinierten Rollenanbieter erstellen. – Tuan