Accéder au contenu principal

AWS IDENTITY AND ACCESS MANAGEMENT IAM

aws-senior.com
www.aws-senior.com
www.aws-senior.com


www.aws-senior.com
www.aws-senior.com
aws-senior.com [121]Amazon EventBridge is a serverless event bus that makes it easy to connect applications together. It can use data from AWS services, your own applications, and [122]integrations with Software-as-a-Service (SaaS) partners. Last year at re:Invent, we [123]introduced in preview EventBridge schema registry and discovery, a way to store the structure of the events (the schema) in a central location, and simplify using events in your code by generating the code to process them for Java, Python, and Typescript.

Today, I am happy to announce that the EventBridge schema registry is generally available, and that we added support for resource policies. Resource policies allow to share a schema repository across different AWS accounts and [124]organizations. In this way, developers on different teams can search for and use any schema that another team has added to the shared registry.

Using EventBridge Schema Registry Resource Policies It’s common for companies to have different development teams working on different services. To make a more concrete example, let’s take two teams working on services that have to communicate with each other: * The CreateAccount development team, working on a frontend API that receives requests from a web/mobile client to create a new customer account for the company. * the FraudCheck development team, working on a backend service checking the data for newly created accounts to estimate the risk that those are fake.

Each team is using their own AWS account to develop their application. Using EventBridge, we can implement the following architecture: * The frontend CreateAccount applications is using the [125]Amazon API Gateway to process the request using a [126]AWS Lambda function written in Python. When a new account is created, the Lambda function publishes the ACCOUNT_CREATED event on a [127]custom event bus. * The backend FraudCheck Lambda function is built in Java, and is expecting to receive the ACCOUNT_CREATED event to call [128]Amazon Fraud Detector (a fully managed service we [129]introduced in preview at re:Invent) to estimate the risk of that being a fake account. If the risk is above a certain threshold, the Lambda function takes preemptive actions. For example, it can flag the account as fake on a database, or post a FAKE_ACCOUNT event on the event bus.

How can the two teams coordinate their work so that they both know the syntax of the events, and use EventBridge to generate the code to process those events?

First, a custom event bus is created with permissions to access within the company organization.

Then, the CreateAccount team uses EventBridge schema discovery to automatically populate the schema for the ACCOUNT_CREATED event that their service is publishing. This event contains all the information of the account that has just been created.

In an event-driven architecture, services can subscribe to specific types of events that they’re interested in. To receive ACCOUNT_CREATED events, a rule is created on the event bus to send those events to the FraudCheck function.

Using resource policies, the CreateAccount team gives read-only access to the FraudCheck team AWS account to the discovered schemas. The Principal in this policy is the AWS account getting the permissions. The Resource is the schema registry that is being shared. { "Version": "2012-10-17", "Statement": [ { "Sid": "GiveSchemaAccess", "Effect": "Allow", "Action": [ "schemas:ListSchemas", "schemas:SearchSchemas", "schemas:DescribeSchema", "schemas:DescribeCodeBinding", "schemas:GetCodeBindingSource", "schemas:PutCodeBinding" ], "Principal": { "AWS": "123412341234" }, "Resource": [ "arn:aws:schemas:us-east-1:432143214321:schema/discovered-schemas", "arn:aws:schemas:us-east-1:432143214321:schema/discovered-schemas*" ] } ] }

Now, the FraudCheck team can search the content of the discovered schema for the ACCOUNT_CREATED event. Resource policies allow you to make a registry available across accounts and organizations, but they will not automatically show up in the console. To access the shared registry, the FraudCheck team needs to use the [130]AWS Command Line Interface (CLI) and specify the full [131]ARN of the registry: aws schemas search-schemas \ --registry-name arn:aws:schemas:us-east-1:432143214321:registry/discovered-s chemas \ --keywords ACCOUNT_CREATED

