APi Scopes
This commit is contained in:
parent
4f8ccc919d
commit
be7df3d054
25 changed files with 823 additions and 116 deletions
69
src/Yavsc.Org/Views/ApiScope/Create.cshtml
Normal file
69
src/Yavsc.Org/Views/ApiScope/Create.cshtml
Normal file
|
|
@ -0,0 +1,69 @@
|
|||
@model IdentityServer8.EntityFramework.Entities.ApiScope
|
||||
|
||||
@{
|
||||
Layout = null;
|
||||
}
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Create</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h4>ApiScope</h4>
|
||||
<hr />
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<form asp-action="Create">
|
||||
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||
<div class="form-group form-check">
|
||||
<label class="form-check-label">
|
||||
<input class="form-check-input" asp-for="Enabled" /> @Html.DisplayNameFor(model => model.Enabled)
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label asp-for="Name" class="control-label"></label>
|
||||
<input asp-for="Name" class="form-control" />
|
||||
<span asp-validation-for="Name" class="text-danger"></span>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label asp-for="DisplayName" class="control-label"></label>
|
||||
<input asp-for="DisplayName" class="form-control" />
|
||||
<span asp-validation-for="DisplayName" class="text-danger"></span>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label asp-for="Description" class="control-label"></label>
|
||||
<input asp-for="Description" class="form-control" />
|
||||
<span asp-validation-for="Description" class="text-danger"></span>
|
||||
</div>
|
||||
<div class="form-group form-check">
|
||||
<label class="form-check-label">
|
||||
<input class="form-check-input" asp-for="Required" /> @Html.DisplayNameFor(model => model.Required)
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group form-check">
|
||||
<label class="form-check-label">
|
||||
<input class="form-check-input" asp-for="Emphasize" /> @Html.DisplayNameFor(model => model.Emphasize)
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group form-check">
|
||||
<label class="form-check-label">
|
||||
<input class="form-check-input" asp-for="ShowInDiscoveryDocument" /> @Html.DisplayNameFor(model => model.ShowInDiscoveryDocument)
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<input type="submit" value="Create" class="btn btn-primary" />
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<a asp-action="Index">Back to List</a>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
72
src/Yavsc.Org/Views/ApiScope/Delete.cshtml
Normal file
72
src/Yavsc.Org/Views/ApiScope/Delete.cshtml
Normal file
|
|
@ -0,0 +1,72 @@
|
|||
@model Yavsc.Models.YavscApiScope
|
||||
|
||||
@{
|
||||
Layout = null;
|
||||
}
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Delete</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h3>Are you sure you want to delete this?</h3>
|
||||
<div>
|
||||
<h4>YavscApiScope</h4>
|
||||
<hr />
|
||||
<dl class="row">
|
||||
<dt class = "col-sm-2">
|
||||
@Html.DisplayNameFor(model => model.Enabled)
|
||||
</dt>
|
||||
<dd class = "col-sm-10">
|
||||
@Html.DisplayFor(model => model.Enabled)
|
||||
</dd>
|
||||
<dt class = "col-sm-2">
|
||||
@Html.DisplayNameFor(model => model.Name)
|
||||
</dt>
|
||||
<dd class = "col-sm-10">
|
||||
@Html.DisplayFor(model => model.Name)
|
||||
</dd>
|
||||
<dt class = "col-sm-2">
|
||||
@Html.DisplayNameFor(model => model.DisplayName)
|
||||
</dt>
|
||||
<dd class = "col-sm-10">
|
||||
@Html.DisplayFor(model => model.DisplayName)
|
||||
</dd>
|
||||
<dt class = "col-sm-2">
|
||||
@Html.DisplayNameFor(model => model.Description)
|
||||
</dt>
|
||||
<dd class = "col-sm-10">
|
||||
@Html.DisplayFor(model => model.Description)
|
||||
</dd>
|
||||
<dt class = "col-sm-2">
|
||||
@Html.DisplayNameFor(model => model.Required)
|
||||
</dt>
|
||||
<dd class = "col-sm-10">
|
||||
@Html.DisplayFor(model => model.Required)
|
||||
</dd>
|
||||
<dt class = "col-sm-2">
|
||||
@Html.DisplayNameFor(model => model.Emphasize)
|
||||
</dt>
|
||||
<dd class = "col-sm-10">
|
||||
@Html.DisplayFor(model => model.Emphasize)
|
||||
</dd>
|
||||
<dt class = "col-sm-2">
|
||||
@Html.DisplayNameFor(model => model.ShowInDiscoveryDocument)
|
||||
</dt>
|
||||
<dd class = "col-sm-10">
|
||||
@Html.DisplayFor(model => model.ShowInDiscoveryDocument)
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<form asp-action="Delete">
|
||||
<input type="hidden" asp-for="Id" />
|
||||
<input type="submit" value="Delete" class="btn btn-danger" /> |
|
||||
<a asp-action="Index">Back to List</a>
|
||||
</form>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
69
src/Yavsc.Org/Views/ApiScope/Details.cshtml
Normal file
69
src/Yavsc.Org/Views/ApiScope/Details.cshtml
Normal file
|
|
@ -0,0 +1,69 @@
|
|||
@model Yavsc.Models.YavscApiScope
|
||||
|
||||
@{
|
||||
Layout = null;
|
||||
}
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Details</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div>
|
||||
<h4>YavscApiScope</h4>
|
||||
<hr />
|
||||
<dl class="row">
|
||||
<dt class = "col-sm-2">
|
||||
@Html.DisplayNameFor(model => model.Enabled)
|
||||
</dt>
|
||||
<dd class = "col-sm-10">
|
||||
@Html.DisplayFor(model => model.Enabled)
|
||||
</dd>
|
||||
<dt class = "col-sm-2">
|
||||
@Html.DisplayNameFor(model => model.Name)
|
||||
</dt>
|
||||
<dd class = "col-sm-10">
|
||||
@Html.DisplayFor(model => model.Name)
|
||||
</dd>
|
||||
<dt class = "col-sm-2">
|
||||
@Html.DisplayNameFor(model => model.DisplayName)
|
||||
</dt>
|
||||
<dd class = "col-sm-10">
|
||||
@Html.DisplayFor(model => model.DisplayName)
|
||||
</dd>
|
||||
<dt class = "col-sm-2">
|
||||
@Html.DisplayNameFor(model => model.Description)
|
||||
</dt>
|
||||
<dd class = "col-sm-10">
|
||||
@Html.DisplayFor(model => model.Description)
|
||||
</dd>
|
||||
<dt class = "col-sm-2">
|
||||
@Html.DisplayNameFor(model => model.Required)
|
||||
</dt>
|
||||
<dd class = "col-sm-10">
|
||||
@Html.DisplayFor(model => model.Required)
|
||||
</dd>
|
||||
<dt class = "col-sm-2">
|
||||
@Html.DisplayNameFor(model => model.Emphasize)
|
||||
</dt>
|
||||
<dd class = "col-sm-10">
|
||||
@Html.DisplayFor(model => model.Emphasize)
|
||||
</dd>
|
||||
<dt class = "col-sm-2">
|
||||
@Html.DisplayNameFor(model => model.ShowInDiscoveryDocument)
|
||||
</dt>
|
||||
<dd class = "col-sm-10">
|
||||
@Html.DisplayFor(model => model.ShowInDiscoveryDocument)
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<div>
|
||||
<a asp-action="Edit" asp-route-id="@Model?.Id">Edit</a> |
|
||||
<a asp-action="Index">Back to List</a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
70
src/Yavsc.Org/Views/ApiScope/Edit.cshtml
Normal file
70
src/Yavsc.Org/Views/ApiScope/Edit.cshtml
Normal file
|
|
@ -0,0 +1,70 @@
|
|||
@model Yavsc.Models.YavscApiScope
|
||||
|
||||
@{
|
||||
Layout = null;
|
||||
}
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Edit</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h4>YavscApiScope</h4>
|
||||
<hr />
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<form asp-action="Edit">
|
||||
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||
<input type="hidden" asp-for="Id" />
|
||||
<div class="form-group form-check">
|
||||
<label class="form-check-label">
|
||||
<input class="form-check-input" asp-for="Enabled" /> @Html.DisplayNameFor(model => model.Enabled)
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label asp-for="Name" class="control-label"></label>
|
||||
<input asp-for="Name" class="form-control" />
|
||||
<span asp-validation-for="Name" class="text-danger"></span>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label asp-for="DisplayName" class="control-label"></label>
|
||||
<input asp-for="DisplayName" class="form-control" />
|
||||
<span asp-validation-for="DisplayName" class="text-danger"></span>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label asp-for="Description" class="control-label"></label>
|
||||
<input asp-for="Description" class="form-control" />
|
||||
<span asp-validation-for="Description" class="text-danger"></span>
|
||||
</div>
|
||||
<div class="form-group form-check">
|
||||
<label class="form-check-label">
|
||||
<input class="form-check-input" asp-for="Required" /> @Html.DisplayNameFor(model => model.Required)
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group form-check">
|
||||
<label class="form-check-label">
|
||||
<input class="form-check-input" asp-for="Emphasize" /> @Html.DisplayNameFor(model => model.Emphasize)
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group form-check">
|
||||
<label class="form-check-label">
|
||||
<input class="form-check-input" asp-for="ShowInDiscoveryDocument" /> @Html.DisplayNameFor(model => model.ShowInDiscoveryDocument)
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<input type="submit" value="Save" class="btn btn-primary" />
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<a asp-action="Index">Back to List</a>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
79
src/Yavsc.Org/Views/ApiScope/Index.cshtml
Normal file
79
src/Yavsc.Org/Views/ApiScope/Index.cshtml
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
@model IEnumerable<Yavsc.Models.YavscApiScope>
|
||||
|
||||
@{
|
||||
Layout = null;
|
||||
}
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>Index</title>
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
<a asp-action="Create">Create New</a>
|
||||
</p>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.Enabled)
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.Name)
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.DisplayName)
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.Description)
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.Required)
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.Emphasize)
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.ShowInDiscoveryDocument)
|
||||
</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach (var item in Model) {
|
||||
<tr>
|
||||
<td>
|
||||
@Html.DisplayFor(modelItem => item.Enabled)
|
||||
</td>
|
||||
<td>
|
||||
@Html.DisplayFor(modelItem => item.Name)
|
||||
</td>
|
||||
<td>
|
||||
@Html.DisplayFor(modelItem => item.DisplayName)
|
||||
</td>
|
||||
<td>
|
||||
@Html.DisplayFor(modelItem => item.Description)
|
||||
</td>
|
||||
<td>
|
||||
@Html.DisplayFor(modelItem => item.Required)
|
||||
</td>
|
||||
<td>
|
||||
@Html.DisplayFor(modelItem => item.Emphasize)
|
||||
</td>
|
||||
<td>
|
||||
@Html.DisplayFor(modelItem => item.ShowInDiscoveryDocument)
|
||||
</td>
|
||||
<td>
|
||||
<a asp-action="Edit" asp-route-id="@item.Id">Edit</a> |
|
||||
<a asp-action="Details" asp-route-id="@item.Id">Details</a> |
|
||||
<a asp-action="Delete" asp-route-id="@item.Id">Delete</a>
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
</tbody>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -60,7 +60,7 @@
|
|||
@Html.DisplayNameFor(model => model.AccessTokenType)
|
||||
</dt>
|
||||
<dd>
|
||||
@Html.DisplayFor(model => model.AccessTokenType)
|
||||
@Html.DisplayFor(model => model.AccessTokenType)
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
@using IdentityServer8.Models
|
||||
@using IdentityServer8.Models;
|
||||
@model IEnumerable<IdentityServer8.EntityFramework.Entities.Client>
|
||||
|
||||
<h2>@Localizer["Index"]</h2>
|
||||
|
|
@ -7,77 +7,85 @@
|
|||
<a asp-action="Create">@Localizer["Create New"]</a>
|
||||
</p>
|
||||
|
||||
<table class="table">
|
||||
<tr>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.ClientId)
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.Enabled)
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.ClientName)
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.FrontChannelLogoutUri)
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.RedirectUris)
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.AbsoluteRefreshTokenLifetime)
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.AllowedGrantTypes)
|
||||
</th>
|
||||
<th>
|
||||
@Html.DisplayNameFor(model => model.AccessTokenType)
|
||||
</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
|
||||
@foreach (var item in Model)
|
||||
{
|
||||
<tr>
|
||||
<td>
|
||||
@Html.DisplayFor(modelItem => item.ClientId)
|
||||
</td>
|
||||
<td>
|
||||
@Html.DisplayFor(modelItem => item.Enabled)
|
||||
</td>
|
||||
<td>
|
||||
@foreach (var item in Model)
|
||||
{
|
||||
<div class="list-item">
|
||||
|
||||
<div class="card">
|
||||
<h5 class="card-title">Identifier</h5>
|
||||
<h6 class="card-subtitle mb-2 text-muted">and activation</h6>
|
||||
<dl class="card-body">
|
||||
|
||||
<dt>
|
||||
@Html.DisplayNameFor(modelItem => item.ClientName)
|
||||
</dt>
|
||||
<dd>
|
||||
@Html.DisplayFor(modelItem => item.ClientName)
|
||||
</td>
|
||||
<td>
|
||||
@Html.DisplayFor(modelItem => item.FrontChannelLogoutUri)
|
||||
</td>
|
||||
<td>
|
||||
<ul>
|
||||
@foreach (var uri in item.RedirectUris)
|
||||
{
|
||||
<li>@uri.RedirectUri</li>
|
||||
}
|
||||
</ul>
|
||||
</td>
|
||||
<td>
|
||||
@Html.DisplayFor(modelItem => item.AbsoluteRefreshTokenLifetime)
|
||||
</td>
|
||||
<td>
|
||||
<ul>
|
||||
@foreach (var t in item.AllowedGrantTypes)
|
||||
{
|
||||
<li>@t.GrantType</li>
|
||||
}
|
||||
</ul>
|
||||
</td>
|
||||
<td>
|
||||
</dd>
|
||||
<dt>
|
||||
@Html.DisplayNameFor(modelItem => item.ClientId)
|
||||
</dt>
|
||||
<dd>
|
||||
@Html.DisplayFor(modelItem => item.ClientId)
|
||||
</dd>
|
||||
<dt>
|
||||
@Html.DisplayNameFor(modelItem => item.Enabled)
|
||||
</dt>
|
||||
<dd>
|
||||
@Html.DisplayFor(modelItem => item.Enabled)
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
|
||||
<h5 class="card-title">Urls</h5>
|
||||
<h6 class="card-subtitle mb-2 text-muted">login and logout, refresh token</h6>
|
||||
<dl class="card-body">
|
||||
<dt>
|
||||
@Html.DisplayNameFor(model => model.FrontChannelLogoutUri)
|
||||
</dt>
|
||||
<dd> @Html.DisplayFor(model => item.FrontChannelLogoutUri)
|
||||
</dd>
|
||||
<dt>@Html.DisplayNameFor(model => model.RedirectUris)</dt>
|
||||
<dd>
|
||||
@foreach (var uri in item.RedirectUris)
|
||||
{
|
||||
<li>@uri.RedirectUri</li>
|
||||
}
|
||||
</dd>
|
||||
<dt>@Html.DisplayNameFor(model => model.AbsoluteRefreshTokenLifetime)</dt>
|
||||
<dd>@Html.DisplayFor(model => item.AbsoluteRefreshTokenLifetime)</dd>
|
||||
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
|
||||
<h5 class="card-title">Grants</h5>
|
||||
<h6 class="card-subtitle mb-2 text-muted">and access type</h6>
|
||||
|
||||
<dl class="card-body">
|
||||
<dt>@Html.DisplayNameFor(model => model.AllowedGrantTypes)</dt>
|
||||
<dd> @foreach (var t in item.AllowedGrantTypes)
|
||||
{
|
||||
<li>@t.GrantType</li>
|
||||
}
|
||||
</dd>
|
||||
|
||||
<dt>
|
||||
@Html.DisplayNameFor(model => model.AccessTokenType)
|
||||
</dt>
|
||||
<dd>
|
||||
@Enum.GetName(typeof(AccessTokenType), item.AccessTokenType)
|
||||
</td>
|
||||
<td>
|
||||
<a asp-action="Edit" asp-route-id="@item.Id">Edit</a> |
|
||||
<a asp-action="Details" asp-route-id="@item.Id">Details</a> |
|
||||
<a asp-action="Delete" asp-route-id="@item.Id">Delete</a>
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
</table>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<a class="btn btn-primary btn-lg" asp-action="Edit" asp-route-id="@item.Id">Edit</a>
|
||||
<a class="btn btn-secondary btn-lg" asp-action="Details" asp-route-id="@item.Id">Details</a>
|
||||
<a class="btn btn-danger btn-lg" asp-action="Delete" asp-route-id="@item.Id">Delete</a>
|
||||
|
||||
</div>
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<link rel="icon" type="image/x-icon" href="~/favicon.ico" asp-append-version="true"/>
|
||||
<link rel="shortcut icon" type="image/x-icon" href="~/favicon.ico" asp-append-version="true"/>
|
||||
<link rel="stylesheet" href="~/lib/jquery-ui/jquery-ui.min.css">
|
||||
<link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.min.css" asp-append-version="true"/>
|
||||
<link rel="stylesheet" href="~/lib/bootstrap.quartz.min.css" asp-append-version="true"/>
|
||||
<link rel="stylesheet" href="~/css/site.css" asp-append-version="true"/>
|
||||
<script src="~/lib/jquery-ui/external/jquery/jquery.js"></script>
|
||||
<script src="~/lib/jquery-ui/jquery-ui.js"></script>
|
||||
|
|
@ -36,7 +36,7 @@ background-attachment: fixed;
|
|||
}
|
||||
}
|
||||
@await RenderSectionAsync("subbanner", false)
|
||||
<div class="container body-container">
|
||||
<div class="container py-4">
|
||||
@RenderBody()
|
||||
</div>
|
||||
<footer class="border-top footer text-muted">
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue