I’m happy to announce a brand new use case based mostly on trusted id propagation, a not too long ago launched functionality of AWS IAM Identification Heart.
Tableau, a generally used enterprise intelligence (BI) utility, can now propagate end-user id all the way down to Amazon Redshift. This has a triple profit. It simplifies the sign-in expertise for finish customers. It permits knowledge house owners to outline entry based mostly on actual end-user id. It permits auditors to confirm knowledge entry by customers.
Trusted id propagation permits purposes that eat knowledge (equivalent to Tableau, Amazon QuickSight, Amazon Redshift Question Editor, Amazon EMR Studio, and others) to propagate the person’s id and group memberships to the companies that retailer and handle entry to the information, equivalent to Amazon Redshift, Amazon Athena, Amazon Easy Storage Service (Amazon S3), Amazon EMR, and others. Trusted id propagation is a functionality of IAM Identification Heart that improves the sign-in expertise throughout a number of analytics purposes, simplifies knowledge entry administration, and simplifies audit. Finish customers profit from single sign-on and shouldn’t have to specify the IAM roles they wish to assume to hook up with the system.
Earlier than diving into extra particulars, let’s agree on terminology.
I exploit the time period “id suppliers” to discuss with the techniques that maintain person identities and group memberships. These are the techniques that immediate the person for credentials and carry out the authentication. For instance, Azure Listing, Okta, Ping Identification, and extra. Examine the total listing of id suppliers we assist.
I exploit the time period “user-facing purposes” to designate the purposes that eat knowledge, equivalent to Tableau, Microsoft PowerBI, QuickSight, Amazon Redshift Question Editor, and others.
And eventually, after I write “downstream companies”, I discuss with the analytics engines and storage companies that course of, retailer, or handle entry to your knowledge: Amazon Redshift, Athena, S3, EMR, and others.
To know the advantage of trusted id propagation, let’s briefly speak about how knowledge entry was granted till right now. When a user-facing utility accesses knowledge from a downstream service, both the upstream service makes use of generic credentials (equivalent to “tableau_user
“) or assumes an IAM position to authenticate in opposition to the downstream service. That is the supply of two challenges.
First, it makes it troublesome for the downstream service administrator to outline entry insurance policies which can be fine-tuned for the precise person making the request. As seen from the downstream service, all requests originate from that frequent person or IAM position. If Jeff and Jane are each mapped to the BusinessAnalytics
IAM position, then it isn’t doable to present them completely different ranges of entry, for instance, readonly and read-write. Moreover, if Jeff can be within the Finance
group, he wants to decide on a task through which to function; he can’t entry knowledge from each teams in the identical session.
Secondly, the duty of associating a data-access occasion to an finish person entails some undifferentiated heavy lifting. If the request originates from an IAM position referred to as BusinessAnalytics
, then extra work is required to determine which person was behind that motion.
Properly, this specific instance would possibly look quite simple, however in actual life, organizations have a whole lot of customers and hundreds of teams to match to a whole lot of datasets. There was a possibility for us to Invent and Simplify.
As soon as configured, the brand new trusted id propagation gives a technical mechanism for user-facing purposes to entry knowledge on behalf of the particular person behind the keyboard. Understanding the precise person id presents three principal benefits.
First, it permits downstream service directors to create and handle entry insurance policies based mostly on precise person identities, the teams they belong to, or a mixture of the 2. Downstream service directors can now assign entry by way of customers, teams, and datasets. That is the best way most of our clients naturally take into consideration entry to knowledge—intermediate mappings to IAM roles are now not essential to attain these patterns.
Second, auditors now have entry to the authentic person id in system logs and may confirm that insurance policies are applied accurately and comply with all necessities of the corporate or industry-level insurance policies.
Third, customers of BI purposes can profit from single sign-on between purposes. Your end-users now not want to know your organization’s AWS accounts and IAM roles. As a substitute, they will sign up to EMR Studio (for instance) utilizing their company single sign-on that they’re used to for therefore many different issues they do at work.
How does trusted id propagation work?
Trusted id propagation depends on normal mechanisms from our {industry}: OAuth2 and JWT. OAuth2 is an open normal for entry delegation that enables customers to grant third-party user-facing purposes entry to knowledge on different companies (downstream companies) with out exposing their credentials. JWT (JSON Net Token) is a compact, URL-safe technique of representing identities and claims to be transferred between two events. JWTs are signed, which implies their integrity and authenticity may be verified.
How one can configure trusted id propagation
Configuring trusted id propagation requires setup in IAM Identification Heart, on the user-facing utility, and on the downstream service as a result of every of those must be informed to work with end-user identities. Though the particulars will likely be completely different for every utility, they’ll all comply with this sample:
- Configure an id supply in AWS IAM Identification Heart. AWS recommends enabling automated provisioning in case your id supplier helps it, as most do. Automated provisioning works via the SCIM synchronization normal to synchronize your listing customers and teams into IAM Identification Heart. You most likely have configured this already in the event you at the moment use IAM Identification Heart to federate your workforce into the AWS Administration Console. It is a one-time configuration, and also you don’t need to repeat this step for every user-facing utility.
- Configure your user-facing utility to authenticate its customers together with your id supplier. For instance, configure Tableau to make use of Okta.
- Configure the connection between the user-facing utility and the downstream service. For instance, configure Tableau to entry Amazon Redshift. In some instances, it requires utilizing the ODBC or JDBC driver for Redshift.
Then comes the configuration particular to trusted id propagation. For instance, think about your group has developed a user-facing internet utility that authenticates the customers together with your id supplier, and that you simply wish to entry knowledge in AWS on behalf of the present authenticated person. For this use case, you’d create a trusted token issuer in IAM Identification Heart. This highly effective new assemble provides you a solution to map your utility’s authenticated customers to the customers in your IAM Identification Heart listing in order that it may well make use of trusted id propagation. My colleague Becky wrote a weblog submit to indicate you how one can develop such an utility. This extra configuration is required solely when utilizing third-party purposes, equivalent to Tableau, or a customer-developed utility, that authenticate exterior of AWS. When utilizing user-facing purposes managed by AWS, equivalent to Amazon QuickSight, no additional setup is required.
Lastly, downstream service directors should configure the entry insurance policies based mostly on the person id and group memberships. The precise configuration varies from one downstream service to the opposite. If the appliance reads or writes knowledge in Amazon S3, the information proprietor could use S3 Entry Grants within the Amazon S3 console to grant entry for customers and teams to prefixes in Amazon S3. If the appliance makes queries to an Amazon Redshift knowledge warehouse, the information proprietor should configure IAM Identification Heart trusted connection within the Amazon Redshift console and match the viewers declare (aud
) from the id supplier.
Now that you’ve a high-level overview of the configuration, let’s dive into a very powerful half: the person expertise.
The top-user expertise
Though the exact expertise of the tip person will clearly be completely different for various purposes, in all instances, it will likely be easier and extra acquainted to workforce customers than earlier than. The person interplay will start with a redirect-based authentication single sign-on circulation that takes the person to their id supplier, the place they will sign up with credentials, multi-factor authentication, and so forth.
Let’s take a look at the main points of how an finish person would possibly work together with Okta and Tableau when trusted id propagation has been configured.
Right here is an illustration of the circulation and the principle interactions between techniques and companies.
Right here’s the way it goes.
1. As a person, I try and sign up to Tableau.
2. Tableau initiates a browser-based circulation and redirects to the Okta sign-in web page the place I can enter my sign-in credentials. On profitable authentication, Okta points an authentication token (ID and entry token) to Tableau.
3. Tableau initiates a JDBC reference to Amazon Redshift and consists of the entry token within the connection request. The Amazon Redshift JDBC driver makes a name to Amazon Redshift. As a result of your Amazon Redshift administrator enabled IAM Identification Heart, Amazon Redshift forwards the entry token to IAM Identification Heart.
4. IAM Identification Heart verifies and validates the entry token and alternate the entry token for an Identification Heart issued token.
5. Amazon Redshift will resolve the Identification Heart token to find out the corresponding Identification Heart person and authorize entry to the useful resource. Upon profitable authorization, I can join from Tableau to Amazon Redshift.
As soon as authenticated, I can begin to use Tableau as regular.
And after I hook up with Amazon Redshift Question Editor, I can observe the sys_query_history
desk to verify who was the person who made the question. It accurately stories awsidc:<e mail deal with>
, the Okta e mail deal with I used after I related from Tableau.
You’ll be able to learn Tableau’s documentation for extra particulars about this configuration.
Pricing and availability
Trusted id propagation is supplied at no extra value in the 26 AWS Areas the place AWS IAM Identification Heart is on the market right now.
Listed here are extra particulars about trusted id propagation and downstream service configurations.
Blissful studying!
With trusted id propagation, now you can configure analytics techniques to propagate the precise person id, group membership, and attributes to AWS companies equivalent to Amazon Redshift, Amazon Athena, or Amazon S3. It simplifies the administration of entry insurance policies on these companies. It additionally permits auditors to confirm your group’s compliance posture to know the true id of customers accessing knowledge.
Get began now and configure your Tableau integration with Amazon Redshift.
PS: Writing a weblog submit at AWS is at all times a staff effort, even if you see just one title beneath the submit title. On this case, I wish to thank Eva Mineva, Laura Reith, and Roberto Migli for his or her much-appreciated assist in understanding the numerous subtleties and technical particulars of trusted id propagation.