In this way, the FraudCheck team gets the exact name of the schema created by the CreateAccount team. { "Schemas": [ { "RegistryName": "discovered-schemas", "SchemaArn": "arn:aws:schemas:us-east-1:432143214321:schema/discover ed-schemas/CreateAccount@ACCOUNT_CREATED", "SchemaName": “CreateAccount@ACCOUNT_CREATED", "SchemaVersions": [ { "CreatedDate": "2020-04-28T11:10:15+00:00", "SchemaVersion": 1 } ] } ] }

With the schema name, the FraudCheck team can describe the content of the schema: aws schemas describe-schema \ --registry-name arn:aws:schemas:us-east-1:432143214321:registry/discovered-s chemas \ --schema-name CreateAccount@ACCOUNT_CREATED

The result describes the schema using the [132]OpenAPI specification: { "Content": "{\"openapi\":\"3.0.0\",\"info\":{\"version\":\"1.0.0\",\"title\" :\"CREATE_ACCOUNT\"},\"paths\":{},\"components\":{\"schemas\":{\"AWSEvent\":{\"t ype\":\"object\",\"required\":[\"detail-type\",\"resources\",\"detail\",\"id\",\ "source\",\"time\",\"region\",\"version\",\"account\"],\"x-amazon-events-detail- type\":\"CREATE_ACCOUNT\",\"x-amazon-events-source\":\”CreateAccount\",\"propert ies\":{\"detail\":{\"$ref\":\"#/components/schemas/CREATE_ACCOUNT\"},\"account\" :{\"type\":\"string\"},\"detail-type\":{\"type\":\"string\"},\"id\":{\"type\":\" string\"},\"region\":{\"type\":\"string\"},\"resources\":{\"type\":\"array\",\"i tems\":{\"type\":\"object\"}},\"source\":{\"type\":\"string\"},\"time\":{\"type\ ":\"string\",\"format\":\"date-time\"},\"version\":{\"type\":\"string\"}}},\"CRE ATE_ACCOUNT\":{\"type\":\"object\",\"required\":[\"firstName\",\"surname\",\"id\ ",\"email\"],\"properties\":{\"email\":{\"type\":\"string\"},\"firstName\":{\"ty pe\":\"string\"},\"id\":{\"type\":\"string\"},\"surname\":{\"type\":\"string\"}} }}}}", "LastModified": "2020-04-28T11:10:15+00:00", "SchemaArn": "arn:aws:schemas:us-east-1:432143214321:schema/discovered-schem as/CreateAccount@CREATE_ACCOUNT", "SchemaName": “CreateAccount@ACCOUNT_CREATED", "SchemaVersion": "1", "Tags": {}, "Type": "OpenApi3", "VersionCreatedDate": "2020-04-28T11:10:15+00:00" }

Using the [133]AWS Command Line Interface (CLI), the FraudCheck team can create a code binding if it isn’t already created, using the put-code-binding command, and then download the code binding to process that event: aws schemas get-code-binding-source \ --registry-name arn:aws:schemas:us-east-1:432143214321:registry/discovered-s chemas \ --schema-name CreateAccount@ACCOUNT_CREATED \ --language Java8 CreateAccount.zip

Another option for the FraudCheck team is to copy and paste (after unescaping the JSON string) the Content of the discovered schema to create a new custom schema in their AWS account.

Once the schema is copied to their own account, the FraudCheck team can use the [134]AWS Toolkit IDE plugins to view the schema, download code bindings, and generate serverless applications directly from their IDEs. The EventBridge team is working to add the capability to the AWS Toolkit to use a schema registry in a different account, making this step simpler. Stay tuned!

Often customers have a specific team, with a different AWS account, managing the event bus. For the sake of simplicity, in this post I assumed that the CreateAccount team was the one configuring the EventBridge event bus. With more accounts, you can simplify permissions [135]using IAM to share resources with groups of AWS accounts in AWS Organizations.

Available Now The EventBridge Schema Registry is available now in all commercial regions except Bahrain, Cape Town, Milan, Osaka, Beijing, and Ningxia. For more information on how to use resource policies for schema registries, [136]please see the documentation.

Using Schema Registry resource policies, it is much easier to coordinate the work of different teams sharing information in an event-driven architecture.

Let me know what are you going to build with this!

â€" [137]Danilo

Danilo Poccia

[138]Danilo Poccia

Danilo works with startups and companies of any size to support their innovation. In his role as Chief Evangelist (EMEA) at Amazon Web Services, he leverages his experience to help people bring their ideas to life, focusing on serverless architectures and event-driven programming, and on the technical and business impact of machine
www.aws-senior.com
www.aws-senior.com

https://oracle-support-2018.blogspot.com
https://support-for-oracle-applications.blogspot.com
https://dreambox4you.blogspot.com
https://swtools-spark.blogspot.com
http://workdcup-2018.blogspot.com
http://oracle-support-community.blogspot.com
https://high-oracle.blogspot.com
https://oracleerrormsgs.blogspot.com
https://mosaiquefmnews.blogspot.com
https://facebook2010.blogspot.com
https://makemoneyonline20016.blogspot.com
https://cccamserver2013.blogspot.com
https://encysc0.blogspot.com
http://watch-live2018.blogspot.com
www.aws-senior.com
www.aws-senior.com

Commentaires

Posts les plus consultés de ce blog

HTTP Socks4 and Socks5 proxy lists-update-2020-06-22

www.aws-senior.com We check the proxy according to a variety of parameters, including ping, connection speed, and anonymity.. USA IP web proxy, fast and anonymous! update Streaming results are provided with flexible settings so you can export only the information you need. Read more about socks: Socks and security and Socks myths . A proxy server functions like an intermediary hub between the end user’s device and the Internet. With a proxy server, you can get several benefits, including hiding your real IP address and protecting yourself from hackers, bypassing geo-blocked or restricted content, and boosting page load speeds. HTTP Socks4 and Socks5 proxy lists-update-2020-06-22 www.aws-senior.com Daily Update : 2020-06-22 119.2.54.204:31322|ID|10.44s 185.25.206.192:3128|IT|3.14s 95.0.66.21:8080|TR|14.26s 181.191.180.110:8080|BR|10.71s 212.83.171.119:5836|FR|2.98s 158.51.201.249:8080|N/A|4.22s 212.83.167.25:5836|FR|10.11s ...

Daily Proxies all Proxy Protocols-update-2020-08-26

www.aws-senior.com Our proxies are public HTTP/SOCKS 4/SOCKS 5 proxy which we collect from the internet. Our proxy list service supports all systems, including Windows, Mac, Linux, Android, and iOS.. Our proxy lists are updated every 30 minutes. USA IP web proxy, fast and anonymous! update Our proxy-checker has a high speed of verification at 64 threads and smart algorithms for recognizing proxies in lists.. Daily Proxies all Proxy Protocols-update-2020-08-26 www.aws-senior.com Daily Update : 2020-08-26 185.23.131.101:8080|IR|11.26s 200.106.139.245:8080|N/A|8.75s 60.189.112.250:3000|CN|5.20s 190.210.65.137:8080|AR|7.15s 45.8.195.190:5836|N/A|8.36s 138.219.223.166:3128|BR|5.90s 183.89.48.134:8080|TH|6.13s 212.83.165.214:5836|FR|2.28s 202.173.121.48:80|BD|10.16s 81.201.60.130:80|CZ|10.19s 183.88.36.232:8080|TH|3.73s 168.228.204.250:80|BR|10.04s 198.98.58.178:8080|US|5.11s 103.16.69.202:83|IN|15.14s 5.237.79.110:8...

Proxy usa is a fast us web proxy-update-2020-06-30

www.aws-senior.com USA IP web proxy, fast and anonymous! update Each proxy is checked on the set of parameters - availability, type, country, type of anonymity. us proxy server free to give USA proxy ip. update Proxy usa is a fast us web proxy update Our proxies are public proxies which we collect from the Internet. They aren't suited for Google, Instagram, or Craigslist. For those websites, Proxy usa is a fast us web proxy-update-2020-06-30 www.aws-senior.com Daily Update : 2020-06-30 188.163.170.130:41209|UA|6.36s 209.250.238.155:8080|DE|2.13s 116.62.140.86:8080|CN|5.13s 66.42.62.161:8080|US|4.78s 85.234.126.107:55555|RU|11.38s 139.99.155.4:8080|AU|6.73s 104.238.172.20:8080|GB|2.05s 178.63.105.161:5836|DE|5.01s 104.244.75.26:8080|LU|2.61s 95.0.66.69:8080|TR|4.20s 110.37.231.92:8080|PK|12.47s 207.148.117.9:8080|SG|5.04s 185.88.173.46:5836|TR|4.17s 64.227.1.252:3128|US|2.47s 185.224.131....