Note: This release is in preview. Features described here don’t become generally available until the latest general availability date that Salesforce announces for this release. Before then, and where features are noted as beta, pilot, or developer preview, we can’t guarantee general availability within any particular time frame or at all. Make your purchase decisions only on the basis of generally available products and features.
Auth Exceptions
All exception classes support built-in methods for returning the error message and exception type. See Exception Class and Built-In Exceptions.
The Auth namespace contains the following exception.
Examples
This example uses AuthProviderPluginException to throw a custom exception in a custom authentication provider implementation. Use this exception if you want the end user to see a specific message, passing in the error message as a parameter. If you use another exception, users see a standard Salesforce error message.
1global override Auth.OAuthRefreshResult refresh(Map<string,string> authProviderConfiguration,String refreshToken){
2 HttpRequest req = new HttpRequest();
3 String accessToken = null;
4 String error = null;
5 try {
6
7 // DEVELOPER TODO: Make a refresh token flow using refreshToken passed
8 // in as an argument to get the new access token
9 // accessToken = ...
10 } catch (System.CalloutException e) {
11 error = e.getMessage();
12 }
13 catch(Exception e) {
14 error = e.getMessage();
15 throw new Auth.AuthProviderPluginException('My custom error');
16 }
17
18 return new Auth.OAuthRefreshResult(accessToken,refreshToken, error);
19 }This example uses Auth.VerificationException to trigger verification if a user attempts to create an account without a high assurance session.
1trigger testTrigger on Account (before insert) {
2 Map<String, String> sessionMap = auth.SessionManagement.getCurrentSession();
3 if(!sessionMap.get('SessionSecurityLevel').equals('HIGH_ASSURANCE')) {
4 throw new Auth.VerificationException(
5 Auth.VerificationPolicy.HIGH_ASSURANCE, 'Insert Account');
6 }
7}