|
|
|
@ -178,65 +178,80 @@ public class OpenIddictDataSeedContributor : IDataSeedContributor, ITransientDep |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.Endpoints.Logout); |
|
|
|
} |
|
|
|
|
|
|
|
foreach (var grantType in grantTypes) |
|
|
|
var buildInGrantTypes = new [] |
|
|
|
{ |
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.AuthorizationCode) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.GrantTypes.AuthorizationCode); |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.ResponseTypes.Code); |
|
|
|
} |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.AuthorizationCode || grantType == OpenIddictConstants.GrantTypes.Implicit) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.Endpoints.Authorization); |
|
|
|
} |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.AuthorizationCode || |
|
|
|
grantType == OpenIddictConstants.GrantTypes.ClientCredentials || |
|
|
|
grantType == OpenIddictConstants.GrantTypes.Password || |
|
|
|
grantType == OpenIddictConstants.GrantTypes.RefreshToken || |
|
|
|
grantType == OpenIddictConstants.GrantTypes.DeviceCode) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.Endpoints.Token); |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.Endpoints.Revocation); |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.Endpoints.Introspection); |
|
|
|
} |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.ClientCredentials) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.GrantTypes.ClientCredentials); |
|
|
|
} |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.Implicit) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.GrantTypes.Implicit); |
|
|
|
} |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.Password) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.GrantTypes.Password); |
|
|
|
} |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.RefreshToken) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.GrantTypes.RefreshToken); |
|
|
|
} |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.DeviceCode) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.GrantTypes.DeviceCode); |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.Endpoints.Device); |
|
|
|
} |
|
|
|
OpenIddictConstants.GrantTypes.Implicit, |
|
|
|
OpenIddictConstants.GrantTypes.Password, |
|
|
|
OpenIddictConstants.GrantTypes.AuthorizationCode, |
|
|
|
OpenIddictConstants.GrantTypes.ClientCredentials, |
|
|
|
OpenIddictConstants.GrantTypes.DeviceCode, |
|
|
|
OpenIddictConstants.GrantTypes.RefreshToken |
|
|
|
}; |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.Implicit) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.ResponseTypes.IdToken); |
|
|
|
if (string.Equals(type, OpenIddictConstants.ClientTypes.Public, StringComparison.OrdinalIgnoreCase)) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.ResponseTypes.IdTokenToken); |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.ResponseTypes.Token); |
|
|
|
} |
|
|
|
} |
|
|
|
foreach (var grantType in grantTypes) |
|
|
|
{ |
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.AuthorizationCode) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.GrantTypes.AuthorizationCode); |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.ResponseTypes.Code); |
|
|
|
} |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.AuthorizationCode || grantType == OpenIddictConstants.GrantTypes.Implicit) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.Endpoints.Authorization); |
|
|
|
} |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.AuthorizationCode || |
|
|
|
grantType == OpenIddictConstants.GrantTypes.ClientCredentials || |
|
|
|
grantType == OpenIddictConstants.GrantTypes.Password || |
|
|
|
grantType == OpenIddictConstants.GrantTypes.RefreshToken || |
|
|
|
grantType == OpenIddictConstants.GrantTypes.DeviceCode) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.Endpoints.Token); |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.Endpoints.Revocation); |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.Endpoints.Introspection); |
|
|
|
} |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.ClientCredentials) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.GrantTypes.ClientCredentials); |
|
|
|
} |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.Implicit) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.GrantTypes.Implicit); |
|
|
|
} |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.Password) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.GrantTypes.Password); |
|
|
|
} |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.RefreshToken) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.GrantTypes.RefreshToken); |
|
|
|
} |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.DeviceCode) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.GrantTypes.DeviceCode); |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.Endpoints.Device); |
|
|
|
} |
|
|
|
|
|
|
|
if (grantType == OpenIddictConstants.GrantTypes.Implicit) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.ResponseTypes.IdToken); |
|
|
|
if (string.Equals(type, OpenIddictConstants.ClientTypes.Public, StringComparison.OrdinalIgnoreCase)) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.ResponseTypes.IdTokenToken); |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.ResponseTypes.Token); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if (!buildInGrantTypes.Contains(grantType)) |
|
|
|
{ |
|
|
|
application.Permissions.Add(OpenIddictConstants.Permissions.Prefixes.GrantType + grantType); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
var buildInScopes = new [] |
|
|
|
|