mirror of
https://github.com/pocket-id/pocket-id.git
synced 2026-09-30 23:09:05 +02:00
feat: add support for SCIM provisioning (#1182)
This commit is contained in:
@@ -10,6 +10,7 @@ import type {
|
||||
OidcClientWithAllowedUserGroupsCount,
|
||||
OidcDeviceCodeInfo
|
||||
} from '$lib/types/oidc.type';
|
||||
import type { ScimServiceProvider } from '$lib/types/scim.type';
|
||||
import { cachedOidcClientLogo } from '$lib/utils/cached-image-util';
|
||||
import APIService from './api-service';
|
||||
|
||||
@@ -127,6 +128,11 @@ class OidcService extends APIService {
|
||||
revokeOwnAuthorizedClient = async (clientId: string) => {
|
||||
await this.api.delete(`/oidc/users/me/authorized-clients/${clientId}`);
|
||||
};
|
||||
|
||||
getScimResourceProvider = async (clientId: string) => {
|
||||
const res = await this.api.get(`/oidc/clients/${clientId}/scim-service-provider`);
|
||||
return res.data as ScimServiceProvider;
|
||||
};
|
||||
}
|
||||
|
||||
export default OidcService;
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
import type { ScimServiceProvider, ScimServiceProviderCreate } from '$lib/types/scim.type';
|
||||
import APIService from './api-service';
|
||||
|
||||
class ScimService extends APIService {
|
||||
syncServiceProvider = async (serviceProviderId: string) => {
|
||||
return await this.api.post(`/scim/service-provider/${serviceProviderId}/sync`);
|
||||
};
|
||||
|
||||
createServiceProvider = async (serviceProvider: ScimServiceProviderCreate) => {
|
||||
return (await this.api.post('/scim/service-provider', serviceProvider))
|
||||
.data as ScimServiceProvider;
|
||||
};
|
||||
|
||||
updateServiceProvider = async (
|
||||
serviceProviderId: string,
|
||||
serviceProvider: ScimServiceProviderCreate
|
||||
) => {
|
||||
return (await this.api.put(`/scim/service-provider/${serviceProviderId}`, serviceProvider))
|
||||
.data as ScimServiceProvider;
|
||||
};
|
||||
|
||||
deleteServiceProvider = async (serviceProviderId: string) => {
|
||||
await this.api.delete(`/scim/service-provider/${serviceProviderId}`);
|
||||
};
|
||||
}
|
||||
|
||||
export default ScimService;
|
||||
Reference in New Issue
Block a user