package io.cattle.platform.iaas.api.auth;
import io.cattle.platform.api.auth.Identity;
import io.cattle.platform.api.auth.Policy;
import io.cattle.platform.core.model.Account;
import io.github.ibuildthecloud.gdapi.factory.SchemaFactory;
import io.github.ibuildthecloud.gdapi.request.ApiRequest;
import java.util.Set;
public interface AuthorizationProvider {
SchemaFactory getSchemaFactory(Account account, Policy policy, ApiRequest request);
String getRole(Account account, Policy policy, ApiRequest request);
Policy getPolicy(Account account, Account authenticatedAsAccount, Set<Identity> identities, ApiRequest request);
}